Eduardo Ponce created ARROW-14058:
-------------------------------------

             Summary: [Python] Update use of FunctionOptions scoped enums once 
Cython 3 is supported
                 Key: ARROW-14058
                 URL: https://issues.apache.org/jira/browse/ARROW-14058
             Project: Apache Arrow
          Issue Type: Improvement
          Components: Python
            Reporter: Eduardo Ponce


In 
[_pyarrow/_compute.pyx_|https://github.com/apache/arrow/blob/master/python/pyarrow/_compute.pyx]
 there are several scoped enums for FunctionOptions (e.g., RoundMode and 
SortOrder) which are not used in dictionaries but rather with a chain of 
if-elses because scoped enums are not fully supported in Cython >= 0.29.x since 
they do not resolve to an underlying integral type. We would like to be 
consistent with the use of other FunctionOptions and use a dictionary when 
mapping string input to enum constant.

In order for the above to work in Cython 3, we also need to update the 
definition of the scoped enums found in [_pyarrow/includes/libarrow.pxd_|] to 
the form of
{code:c++}
cpdef enum class CRoundMode(int8_t)
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to