pub enum SchemaError {
Show 20 variants
ParseFileFormat(Error),
ActionTransitiveClosureError(Box<TcError<EntityUID>>),
EntityTransitiveClosureError(TcError<Name>),
UnsupportedSchemaFeature(UnsupportedFeature),
UndeclaredEntityTypes(HashSet<String>),
UndeclaredActions(HashSet<String>),
UndeclaredCommonType(HashSet<String>),
DuplicateEntityType(String),
DuplicateAction(String),
DuplicateCommonType(String),
CycleInActionHierarchy,
EntityTypeParseError(Vec<ParseError>),
NamespaceParseError(Vec<ParseError>),
ExtensionTypeParseError(Vec<ParseError>),
CommonTypeParseError(Vec<ParseError>),
ActionEntityTypeDeclared,
ActionEntityAttributes(Vec<String>),
ContextOrShapeNotRecord(ContextOrShape),
ActionEntityAttributeEmptySet,
ActionEntityAttributeUnsupportedType,
}Variants§
ParseFileFormat(Error)
Errors loading and parsing schema files
ActionTransitiveClosureError(Box<TcError<EntityUID>>)
Errors occurring while computing or enforcing transitive closure on action id hierarchy.
EntityTransitiveClosureError(TcError<Name>)
Errors occurring while computing or enforcing transitive closure on entity type hierarchy.
UnsupportedSchemaFeature(UnsupportedFeature)
Error generated when processing a schema file that uses features which are not yet supported by the implementation.
UndeclaredEntityTypes(HashSet<String>)
Undeclared entity type(s) used in an entity type’s memberOf field, an action’s appliesTo fields, or an attribute type in a context or entity attributes record. Entity types are reported fully qualified, including any implicit or explicit namespaces.
UndeclaredActions(HashSet<String>)
Undeclared action(s) used in an action’s memberOf field.
UndeclaredCommonType(HashSet<String>)
Undeclared type used in entity or context attributes.
DuplicateEntityType(String)
Duplicate specifications for an entity type. Argument is the name of the duplicate entity type.
DuplicateAction(String)
Duplicate specifications for an action. Argument is the name of the duplicate action.
DuplicateCommonType(String)
Duplicate specification for a reusable type declaration.
CycleInActionHierarchy
Cycle in the schema’s action hierarchy.
EntityTypeParseError(Vec<ParseError>)
Parse errors occurring while parsing an entity type.
NamespaceParseError(Vec<ParseError>)
Parse errors occurring while parsing a namespace identifier.
ExtensionTypeParseError(Vec<ParseError>)
Parse errors occurring while parsing an extension type.
CommonTypeParseError(Vec<ParseError>)
Parse errors occurring while parsing the name of one of reusable declared types.
ActionEntityTypeDeclared
The schema file included an entity type Action in the entity type
list. The Action entity type is always implicitly declared, and it
cannot currently have attributes or be in any groups, so there is no
purposes in adding an explicit entry.
ActionEntityAttributes(Vec<String>)
One or more action entities are declared with attributes, but this is
not currently supported.
ContextOrShapeNotRecord(ContextOrShape)
ActionEntityAttributeEmptySet
An Action Entity (transitively) has an attribute that is an empty set
ActionEntityAttributeUnsupportedType
An Action Entity (transitively) has an attribute of unsupported type (ExprEscape, EntityEscape or ExtnEscape)
Trait Implementations§
Source§impl Debug for SchemaError
impl Debug for SchemaError
Source§impl Display for SchemaError
impl Display for SchemaError
Source§impl Error for SchemaError
impl Error for SchemaError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
Source§impl From<Error> for SchemaError
impl From<Error> for SchemaError
Auto Trait Implementations§
impl Freeze for SchemaError
impl !RefUnwindSafe for SchemaError
impl Send for SchemaError
impl Sync for SchemaError
impl Unpin for SchemaError
impl !UnwindSafe for SchemaError
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more