pub struct Schema {
pub version: String,
pub attributes: IndexMap<AttributeId, AttributeSchema>,
pub predicates: IndexMap<PredicateId, PredicateSignature>,
}Fields§
§version: String§attributes: IndexMap<AttributeId, AttributeSchema>§predicates: IndexMap<PredicateId, PredicateSignature>Implementations§
Source§impl Schema
impl Schema
pub fn new(version: impl Into<String>) -> Self
pub fn register_attribute( &mut self, attribute: AttributeSchema, ) -> Result<(), SchemaError>
pub fn register_predicate( &mut self, predicate: PredicateSignature, ) -> Result<(), SchemaError>
pub fn attribute(&self, id: &AttributeId) -> Option<&AttributeSchema>
pub fn predicate(&self, id: &PredicateId) -> Option<&PredicateSignature>
pub fn validate_predicate_arity( &self, id: &PredicateId, arity: usize, ) -> Result<(), SchemaError>
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Schema
impl<'de> Deserialize<'de> for Schema
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Schema
Auto Trait Implementations§
impl Freeze for Schema
impl RefUnwindSafe for Schema
impl Send for Schema
impl Sync for Schema
impl Unpin for Schema
impl UnwindSafe for Schema
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more