This section describes introspection of indexes.
Introspection of the schema::Index
:
db> ... ... ... ... ... ... ... ... ... ...
WITH MODULE schema
SELECT ObjectType {
name,
links: {
name,
},
properties: {
name,
}
}
FILTER .name = 'schema::Index';
{ Object { name: 'schema::Index', links: {Object { name: '__type__' }}, properties: { Object { name: 'expr' }, Object { name: 'id' }, Object { name: 'name' } } } }
Consider the following schema:
type Addressable {
property address -> str;
}
type User extending Addressable {
# define some properties and a link
required property name -> str;
multi link friends -> User;
# define an index for User based on name
index on (.name);
}
Introspection of User.name
index:
db> ... ... ... ...
WITH MODULE schema
SELECT Index {
expr,
}
FILTER .expr LIKE '%.name';
{ Object { expr: '.name' } }
For introspection of the index within the context of its host type see object type introspection.