[ 
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)

Reply via email to