AsFunctional

Trait AsFunctional 

Source
pub trait AsFunctional {
    // Provided methods
    fn as_ofn<'t>(&'t self) -> Functional<'t, Self> { ... }
    fn as_ofn_ctx<'t>(
        &'t self,
        context: &'t Context<'t>,
    ) -> Functional<'t, Self> { ... }
}
Expand description

A trait for OWL elements that can be serialized to OWL Functional syntax.

Provided Methods§

Source

fn as_ofn<'t>(&'t self) -> Functional<'t, Self>

Get a handle for displaying the element in functional syntax.

Instead of returning a String, this method returns an opaque struct that implements Display, which can be used to write to a file without having to build a fully-serialized string first, or to just get a string with the ToString implementation.

§Example
use horned_functional::AsFunctional;

let axiom = DeclareClass(build.class("http://xmlns.com/foaf/0.1/Person"));
assert_eq!(
    axiom.as_ofn().to_string(),
    "Declaration(Class(<http://xmlns.com/foaf/0.1/Person>))"
);
Source

fn as_ofn_ctx<'t>(&'t self, context: &'t Context<'t>) -> Functional<'t, Self>

Get a handle for displaying the element, using the given context.

Use the context to pass around a PrefixMapping, allowing the functional representation to be written using abbreviated IRIs when possible.

§Example
use horned_functional::AsFunctional;
use horned_functional::Context;

let mut prefixes = curie::PrefixMapping::default();
prefixes.add_prefix("foaf", "http://xmlns.com/foaf/0.1/");

let axiom = DeclareClass(build.class("http://xmlns.com/foaf/0.1/Person"));
assert_eq!(
    axiom.as_ofn_ctx(&Context::from(&prefixes)).to_string(),
    "Declaration(Class(foaf:Person))"
);

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl AsFunctional for AnnotationSubject

Source§

impl AsFunctional for AnnotationValue

Source§

impl AsFunctional for Axiom

Source§

impl AsFunctional for ClassExpression

Source§

impl AsFunctional for DataRange

Source§

impl AsFunctional for Facet

Source§

impl AsFunctional for Individual

Source§

impl AsFunctional for Literal

Source§

impl AsFunctional for ObjectPropertyExpression

Source§

impl AsFunctional for SubObjectPropertyExpression

Source§

impl AsFunctional for PrefixMapping

Source§

impl AsFunctional for AnnotatedAxiom

Source§

impl AsFunctional for Annotation

Source§

impl AsFunctional for AnnotationAssertion

Source§

impl AsFunctional for AnnotationProperty

Source§

impl AsFunctional for AnnotationPropertyDomain

Source§

impl AsFunctional for AnnotationPropertyRange

Source§

impl AsFunctional for AnonymousIndividual

Source§

impl AsFunctional for AsymmetricObjectProperty

Source§

impl AsFunctional for Class

Source§

impl AsFunctional for ClassAssertion

Source§

impl AsFunctional for DataProperty

Source§

impl AsFunctional for DataPropertyAssertion

Source§

impl AsFunctional for DataPropertyDomain

Source§

impl AsFunctional for DataPropertyRange

Source§

impl AsFunctional for Datatype

Source§

impl AsFunctional for DatatypeDefinition

Source§

impl AsFunctional for DeclareAnnotationProperty

Source§

impl AsFunctional for DeclareClass

Source§

impl AsFunctional for DeclareDataProperty

Source§

impl AsFunctional for DeclareDatatype

Source§

impl AsFunctional for DeclareNamedIndividual

Source§

impl AsFunctional for DeclareObjectProperty

Source§

impl AsFunctional for DifferentIndividuals

Source§

impl AsFunctional for DisjointClasses

Source§

impl AsFunctional for DisjointDataProperties

Source§

impl AsFunctional for DisjointObjectProperties

Source§

impl AsFunctional for DisjointUnion

Source§

impl AsFunctional for EquivalentClasses

Source§

impl AsFunctional for EquivalentDataProperties

Source§

impl AsFunctional for EquivalentObjectProperties

Source§

impl AsFunctional for FacetRestriction

Source§

impl AsFunctional for FunctionalDataProperty

Source§

impl AsFunctional for FunctionalObjectProperty

Source§

impl AsFunctional for HasKey

Source§

impl AsFunctional for IRI

Source§

impl AsFunctional for Import

Source§

impl AsFunctional for InverseFunctionalObjectProperty

Source§

impl AsFunctional for InverseObjectProperties

Source§

impl AsFunctional for IrreflexiveObjectProperty

Source§

impl AsFunctional for NamedIndividual

Source§

impl AsFunctional for NegativeDataPropertyAssertion

Source§

impl AsFunctional for NegativeObjectPropertyAssertion

Source§

impl AsFunctional for ObjectProperty

Source§

impl AsFunctional for ObjectPropertyAssertion

Source§

impl AsFunctional for ObjectPropertyDomain

Source§

impl AsFunctional for ObjectPropertyRange

Source§

impl AsFunctional for OntologyAnnotation

Source§

impl AsFunctional for ReflexiveObjectProperty

Source§

impl AsFunctional for SameIndividual

Source§

impl AsFunctional for SubAnnotationPropertyOf

Source§

impl AsFunctional for SubClassOf

Source§

impl AsFunctional for SubDataPropertyOf

Source§

impl AsFunctional for SubObjectPropertyOf

Source§

impl AsFunctional for SymmetricObjectProperty

Source§

impl AsFunctional for TransitiveObjectProperty

Source§

impl AsFunctional for AxiomMappedOntology

Implementors§