Enum Statement

Source
pub enum Statement {
Show 19 variants Expression(MultipleExpression), Block(Block), Debugger(Span), If(IfStatement), ForLoop(ForLoopStatement), Switch(SwitchStatement), WhileLoop(WhileStatement), DoWhileLoop(DoWhileStatement), TryCatch(TryCatchStatement), Return(ReturnStatement), Continue(Option<String>, Span), Break(Option<String>, Span), Throw(ThrowStatement), Comment(String, Span), MultiLineComment(String, Span), Labelled { position: Span, name: String, statement: Box<Statement>, }, VarVariable(VarVariableStatement), Empty(Span), AestheticSemiColon(Span),
}
Expand description

A statement. See [Declaration]s and [StatementAndDeclaration] for more

Variants§

§

Expression(MultipleExpression)

§

Block(Block)

{ … } statement

§

Debugger(Span)

§

If(IfStatement)

§

ForLoop(ForLoopStatement)

§

Switch(SwitchStatement)

§

WhileLoop(WhileStatement)

§

DoWhileLoop(DoWhileStatement)

§

TryCatch(TryCatchStatement)

§

Return(ReturnStatement)

§

Continue(Option<String>, Span)

§

Break(Option<String>, Span)

§

Throw(ThrowStatement)

e.g throw ...

§

Comment(String, Span)

§

MultiLineComment(String, Span)

§

Labelled

Fields

§position: Span
§name: String
§statement: Box<Statement>
§

VarVariable(VarVariableStatement)

§

Empty(Span)

§

AestheticSemiColon(Span)

Lol

Implementations§

Source§

impl Statement

Source

pub fn is_comment(&self) -> bool

Used for skipping in to_string

Trait Implementations§

Source§

impl ASTNode for Statement

Source§

fn get_position(&self) -> Span

Returns position of node as span AS IT WAS PARSED. May be Span::NULL if AST was doesn’t match anything in source
Source§

fn from_reader( reader: &mut impl TokenReader<TSXToken, TokenStart>, state: &mut ParsingState, options: &ParseOptions, ) -> ParseResult<Self>

Source§

fn to_string_from_buffer<T: ToString>( &self, buf: &mut T, options: &ToStringOptions, local: LocalToStringInformation, )

Source§

fn from_string(script: String, options: ParseOptions) -> ParseResult<Self>

From string, with default impl to call abstract method from_reader
Source§

fn from_string_with_options( script: String, options: ParseOptions, offset: Option<u32>, ) -> ParseResult<(Self, ParsingState)>

Source§

fn to_string(&self, options: &ToStringOptions) -> String

Returns structure as valid string
Source§

impl Clone for Statement

Source§

fn clone(&self) -> Statement

Returns a copy of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for Statement

Source§

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

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

impl<'a> From<&'a Statement> for BlockItem<'a>

Source§

fn from(item: &'a Statement) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<&'a mut Statement> for BlockItemMut<'a>

Source§

fn from(item: &'a mut Statement) -> Self

Converts to this type from the input type.
Source§

impl From<Block> for Statement

Source§

fn from(item: Block) -> Self

Converts to this type from the input type.
Source§

impl From<DoWhileStatement> for Statement

Source§

fn from(item: DoWhileStatement) -> Self

Converts to this type from the input type.
Source§

impl From<ForLoopStatement> for Statement

Source§

fn from(item: ForLoopStatement) -> Self

Converts to this type from the input type.
Source§

impl From<IfStatement> for Statement

Source§

fn from(item: IfStatement) -> Self

Converts to this type from the input type.
Source§

impl From<MultipleExpression> for Statement

Source§

fn from(item: MultipleExpression) -> Self

Converts to this type from the input type.
Source§

impl From<ReturnStatement> for Statement

Source§

fn from(item: ReturnStatement) -> Self

Converts to this type from the input type.
Source§

impl From<Statement> for BlockOrSingleStatement

Source§

fn from(stmt: Statement) -> Self

Converts to this type from the input type.
Source§

impl From<Statement> for StatementOrDeclaration

Source§

fn from(item: Statement) -> Self

Converts to this type from the input type.
Source§

impl From<SwitchStatement> for Statement

Source§

fn from(item: SwitchStatement) -> Self

Converts to this type from the input type.
Source§

impl From<ThrowStatement> for Statement

Source§

fn from(item: ThrowStatement) -> Self

Converts to this type from the input type.
Source§

impl From<TryCatchStatement> for Statement

Source§

fn from(item: TryCatchStatement) -> Self

Converts to this type from the input type.
Source§

impl From<VarVariableStatement> for Statement

Source§

fn from(item: VarVariableStatement) -> Self

Converts to this type from the input type.
Source§

impl From<WhileStatement> for Statement

Source§

fn from(item: WhileStatement) -> Self

Converts to this type from the input type.
Source§

impl GetFieldByType<BaseSpan<()>> for Statement

Source§

fn get(&self) -> &Span

Get the value of a field that has type T
Source§

impl IntoAST<Statement> for Expression

Source§

impl PartialEq for Statement

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl SelfRustTokenize for Statement

Source§

fn append_to_token_stream(&self, token_stream: &mut TokenStream)

Source§

fn to_tokens(&self) -> TokenStream

Returns the tokens used to construct self
Source§

impl Serialize for Statement

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl<'try_into_ref> TryInto<&'try_into_ref Block> for &'try_into_ref Statement

Source§

type Error = &'try_into_ref Statement

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

fn try_into(self) -> Result<&'try_into_ref Block, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref DoWhileStatement> for &'try_into_ref Statement

Source§

type Error = &'try_into_ref Statement

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

fn try_into(self) -> Result<&'try_into_ref DoWhileStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref ForLoopStatement> for &'try_into_ref Statement

Source§

type Error = &'try_into_ref Statement

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

fn try_into(self) -> Result<&'try_into_ref ForLoopStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref IfStatement> for &'try_into_ref Statement

Source§

type Error = &'try_into_ref Statement

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

fn try_into(self) -> Result<&'try_into_ref IfStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref MultipleExpression> for &'try_into_ref Statement

Source§

type Error = &'try_into_ref Statement

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

fn try_into(self) -> Result<&'try_into_ref MultipleExpression, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref ReturnStatement> for &'try_into_ref Statement

Source§

type Error = &'try_into_ref Statement

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

fn try_into(self) -> Result<&'try_into_ref ReturnStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref SwitchStatement> for &'try_into_ref Statement

Source§

type Error = &'try_into_ref Statement

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

fn try_into(self) -> Result<&'try_into_ref SwitchStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref ThrowStatement> for &'try_into_ref Statement

Source§

type Error = &'try_into_ref Statement

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

fn try_into(self) -> Result<&'try_into_ref ThrowStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref TryCatchStatement> for &'try_into_ref Statement

Source§

type Error = &'try_into_ref Statement

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

fn try_into(self) -> Result<&'try_into_ref TryCatchStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref VarVariableStatement> for &'try_into_ref Statement

Source§

type Error = &'try_into_ref Statement

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

fn try_into(self) -> Result<&'try_into_ref VarVariableStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref WhileStatement> for &'try_into_ref Statement

Source§

type Error = &'try_into_ref Statement

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

fn try_into(self) -> Result<&'try_into_ref WhileStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref mut Block> for &'try_into_ref mut Statement

Source§

type Error = &'try_into_ref mut Statement

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

fn try_into(self) -> Result<&'try_into_ref mut Block, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref mut DoWhileStatement> for &'try_into_ref mut Statement

Source§

type Error = &'try_into_ref mut Statement

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

fn try_into(self) -> Result<&'try_into_ref mut DoWhileStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref mut ForLoopStatement> for &'try_into_ref mut Statement

Source§

type Error = &'try_into_ref mut Statement

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

fn try_into(self) -> Result<&'try_into_ref mut ForLoopStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref mut IfStatement> for &'try_into_ref mut Statement

Source§

type Error = &'try_into_ref mut Statement

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

fn try_into(self) -> Result<&'try_into_ref mut IfStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref mut MultipleExpression> for &'try_into_ref mut Statement

Source§

type Error = &'try_into_ref mut Statement

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

fn try_into(self) -> Result<&'try_into_ref mut MultipleExpression, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref mut ReturnStatement> for &'try_into_ref mut Statement

Source§

type Error = &'try_into_ref mut Statement

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

fn try_into(self) -> Result<&'try_into_ref mut ReturnStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref mut SwitchStatement> for &'try_into_ref mut Statement

Source§

type Error = &'try_into_ref mut Statement

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

fn try_into(self) -> Result<&'try_into_ref mut SwitchStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref mut ThrowStatement> for &'try_into_ref mut Statement

Source§

type Error = &'try_into_ref mut Statement

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

fn try_into(self) -> Result<&'try_into_ref mut ThrowStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref mut TryCatchStatement> for &'try_into_ref mut Statement

Source§

type Error = &'try_into_ref mut Statement

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

fn try_into(self) -> Result<&'try_into_ref mut TryCatchStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref mut VarVariableStatement> for &'try_into_ref mut Statement

Source§

type Error = &'try_into_ref mut Statement

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

fn try_into( self, ) -> Result<&'try_into_ref mut VarVariableStatement, Self::Error>

Performs the conversion.
Source§

impl<'try_into_ref> TryInto<&'try_into_ref mut WhileStatement> for &'try_into_ref mut Statement

Source§

type Error = &'try_into_ref mut Statement

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

fn try_into(self) -> Result<&'try_into_ref mut WhileStatement, Self::Error>

Performs the conversion.
Source§

impl Visitable for Statement

Source§

fn visit<TData>( &self, visitors: &mut (impl VisitorReceiver<TData> + ?Sized), data: &mut TData, options: &VisitOptions, chain: &mut Annex<'_, Chain>, )

Source§

fn visit_mut<TData>( &mut self, visitors: &mut (impl VisitorMutReceiver<TData> + ?Sized), data: &mut TData, options: &VisitOptions, chain: &mut Annex<'_, Chain>, )

Source§

impl Eq for Statement

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, 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> IntoAST<T> for T
where T: ASTNode,

Source§

fn into_ast(self) -> T

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