[
https://issues.apache.org/jira/browse/ARROW-12951?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Antoine Pitrou updated ARROW-12951:
-----------------------------------
Description:
In {{compute/kernels/scalar_string.cc}, currently there is a non-trivial
inheritance relationship between {{StringTransform}} and its derived
implementation classes. Also, the derived classes have to be templated on the
actual string type even though their code doesn't care, making generated code
size probably bigger than it should be.
Instead, there could be a {{StringTransformExec}} class that delegates to an
independent class for per-kernel specifics (mostly: the {{MaxCodeunits}} and
{{Transform}} methods).
was:
Currently, there is a non-trivial inheritance relationship between
{{StringTransform}} and its derived implementation classes. Also, the derived
classes have to be templated on the actual string type even though their code
doesn't care, making generated code size probably bigger than it should be.
Instead, there could be a {{StringTransformExec}} class that delegates to an
independent class for per-kernel specifics (mostly: the {{MaxCodeunits}} and
{{Transform}} methods).
> [C++] Refactor StringTransform
> ------------------------------
>
> Key: ARROW-12951
> URL: https://issues.apache.org/jira/browse/ARROW-12951
> Project: Apache Arrow
> Issue Type: Task
> Components: C++
> Reporter: Antoine Pitrou
> Priority: Minor
>
> In {{compute/kernels/scalar_string.cc}, currently there is a non-trivial
> inheritance relationship between {{StringTransform}} and its derived
> implementation classes. Also, the derived classes have to be templated on the
> actual string type even though their code doesn't care, making generated code
> size probably bigger than it should be.
> Instead, there could be a {{StringTransformExec}} class that delegates to an
> independent class for per-kernel specifics (mostly: the {{MaxCodeunits}} and
> {{Transform}} methods).
--
This message was sent by Atlassian Jira
(v8.3.4#803005)