Struct cedar_policy_validator::SchemaFragment
source · pub struct SchemaFragment(pub HashMap<SmolStr, NamespaceDefinition>);
Expand description
A SchemaFragment describe the types for a given instance of Cedar.
SchemaFragments are composed of Entity Types and Action Types. The
schema fragment is split into multiple namespace definitions, eac including
a namespace name which is applied to all entity types (and the implicit
Action
entity type for all actions) in the schema.
Tuple Fields§
§0: HashMap<SmolStr, NamespaceDefinition>
Implementations§
source§impl SchemaFragment
impl SchemaFragment
sourcepub fn from_json_value(json: Value) -> Result<Self>
pub fn from_json_value(json: Value) -> Result<Self>
Create a SchemaFragment
from a JSON value (which should be an object
of the appropriate shape).
sourcepub fn from_file(file: impl Read) -> Result<Self>
pub fn from_file(file: impl Read) -> Result<Self>
Create a SchemaFragment
directly from a file containing a JSON object.
sourcepub fn from_str_natural(
src: &str
) -> Result<(Self, impl Iterator<Item = SchemaWarning>), HumanSchemaError>
pub fn from_str_natural( src: &str ) -> Result<(Self, impl Iterator<Item = SchemaWarning>), HumanSchemaError>
Parse the schema (in natural schema syntax) from a string
sourcepub fn from_file_natural(
file: impl Read
) -> Result<(Self, impl Iterator<Item = SchemaWarning>), HumanSchemaError>
pub fn from_file_natural( file: impl Read ) -> Result<(Self, impl Iterator<Item = SchemaWarning>), HumanSchemaError>
Parse the schema (in natural schema syntax) from a reader
sourcepub fn as_natural_schema(&self) -> Result<String, ToHumanSchemaStrError>
pub fn as_natural_schema(&self) -> Result<String, ToHumanSchemaStrError>
Pretty print this SchemaFragment
Trait Implementations§
source§impl Clone for SchemaFragment
impl Clone for SchemaFragment
source§fn clone(&self) -> SchemaFragment
fn clone(&self) -> SchemaFragment
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for SchemaFragment
impl Debug for SchemaFragment
source§impl<'de> Deserialize<'de> for SchemaFragment
impl<'de> Deserialize<'de> for SchemaFragment
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
source§impl Display for SchemaFragment
impl Display for SchemaFragment
source§impl PartialEq for SchemaFragment
impl PartialEq for SchemaFragment
source§fn eq(&self, other: &SchemaFragment) -> bool
fn eq(&self, other: &SchemaFragment) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl Serialize for SchemaFragment
impl Serialize for SchemaFragment
source§impl TryFrom<SchemaFragment> for ValidatorSchema
impl TryFrom<SchemaFragment> for ValidatorSchema
§type Error = SchemaError
type Error = SchemaError
The type returned in the event of a conversion error.
source§fn try_from(frag: SchemaFragment) -> Result<ValidatorSchema>
fn try_from(frag: SchemaFragment) -> Result<ValidatorSchema>
Performs the conversion.
source§impl TryInto<ValidatorSchemaFragment> for SchemaFragment
impl TryInto<ValidatorSchemaFragment> for SchemaFragment
§type Error = SchemaError
type Error = SchemaError
The type returned in the event of a conversion error.
source§fn try_into(self) -> Result<ValidatorSchemaFragment>
fn try_into(self) -> Result<ValidatorSchemaFragment>
Performs the conversion.
impl StructuralPartialEq for SchemaFragment
Auto Trait Implementations§
impl Freeze for SchemaFragment
impl RefUnwindSafe for SchemaFragment
impl Send for SchemaFragment
impl Sync for SchemaFragment
impl Unpin for SchemaFragment
impl UnwindSafe for SchemaFragment
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
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>
Converts
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>
Converts
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