Antoine Pitrou created ARROW-2052:
-------------------------------------
Summary: Unify OwnedRef and ScopedRef
Key: ARROW-2052
URL: https://issues.apache.org/jira/browse/ARROW-2052
Project: Apache Arrow
Issue Type: Task
Components: Python
Affects Versions: 0.8.0
Reporter: Antoine Pitrou
Currently {{OwnedRef}} and {{ScopedRef}} have similar semantics with small
differences. Furtheremore, the naming distinction isn't obvious.
I propose to unify them as a single {{OwnedRef}} class with the following
characteristics:
- doesn't take the GIL automatically
- has a {{release()}} method that decrefs the pointer (and sets the internal
copy to NULL) before returning it
- has a {{detach()}} method that returns the pointer (and sets the internal
copy to NULL) without decrefing it
For the rare situations where an {{OwnedRef}} may be destroyed with the GIL
released, a {{OwnedRefNoGIL}} derived class would also be proposed (the naming
scheme follows Cython here).
Opinions / comments?
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)