Decreases the reference count by one, but does not deallocate the item even
if its refcount reaches zero. This is useful for passing intermediate values
to functions that increase reference count. Should only be used with
functions that incref their arguments.
\rst
.. warning:: If the item is moved without correctly increasing the reference
count afterwards, the memory will be leaked. \endrst
@param itemtake the item
@return the item with reference count decreased by one
Provides CPP-like move construct
Decreases the reference count by one, but does not deallocate the item even if its refcount reaches zero. This is useful for passing intermediate values to functions that increase reference count. Should only be used with functions that incref their arguments.
\rst .. warning:: If the item is moved without correctly increasing the reference count afterwards, the memory will be leaked. \endrst
@param itemtake the item @return the item with reference count decreased by one