Skip to main content

Catalog

Struct Catalog 

Source
pub struct Catalog { /* private fields */ }
Expand description

Database catalog for names, schemas, projections, and indexes.

§Performance

Cloning is O(catalog entries + string bytes).

Implementations§

Source§

impl Catalog

Source

pub fn role(&self, id: RoleId) -> Option<&RoleDefinition>

Returns a role definition.

§Performance

This method is O(log r).

Source

pub fn label(&self, id: LabelId) -> Option<&LabelDefinition>

Returns a label definition.

§Performance

This method is O(log l).

Source

pub fn relation_type( &self, id: RelationTypeId, ) -> Option<&RelationTypeDefinition>

Returns a relation type definition.

§Performance

This method is O(log t).

Source

pub fn property_key(&self, id: PropertyKeyId) -> Option<&PropertyKeyDefinition>

Returns a property key definition.

§Performance

This method is O(log p).

Source

pub fn projection(&self, id: ProjectionId) -> Option<&ProjectionEntry>

Returns a projection entry.

§Performance

This method is O(log p).

Source

pub fn index(&self, id: IndexId) -> Option<&IndexEntry>

Returns an index entry.

§Performance

This method is O(log i).

Source

pub fn role_id(&self, name: &str) -> Option<RoleId>

Resolves a role name.

§Performance

This method is O(log r + name length).

Source

pub fn label_id(&self, name: &str) -> Option<LabelId>

Resolves a label name.

§Performance

This method is O(log l + name length).

Source

pub fn relation_type_id(&self, name: &str) -> Option<RelationTypeId>

Resolves a relation type name.

§Performance

This method is O(log t + name length).

Source

pub fn property_key_id(&self, name: &str) -> Option<PropertyKeyId>

Resolves a property key name.

§Performance

This method is O(log p + name length).

Source

pub fn projection_id(&self, name: &str) -> Option<ProjectionId>

Resolves a projection name.

§Performance

This method is O(log p + name length).

Source

pub fn index_id(&self, name: &str) -> Option<IndexId>

Resolves an index name.

§Performance

This method is O(log i + name length).

Source

pub fn roles(&self) -> impl Iterator<Item = &RoleDefinition>

Iterates role definitions in ID order.

§Performance

Creating the iterator is O(1).

Source

pub fn labels(&self) -> impl Iterator<Item = &LabelDefinition>

Iterates label definitions in ID order.

§Performance

Creating the iterator is O(1).

Source

pub fn relation_types(&self) -> impl Iterator<Item = &RelationTypeDefinition>

Iterates relation type definitions in ID order.

§Performance

Creating the iterator is O(1).

Source

pub fn property_keys(&self) -> impl Iterator<Item = &PropertyKeyDefinition>

Iterates property key definitions in ID order.

§Performance

Creating the iterator is O(1).

Source

pub fn projections(&self) -> impl Iterator<Item = &ProjectionEntry>

Iterates projection entries in ID order.

§Performance

Creating the iterator is O(1).

Source

pub fn indexes(&self) -> impl Iterator<Item = &IndexEntry>

Iterates index entries in ID order.

§Performance

Creating the iterator is O(1).

Trait Implementations§

Source§

impl Clone for Catalog

Source§

fn clone(&self) -> Catalog

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Catalog

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for Catalog

Source§

fn eq(&self, other: &Catalog) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for Catalog

Source§

impl StructuralPartialEq for Catalog

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.