Trait typedb_driver::transaction::concept::api::EntityTypeAPI
source · pub trait EntityTypeAPI: ThingTypeAPI + Clone + Into<EntityType> {
// Provided methods
fn create<'tx>(
&self,
transaction: &'tx Transaction<'_>
) -> BoxPromise<'tx, Result<Entity>> { ... }
fn get_supertype<'tx>(
&self,
transaction: &'tx Transaction<'_>
) -> BoxPromise<'tx, Result<Option<EntityType>>> { ... }
fn set_supertype<'tx>(
&mut self,
transaction: &'tx Transaction<'_>,
supertype: EntityType
) -> BoxPromise<'tx, Result> { ... }
fn get_supertypes<'tx>(
&self,
transaction: &'tx Transaction<'_>
) -> Result<BoxStream<'tx, Result<EntityType>>> { ... }
fn get_subtypes<'tx>(
&self,
transaction: &'tx Transaction<'_>,
transitivity: Transitivity
) -> Result<BoxStream<'tx, Result<EntityType>>> { ... }
fn get_instances<'tx>(
&self,
transaction: &'tx Transaction<'_>,
transitivity: Transitivity
) -> Result<BoxStream<'tx, Result<Entity>>> { ... }
}
Provided Methods§
sourcefn create<'tx>(
&self,
transaction: &'tx Transaction<'_>
) -> BoxPromise<'tx, Result<Entity>>
fn create<'tx>( &self, transaction: &'tx Transaction<'_> ) -> BoxPromise<'tx, Result<Entity>>
sourcefn get_supertype<'tx>(
&self,
transaction: &'tx Transaction<'_>
) -> BoxPromise<'tx, Result<Option<EntityType>>>
fn get_supertype<'tx>( &self, transaction: &'tx Transaction<'_> ) -> BoxPromise<'tx, Result<Option<EntityType>>>
sourcefn set_supertype<'tx>(
&mut self,
transaction: &'tx Transaction<'_>,
supertype: EntityType
) -> BoxPromise<'tx, Result>
fn set_supertype<'tx>( &mut self, transaction: &'tx Transaction<'_>, supertype: EntityType ) -> BoxPromise<'tx, Result>
sourcefn get_supertypes<'tx>(
&self,
transaction: &'tx Transaction<'_>
) -> Result<BoxStream<'tx, Result<EntityType>>>
fn get_supertypes<'tx>( &self, transaction: &'tx Transaction<'_> ) -> Result<BoxStream<'tx, Result<EntityType>>>
sourcefn get_subtypes<'tx>(
&self,
transaction: &'tx Transaction<'_>,
transitivity: Transitivity
) -> Result<BoxStream<'tx, Result<EntityType>>>
fn get_subtypes<'tx>( &self, transaction: &'tx Transaction<'_>, transitivity: Transitivity ) -> Result<BoxStream<'tx, Result<EntityType>>>
Retrieves all direct and indirect (or direct only) subtypes of the EntityType
.
§Arguments
transaction
– The current transactiontransitivity
–Transitivity::Transitive
for direct and indirect subtypes,Transitivity::Explicit
for direct subtypes only
§Examples
entity_type.get_subtypes(transaction, Transitivity::Transitive);
sourcefn get_instances<'tx>(
&self,
transaction: &'tx Transaction<'_>,
transitivity: Transitivity
) -> Result<BoxStream<'tx, Result<Entity>>>
fn get_instances<'tx>( &self, transaction: &'tx Transaction<'_>, transitivity: Transitivity ) -> Result<BoxStream<'tx, Result<Entity>>>
Retrieves all direct and indirect (or direct only) Entity
objects that are instances
of this EntityType
.
§Arguments
transaction
– The current transactiontransitivity
–Transitivity::Transitive
for direct and indirect instances,Transitivity::Explicit
for direct instances only
§Examples
entity_type.get_instances(transaction, Transitivity::Explicit);
Object Safety§
This trait is not object safe.