You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by "Benjamin Kietzman (JIRA)" <ji...@apache.org> on 2019/01/02 17:09:00 UTC

[jira] [Created] (ARROW-4146) [C++] Extend visitor functions to include ArrayBuilder and allow callable visitors

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)