IndexOptions implements JsonSerializable uses IndexOptionsTrait, ReflectionTrait
A simple index options representation.
Table of Contents
Interfaces
- JsonSerializable
Constants
- CACHE_ENABLED : string = 'cacheEnabled'
- DEDUPLICATE : string = 'deduplicate'
- ESTIMATES : string = 'estimates'
- EXPIRE_AFTER : string = 'expireAfter'
- FIELD_VALUE_TYPES : string = 'fieldValueTypes'
- FIELDS : string = 'fields'
- GEO_JSON : string = 'geoJson'
- IN_BACKGROUND : string = 'inBackground'
- LEGACY_POLYGONS : string = 'legacyPolygons'
- NAME : string = 'name'
- PARALLELISM : string = 'parallelism'
- PARAMS : string = 'params'
- PREFIX_FIELDS : string = 'prefixFields'
- SPARSE : string = 'sparse'
- STORED_VALUE : string = 'storedValue'
- TYPE : string = 'type'
- UNIQUE : string = 'unique'
Properties
- $fields : array<string|int, mixed>
- An array of attribute paths, containing the document attributes (or sub-attributes) to be indexed.
- $name : string
- An easy-to-remember name for the index to look it up or refer to it in index hints.
- $type : string
- Can be one of the following values: - "persistent": persistent (array) index, including vertex-centric index - "inverted": inverted index (not implemented yet) - "ttl": time-to-live index - "geo": geo-spatial index, with one or two attributes - "mdi": multi-dimensional index - "mdi-prefixed": multi-dimensional index with search prefix, including vertex-centric index - "vector": vector inde
Methods
- __construct() : mixed
- Creates a new IndexOptions instance.
- jsonSerialize() : array<string|int, mixed>
- Invoked to serialize the object with the json serializer.
Constants
CACHE_ENABLED
public
string
CACHE_ENABLED
= 'cacheEnabled'
DEDUPLICATE
public
string
DEDUPLICATE
= 'deduplicate'
ESTIMATES
public
string
ESTIMATES
= 'estimates'
EXPIRE_AFTER
public
string
EXPIRE_AFTER
= 'expireAfter'
FIELD_VALUE_TYPES
public
string
FIELD_VALUE_TYPES
= 'fieldValueTypes'
FIELDS
public
string
FIELDS
= 'fields'
GEO_JSON
public
string
GEO_JSON
= 'geoJson'
IN_BACKGROUND
public
string
IN_BACKGROUND
= 'inBackground'
LEGACY_POLYGONS
public
string
LEGACY_POLYGONS
= 'legacyPolygons'
NAME
public
string
NAME
= 'name'
PARALLELISM
public
string
PARALLELISM
= 'parallelism'
PARAMS
public
string
PARAMS
= 'params'
PREFIX_FIELDS
public
string
PREFIX_FIELDS
= 'prefixFields'
SPARSE
public
string
SPARSE
= 'sparse'
STORED_VALUE
public
string
STORED_VALUE
= 'storedValue'
TYPE
public
string
TYPE
= 'type'
UNIQUE
public
string
UNIQUE
= 'unique'
Properties
$fields
An array of attribute paths, containing the document attributes (or sub-attributes) to be indexed.
public
array<string|int, mixed>
$fields
= []
Some indexes allow using only a single path, and others allow multiple. If multiple attributes are used, their order matters.
The '.' character denotes sub-attributes in attribute paths.
Attributes with literal '.' in their name cannot be indexed. Attributes with the name _id cannot be indexed either, neither as a top-level attribute nor as a sub-attribute (except the inverted index type).
If an attribute path contains an [] extension (e.g. friends[].id), it means that the index attribute value is treated as an array and all array members are indexed separately.
This is possible with persistent and inverted indexes.
Tags
$name
An easy-to-remember name for the index to look it up or refer to it in index hints.
public
string
$name
Index names are subject to the same character restrictions as collection names.
If omitted, a name is auto-generated so that it is unique with respect to the collection, e.g. idx_832910498.
$type
Can be one of the following values: - "persistent": persistent (array) index, including vertex-centric index - "inverted": inverted index (not implemented yet) - "ttl": time-to-live index - "geo": geo-spatial index, with one or two attributes - "mdi": multi-dimensional index - "mdi-prefixed": multi-dimensional index with search prefix, including vertex-centric index - "vector": vector inde
public
string
$type
Methods
__construct()
Creates a new IndexOptions instance.
public
__construct([array<string|int, mixed>|object|null $init = null ]) : mixed
Parameters
- $init : array<string|int, mixed>|object|null = null
-
A generic object containing properties with which to populate the newly instance. If this argument is null, it is ignored.
jsonSerialize()
Invoked to serialize the object with the json serializer.
public
jsonSerialize() : array<string|int, mixed>