Skip to main content

Warning

Enum Warning 

Source
pub enum Warning {
    UnexpectedField,
    NonSpecField,
    MissingField {
        name: &'static str,
    },
    NullField,
    InvalidType {
        expected: ValueKind,
        actual: ValueKind,
    },
    StringTooLong {
        max: usize,
        len: usize,
    },
    InvalidValue {
        expected: &'static [&'static str],
        actual: String,
    },
    IncorrectCase {
        expected: &'static str,
        actual: String,
    },
    Cardinality,
}
Expand description

A structural problem found while validating a JSON document against the OCPI schema.

Variants§

§

UnexpectedField

A field present in the JSON that the schema does not list.

§

NonSpecField

A field the spec for this version does not define, which this layer reads anyway because real-world documents carry it. The value is still validated and retained.

§

MissingField

A required field absent from its containing object.

Fields

§name: &'static str

The field name the schema expected.

§

NullField

A field whose value is JSON null. null fields can simply be omitted.

§

InvalidType

A value whose JSON kind does not match the schema.

Fields

§expected: ValueKind

The JSON kind the schema expects.

§actual: ValueKind

The JSON kind encountered.

§

StringTooLong

A string longer than the maximum length the schema permits.

Fields

§max: usize

The maximum character length the schema allows.

§len: usize

The character length actually encountered.

§

InvalidValue

A string value that is not one of an enum field’s permitted variants, read without regard to case.

Fields

§expected: &'static [&'static str]

The permitted spec values, in the spec’s defined case.

§actual: String

The value encountered, as written in the JSON (escapes not decoded).

§

IncorrectCase

A string value that names one of an enum field’s variants, but not in the spec’s case.

Both OCPI versions state that strings in messages and enumerations are case-sensitive, so the value is off-spec rather than merely unconventional. This crate reads it anyway, and says which variant it read.

Fields

§expected: &'static str

The variant the value named, in the spec’s defined case.

§actual: String

The value encountered, as written in the JSON (escapes not decoded).

§

Cardinality

An empty array for a field whose schema requires one or more elements.

The only cardinality the schema can violate is “one or more”, and the only way to violate it is to hold nothing, so this variant carries no data.

Trait Implementations§

Source§

impl Clone for Warning

Source§

fn clone(&self) -> Warning

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Warning

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for Warning

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for Warning

Source§

impl Fixable for Warning

Source§

fn fix(&self, element: &Element<'_>) -> Option<Edit>

The edit that resolves this warning at element, or None if nothing mechanical can resolve it.
Source§

impl PartialEq for Warning

Source§

fn eq(&self, other: &Warning) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for Warning

Source§

impl Warning for Warning

Source§

fn id(&self) -> Id

Return the human readable identifier for the Warning. Read more
Source§

fn is_rejected(&self) -> bool

Whether this is the Rejected marker a feature emits when it rejects the schema IR for the object it is building. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoCaveat for T

Source§

fn into_caveat<W>(self, warnings: Set<W>) -> Caveat<T, W>
where W: Warning,

Any type can be converted to Caveat<T> by supplying a list of Warnings.
Source§

fn into_infallible_caveat(self) -> Caveat<Self, Infallible>

If a FromSchema is infallible a Caveat can be created using this method.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more