src/pmc/managedstruct.pmc - Memory-managed C struct
UnManagedStruct to provide a class to hold C
struct values that Parrot is responsible for disposing of.
Initializes an empty struct.
void init_pmc(PMC *value)
Initializes the struct with
Destroys the struct, freeing the allocated memory.
If the "custom_free_func" attribute is set, it is called to free the pointer. Otherwise, mem_gc_free() is used.
void set_integer_native(INTVAL value)
value bytes for the struct.
PMC * clone()
Creates a clone of this PMC; clones any unmanaged memory it holds too.
If the "custom_clone_func" attribute is set, it is called to clone the PMC. Otherwise, a basic (shallow copy) clone is performed, as there's no general way of knowing how to make a deep copy of the pointer contents.