Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-8921

[C++] Add "TypeResolver" class interface to replace current OutputType::Resolver pattern

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: 2.0.0
    • Component/s: C++
    • Labels:
      None

      Description

      Like the TypeMatcher for extensible input type checking, TypeResolver will allow more flexibility with respect to the output type resolution rule. Currently the resolver function is defined as

      using Resolver =
            std::function<Result<ValueDescr>(KernelContext*, const std::vector<ValueDescr>&)>;
      

      By changing to a TypeResolver interface with a virtual Resolve function, we also can provide for better human-readability when printing kernel signatures (by having TypeResolver::ToString) and permitting TypeResolvers to be compared

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                wesm Wes McKinney
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated: