Benjamin Kietzman created ARROW-4146:
----------------------------------------

             Summary: [C++] Extend visitor functions to include ArrayBuilder 
and allow callable visitors
                 Key: ARROW-4146
                 URL: https://issues.apache.org/jira/browse/ARROW-4146
             Project: Apache Arrow
          Issue Type: Improvement
          Components: C++
            Reporter: Benjamin Kietzman


In addition to accepting objects with Visit methods for the visited type, 
{{Visit(Array|Type)}} and {{Visit(Array|Type)Inline}} should accept objects 
with overloaded call operators.

In addition for inline visitation if a visitor can only visit one of the 
potential unboxings then this can be detected at compile time and the full 
type_id switch can be avoided (if the unboxed object cannot be visited then do 
nothing). For example:

{code}
VisitTypeInline(some_type, [](const StructType& s) {
  // only execute this if some_type.id() == Type::STRUCT
});
{code}

Finally, visit functions should be added for visiting ArrayBuilders



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to