View source code
Display the source code in object.d from which this page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using local clone.

Module object

Forms the symbols available to all D programs. Includes Object, which is the root of the class object hierarchy. This module is implicitly imported.

Functions

NameDescription
byKey(aa) Returns a forward range over the keys of the associative array.
byKeyValue(aa) Returns a forward range over the key value pairs of the associative array.
byValue(aa) Returns a forward range over the values of the associative array.
clear(aa) Removes all remaining keys and values from an associative array.
destroy(obj) Destroys the given object and optionally resets to initial state. It's used to destroy an object, calling its destructor or finalizer so it no longer references any other objects. It does not initiate a GC cycle or free any GC memory. If initialize is supplied false, the object is considered invalid after destruction, and should not be referenced.
dup(aa) Create a new associative array of the same size and copy the contents of the associative array into it.
dup(a) Provide the .dup array property.
get(aa, key, defaultValue) Looks up key; if it exists returns corresponding value else evaluates and returns defaultValue.
hashOf(arg, seed) Calculates the hash value of arg with an optional seed initial value. The result might not be equal to typeid(T).getHash(&arg).
hashOf(arg, seed) Calculates the hash value of arg with an optional seed initial value. The result might not be equal to typeid(T).getHash(&arg).
idup(a) Provide the .idup array property.
keys(aa) Returns a dynamic array, the elements of which are the keys in the associative array.
opEquals(lhs, rhs) Returns true if lhs and rhs are equal.
rehash(aa) Reorganizes the associative array in place so that lookups are more efficient.
require(aa, key, value) Looks up key; if it exists returns corresponding value else evaluates value, adds it to the associative array and returns it.
update(aa, key, create, update) Looks up key; if it exists applies the update callable else evaluates the create callable and adds it to the associative array
values(aa) Returns a dynamic array, the elements of which are the values in the associative array.

Classes

NameDescription
Error The base class of all unrecoverable runtime errors.
Exception The base class of all errors that are safe to catch and handle.
Object All D class objects inherit from Object.
Throwable The base class of all thrown objects.
TypeInfo Runtime type information about a type. Can be retrieved for any type using a TypeidExpression.
TypeInfo_Class Runtime type information about a class. Can be retrieved from an object instance by using the .classinfo property.

Structs

NameDescription
Interface Information about an interface. When an object is accessed via an interface, an Interface* appears as the first entry in its vtbl.
ModuleInfo An instance of ModuleInfo is generated into the object file for each compiled module.
OffsetTypeInfo Array of pairs giving the offset and type information for each member in an aggregate.

Manifest constants

NameTypeDescription
rtinfoNoPointers shortcuts for the precise GC, also generated by the compiler used instead of the actual pointer bitmap

Global variables

NameTypeDescription
RTInfoImpl size_t[pointerBitmap.length] Create RTInfo for type T

Authors

Walter Bright, Sean Kelly

License

Boost License 1.0.