SChakravorti21 commented on issue #34535:
URL: https://github.com/apache/arrow/issues/34535#issuecomment-1965495787

   > Now it becomes impossible to have a non-inline function [1] in the 
ChunkResolver because the entire class is a template. That's why these 
abstractions are separate. Care was taken to allow ChunkResolver to work for 
any type by making it deal with chunks in terms of lengths and offsets.
   
   I see, appreciate you taking the time to explain! I'll have to read up on 
this because it conflicts with my general understanding of the `inline` 
keyword. To clarify my current understanding - based on 
[cppreference](https://en.cppreference.com/w/cpp/language/inline) and other 
info like in [this SO answer](https://stackoverflow.com/a/1759575), my 
understanding is that the `inline` keyword purely controls the linkage of the 
symbol, and whether the function should actually be _inlined_ is done at the 
compiler's discretion (regardless of whether the function is marked `inline`). 
Based on this, my understanding was that methods in a class template could 
still be inlined if the compiler deemed it appropriate.
   
   Nevertheless, I'll take your word for it that this is not possible as I 
assume you have more experience on this matter; I'd love to read any materials 
you might have that delve further into this!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to