D Programming Language 2.0

- Comments
- D
- Search
- Home

Last update Mon Nov 24 23:49:30 2008

# 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.

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

  equals_t 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. When an object is accessed via an interface, an Interface* appears as the first entry in its vtbl.
  ClassInfo classinfo;
    .classinfo for this interface (not for containing class)
  ptrdiff_t 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(in char[] 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(in char[] 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.
  equals_t 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
  void destroy(void* p);
    Run the destructor on the object and all its sub-objects
  void postblit(void* p);
    Run the postblit on the object and all its sub-objects
class Throwable;
void rt_setTraceHandler(TraceHandler h);
  Overrides the default trace hander with a user-supplied version.
  Params:

  TraceHandler h | The new trace handler. Set to null to use the default handler.

Throwable.TraceInfo traceContext(void* ptr = null);
  This function will be called when an exception is constructed. The user-supplied trace handler will be called if one has been supplied, otherwise no trace will be generated.
  Params:

  void* ptr | A pointer to the location from which to generate the trace, or null if the trace should be generated from within the trace handler itself.

  Returns:
  An object describing the current calling context or null if no handler is supplied.
void _moduleCtor();
  Initialize the modules.
void _moduleDtor();
  Destruct the modules.
alias IMonitor;

Copyright © 1999-2008 by Digital Mars, All Rights Reserved | Page generated by Ddoc.