Enum geo_aid::script::Error

source ·
pub enum Error {
Show 30 variants InvalidToken { token: Token, }, InvalidCharacter { character: char, error_span: Span, }, IteratorIdMustBeAnInteger { error_span: Span, }, IteratorIdExceeds255 { error_span: Span, }, SingleVariantExplicitIterator { error_span: Span, }, EndOfInput, UndefinedRuleOperator { operator: NamedIdent, }, InconsistentIterators { first_span: Span, first_length: usize, occured_span: Span, occured_length: usize, error_span: Span, }, IteratorWithSameIdIterator { error_span: Span, parent_span: Span, contained_span: Span, }, InconsistentTypes { expected: (Type, Box<Span>), got: (Type, Box<Span>), error_span: Box<Span>, }, RedefinedVariable { defined_at: Span, error_span: Span, variable_name: String, }, UndefinedTypeVariable { definition: Span, }, UndefinedVariable { error_span: Span, variable_name: String, suggested: Option<String>, }, UndefinedFunction { error_span: Span, function_name: String, suggested: Option<String>, }, FetureNotSupported { error_span: Span, feature_name: &'static str, }, InvalidArgumentCount { error_span: Span, expected: &'static [u8], got: u8, }, OverloadNotFound { error_span: Span, params: Vec<Type>, function_name: String, }, CannotUnpack { error_span: Span, ty: Type, }, ImplicitConversionDoesNotExist { error_span: Span, from: Type, to: Type, }, InvalidOperandType { error_span: Span, got: (Type, Span), op: String, }, LetStatUnexpectedIterator { var_span: Span, error_span: Span, }, LetStatMoreThanOneIterator { error_span: Span, first_span: Span, second_span: Span, }, NonPointInPointCollection { error_span: Span, received: (Span, Type), }, FlagDoesNotExist { flag_name: String, flag_span: Span, error_span: Span, suggested: Option<String>, }, FlagSetExpected { error_span: Span, }, StringExpected { error_span: Span, }, BooleanExpected { error_span: Span, }, RedefinedFlag { error_span: Span, first_defined: Span, flag_name: String, }, FlagEnumInvalidValue { error_span: Span, available_values: &'static [&'static str], received_value: String, }, RequiredFlagNotSet { flag_name: &'static str, required_because: Span, flagdef_span: Option<Span>, available_values: &'static [&'static str], },
}

Variants§

§

InvalidToken

Fields

§token: Token
§

InvalidCharacter

Fields

§character: char
§error_span: Span
§

IteratorIdMustBeAnInteger

Fields

§error_span: Span
§

IteratorIdExceeds255

Fields

§error_span: Span
§

SingleVariantExplicitIterator

Fields

§error_span: Span
§

EndOfInput

§

UndefinedRuleOperator

Fields

§operator: NamedIdent
§

InconsistentIterators

Fields

§first_span: Span
§first_length: usize
§occured_span: Span
§occured_length: usize
§error_span: Span
§

IteratorWithSameIdIterator

Fields

§error_span: Span
§parent_span: Span
§contained_span: Span
§

InconsistentTypes

Fields

§expected: (Type, Box<Span>)
§got: (Type, Box<Span>)
§error_span: Box<Span>
§

RedefinedVariable

Fields

§defined_at: Span
§error_span: Span
§variable_name: String
§

UndefinedTypeVariable

Fields

§definition: Span
§

UndefinedVariable

Fields

§error_span: Span
§variable_name: String
§suggested: Option<String>
§

UndefinedFunction

Fields

§error_span: Span
§function_name: String
§suggested: Option<String>
§

FetureNotSupported

Fields

§error_span: Span
§feature_name: &'static str
§

InvalidArgumentCount

Fields

§error_span: Span
§expected: &'static [u8]
§got: u8
§

OverloadNotFound

Fields

§error_span: Span
§params: Vec<Type>
§function_name: String
§

CannotUnpack

Fields

§error_span: Span
§ty: Type
§

ImplicitConversionDoesNotExist

Fields

§error_span: Span
§from: Type
§to: Type
§

InvalidOperandType

Fields

§error_span: Span
§got: (Type, Span)
§

LetStatUnexpectedIterator

Fields

§var_span: Span
§error_span: Span
§

LetStatMoreThanOneIterator

Fields

§error_span: Span
§first_span: Span
§second_span: Span
§

NonPointInPointCollection

Fields

§error_span: Span
§received: (Span, Type)
§

FlagDoesNotExist

Fields

§flag_name: String
§flag_span: Span
§error_span: Span
§suggested: Option<String>
§

FlagSetExpected

Fields

§error_span: Span
§

StringExpected

Fields

§error_span: Span
§

BooleanExpected

Fields

§error_span: Span
§

RedefinedFlag

Fields

§error_span: Span
§first_defined: Span
§flag_name: String
§

FlagEnumInvalidValue

Fields

§error_span: Span
§available_values: &'static [&'static str]
§received_value: String
§

RequiredFlagNotSet

Fields

§flag_name: &'static str
§required_because: Span
§flagdef_span: Option<Span>
§available_values: &'static [&'static str]

Implementations§

source§

impl Error

source

pub fn invalid_token(token: Token) -> Self

source

pub fn invalid_character(character: char, error_span: Span) -> Self

source

pub fn undefined_rule_operator(name: NamedIdent) -> Self

source

pub fn redefined_variable( defined_at: Span, error_span: Span, variable_name: String ) -> Self

source

pub fn undefined_type_variable(definition: Span) -> Self

source

pub fn feature_not_supported( error_span: Span, feature_name: &'static str ) -> Self

source

pub fn overload_not_found( error_span: Span, function_name: String, params: Vec<Type> ) -> Self

source

pub fn cannot_unpack(error_span: Span, ty: Type) -> Self

source

pub fn implicit_conversion_does_not_exist( error_span: Span, from: Type, to: Type ) -> Self

source

pub fn diagnostic(self) -> DiagnosticData

Trait Implementations§

source§

impl Debug for Error

source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere 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, U> TryFrom<U> for Twhere U: Into<T>,

§

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 Twhere U: TryFrom<T>,

§

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.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V