12 #ifndef K_API_OBJECT_H
13 #define K_API_OBJECT_H
252 #define kObject_Type_(OBJ) kxObject_Type_(OBJ)
253 #define kObject_Is_(OBJ, TYPE) kxObject_Is_(OBJ, TYPE)
254 #define kObject_Alloc_(OBJ) kxObject_Allocator_(OBJ)
259 #include <kApi/kObject.x.h>
kType kObject_Type(kObject object)
Returns the type of the object.
kAlloc kObject_Alloc(kObject object)
Gets the memory allocator associated with this object.
kBool kObject_Equals(kObject object, kObject other)
Determines whether the object is equal to another object.
kSize kObject_HashCode(kObject object)
Gets a hash code representing the state of this object.
kBool kObject_Is(kObject object, kType type)
Determines whether this object is an instance of the specified type.
Represents an unsigned integer that can store a pointer address.
Abstract base class for memory allocator types.
kStatus kObject_Share(kObject object)
Increments the reference count associated with this object.
kStatus kObject_Clone(kObject *object, kObject source, kAlloc allocator)
Constructs a new object by copying an existing object, including any aggregated child elements...
kBool kObject_IsShared(kObject object)
Reports whether the object is currently shared (reference count greater than one).
Supports reclaiming objects upon destruction.
Core Zen type declarations.
kStatus kObject_Destroy(kObject object)
Destroys the object.
Represents metadata about a type (class, interface, or value).
kStatus kObject_Dispose(kObject object)
Destroys the object and any aggregated child elements.
kStatus kObject_SetPool(kObject object, kObjectPool pool)
Sets the object pool associated with this object.
kSize kObject_Size(kObject object)
Estimates the memory consumed by this object, including any aggregated child elements.
Represents an error code.
Represents a boolean value.