pub struct EntityDescriptor {
pub name: String,
pub entity_type: String,
pub attributes: Vec<(String, String)>,
pub relations: Vec<(String, String)>,
}Expand description
A described entity. Attributes are intentionally ordered so the default preference ordering respects registration order.
Fields§
§name: String§entity_type: String§attributes: Vec<(String, String)>§relations: Vec<(String, String)>Labeled directed edges from this entity to other named entities.
Each (relation_label, target_name) pair. The label is the
surface-form fragment that will be inserted verbatim after the head
noun in the referring expression — e.g. ("that calls", "AuthService")
renders as "that calls AuthService". Labels are chosen by the caller
to read naturally in context.
#[serde(default)] ensures existing serialized EntityDescriptor
payloads that lack this field still deserialize cleanly.
Implementations§
Source§impl EntityDescriptor
impl EntityDescriptor
pub fn new(name: impl Into<String>, entity_type: impl Into<String>) -> Self
Sourcepub fn with_attribute(
self,
key: impl Into<String>,
value: impl Into<String>,
) -> Self
pub fn with_attribute( self, key: impl Into<String>, value: impl Into<String>, ) -> Self
Append an attribute. Chainable.
Sourcepub fn with_relation(
self,
label: impl Into<String>,
target: impl Into<String>,
) -> Self
pub fn with_relation( self, label: impl Into<String>, target: impl Into<String>, ) -> Self
Append a labeled directed relation to another entity. Chainable.
label is the surface-form fragment inserted verbatim after the head
noun when this relation is selected by the graph-based algorithm
(e.g. "that calls"). target is the name of the target entity.
Relations are considered in insertion order during REG.
Trait Implementations§
Source§impl Clone for EntityDescriptor
impl Clone for EntityDescriptor
Source§fn clone(&self) -> EntityDescriptor
fn clone(&self) -> EntityDescriptor
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for EntityDescriptor
impl Debug for EntityDescriptor
Source§impl Default for EntityDescriptor
impl Default for EntityDescriptor
Source§fn default() -> EntityDescriptor
fn default() -> EntityDescriptor
Source§impl PartialEq for EntityDescriptor
impl PartialEq for EntityDescriptor
Source§fn eq(&self, other: &EntityDescriptor) -> bool
fn eq(&self, other: &EntityDescriptor) -> bool
self and other values to be equal, and is used by ==.