object
Part of the D programming language runtime library. Forms the symbols available to all D programs. Includes Object, which is the root of the class object hierarchy.This module is implicitly imported.
- alias size_t;
- An unsigned integral type large enough to span the memory space. Use for
array indices and pointer offsets for maximal portability to
architectures that have different memory address ranges. This is
analogous to C's size_t.
- alias ptrdiff_t;
- A signed integral type large enough to span the memory space. Use for
pointer differences and for size_t differences for maximal portability to
architectures that have different memory address ranges. This is
analogous to C's ptrdiff_t.
- alias bit;
- Standard boolean type.
- class Object;
- All D class objects inherit from Object.
- string toString();
- Convert Object to a human readable string.
- hash_t toHash();
- Compute hash function for Object.
- int opCmp(Object o);
- Compare with another Object obj.
Returns:
this < obj < 0 this == obj 0 this > obj > 0
- int opEquals(Object o);
- Returns !=0 if this object does have the same contents as obj.
- static Object factory(string classname);
- Create instance of class specified by classname.
The class must either have no constructors or have
a default constructor.
Returns:
null if failed
- struct Interface;
- Information about an interface.
A pointer to this appears as the first entry in the interface's vtbl[].
- ClassInfo classinfo;
- .classinfo for this interface (not for containing class)
- int offset;
- offset to Interface 'this' from Object 'this'
- class ClassInfo;
- Runtime type information about a class. Can be retrieved for any class type
or instance by using the .classinfo property.
A pointer to this appears as the first entry in the class's vtbl[].
- byte[] init;
- class static initializer
(init.length gives size in bytes of class)
- string name;
- class name
- void*[] vtbl;
- virtual function pointer table
- Interface[] interfaces;
- interfaces this class implements
- ClassInfo base;
- base class
- static ClassInfo find(string classname);
- Search all modules for ClassInfo corresponding to classname.
Returns:
null if not found
- Object create();
- Create instance of Object represented by 'this'.
- const(MemberInfo[]) getMembers(string name);
- Search for all members with the name 'name'.
If name[] is null, return all members.
- struct OffsetTypeInfo;
- Array of pairs giving the offset and type information for each
member in an aggregate.
- size_t offset;
- Offset of member from start of object
- TypeInfo ti;
- TypeInfo for this member
- class TypeInfo;
- Runtime type information about a type.
Can be retrieved for any type using a
TypeidExpression.
- hash_t getHash(in void* p);
- Returns a hash of the instance of a type.
- int equals(in void* p1, in void* p2);
- Compares two instances for equality.
- int compare(in void* p1, in void* p2);
- Compares two instances for <, ==, or >.
- size_t tsize();
- Returns size of the type.
- void swap(void* p1, void* p2);
- Swaps two instances of the type.
- TypeInfo next();
- Get TypeInfo for 'next' type, as defined by what kind of type this is,
null if none.
- void[] init();
- Return default initializer, null if default initialize to 0
- uint flags();
- Get flags for type: 1 means GC should scan for pointers
- OffsetTypeInfo[] offTi();
- Get type information on the contents of the type; null if not available
- class Exception;
- All recoverable exceptions should be derived from class Exception.
- this(string msg);
- Constructor; msg is a descriptive message for the exception.
- class Error: object.Exception;
- All irrecoverable exceptions should be derived from class Error.
- this(string msg);
- Constructor; msg is a descriptive message for the exception.