take


Description:

[ Version ( since = "1.18" ) ]
public static bool take (ref Structure? oldstr_ptr, owned Structure? newstr)

Atomically modifies a pointer to point to a new structure.

The Structure oldstr_ptr is pointing to is freed and newstr is taken ownership over.

Either newstr and the value pointed to by oldstr_ptr may be null.

It is a programming error if both newstr and the value pointed to by oldstr_ptr refer to the same, non-%NULL structure.

Parameters:

oldstr_ptr

pointer to a place of a Structure to take

newstr

a new Structure

Returns:

true if newstr was different from oldstr_ptr