Base Objects

BaseObject

Root object type

Object

Root for user-defined object types

std::BaseObject is the root of the object type hierarchy and all object types in EdgeDB, including system types, extend std::BaseObject directly or indirectly. User-defined object types extend from std::Object, which is a subtype of std::BaseObject.

type

BaseObject

Base Objects - 图1

Base Objects - 图2

Base Objects - 图3

BaseObject

Root object type.

Definition:

  1. abstract type std::BaseObject {
  2. # Universally unique object identifier
  3. required property id -> uuid {
  4. default := (select std::uuid_generate_v1mc());
  5. readonly := true;
  6. constraint exclusive;
  7. }
  8. # Object type in the information schema.
  9. required readonly link __type__ -> schema::ObjectType;
  10. }

type

Object

Base Objects - 图4

Base Objects - 图5

Base Objects - 图6

Object

Root object type for user-defined types.

Definition:

  1. abstract type std::Object extending std::BaseObject;