pub unsafe extern "C-unwind" fn CFSetCreateMutable(
allocator: Option<&CFAllocator>,
capacity: CFIndex,
call_backs: *const CFSetCallBacks,
) -> Option<CFRetained<CFMutableSet>>
CFBase
and CFSet
only.Expand description
Creates a new empty mutable set.
Parameter allocator
: The CFAllocator which should be used to allocate
memory for the set and its storage for values. This
parameter may be NULL in which case the current default
CFAllocator is used. If this reference is not a valid
CFAllocator, the behavior is undefined.
Parameter capacity
: A hint about the number of values that will be held
by the CFSet. Pass 0 for no hint. The implementation may
ignore this hint, or may use it to optimize various
operations. A set’s actual capacity is only limited by
address space and available memory constraints). If this
parameter is negative, the behavior is undefined.
Parameter callBacks
: A C pointer to a CFSetCallBacks structure
initialized with the callbacks for the set to use on each
value in the set. A copy of the contents of the
callbacks structure is made, so that a pointer to a
structure on the stack can be passed in, or can be reused
for multiple set creations. If the version field of this
callbacks structure is not one of the defined ones for
CFSet, the behavior is undefined. The retain field may be
NULL, in which case the CFSet will do nothing to add a
retain to the contained values for the set. The release
field may be NULL, in which case the CFSet will do nothing
to remove the set’s retain (if any) on the values when the
set is destroyed. If the copyDescription field is NULL,
the set will create a simple description for the value. If
the equal field is NULL, the set will use pointer equality
to test for equality of values. The hash field may be NULL,
in which case the CFSet will determine uniqueness by pointer
equality. This callbacks parameter
itself may be NULL, which is treated as if a valid structure
of version 0 with all fields NULL had been passed in.
Otherwise, if any of the fields are not valid pointers to
functions of the correct type, or this parameter is not a
valid pointer to a CFSetCallBacks callbacks structure,
the behavior is undefined. If any of the values put into the
set is not one understood by one of the callback functions
the behavior when that callback function is used is
undefined.
Returns: A reference to the new mutable CFSet.