Struct ezno_parser::declarations::classes::ClassDeclaration
source · pub struct ClassDeclaration<T: ExpressionOrStatementPosition> {
pub class_keyword: Keyword<Class>,
pub name: T::Name,
pub type_parameters: Option<Vec<GenericTypeConstraint>>,
pub extends: Option<Box<Expression>>,
pub implements: Option<Vec<TypeAnnotation>>,
pub members: Vec<Decorated<ClassMember>>,
pub position: Span,
}
Fields§
§class_keyword: Keyword<Class>
§name: T::Name
§type_parameters: Option<Vec<GenericTypeConstraint>>
§extends: Option<Box<Expression>>
§implements: Option<Vec<TypeAnnotation>>
§members: Vec<Decorated<ClassMember>>
§position: Span
Trait Implementations§
source§impl<U: ExpressionOrStatementPosition + Debug + PartialEq + Eq + Clone + 'static> ASTNode for ClassDeclaration<U>
impl<U: ExpressionOrStatementPosition + Debug + PartialEq + Eq + Clone + 'static> ASTNode for ClassDeclaration<U>
fn from_reader( reader: &mut impl TokenReader<TSXToken, TokenStart>, state: &mut ParsingState, options: &ParseOptions ) -> ParseResult<Self>
fn to_string_from_buffer<T: ToString>( &self, buf: &mut T, options: &ToStringOptions, depth: u8 )
source§fn get_position(&self) -> &Span
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_string(
script: String,
options: ParseOptions,
source: SourceId,
offset: Option<u32>
) -> ParseResult<Self>
fn from_string( script: String, options: ParseOptions, source: SourceId, offset: Option<u32> ) -> ParseResult<Self>
From string, with default impl to call abstract method from_reader
source§fn to_string(&self, options: &ToStringOptions) -> String
fn to_string(&self, options: &ToStringOptions) -> String
Returns structure as valid string
source§impl<T: Clone + ExpressionOrStatementPosition> Clone for ClassDeclaration<T>where
T::Name: Clone,
impl<T: Clone + ExpressionOrStatementPosition> Clone for ClassDeclaration<T>where T::Name: Clone,
source§fn clone(&self) -> ClassDeclaration<T>
fn clone(&self) -> ClassDeclaration<T>
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<T: Debug + ExpressionOrStatementPosition> Debug for ClassDeclaration<T>where
T::Name: Debug,
impl<T: Debug + ExpressionOrStatementPosition> Debug for ClassDeclaration<T>where T::Name: Debug,
source§impl<T: ExpressionOrStatementPosition> GetFieldByType<BaseSpan<()>> for ClassDeclaration<T>
impl<T: ExpressionOrStatementPosition> GetFieldByType<BaseSpan<()>> for ClassDeclaration<T>
source§impl<T: PartialEq + ExpressionOrStatementPosition> PartialEq for ClassDeclaration<T>where
T::Name: PartialEq,
impl<T: PartialEq + ExpressionOrStatementPosition> PartialEq for ClassDeclaration<T>where T::Name: PartialEq,
source§fn eq(&self, other: &ClassDeclaration<T>) -> bool
fn eq(&self, other: &ClassDeclaration<T>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl<T: ExpressionOrStatementPosition> SelfRustTokenize for ClassDeclaration<T>where
T::Name: SelfRustTokenize,
impl<T: ExpressionOrStatementPosition> SelfRustTokenize for ClassDeclaration<T>where T::Name: SelfRustTokenize,
fn append_to_token_stream(&self, token_stream: &mut TokenStream)
source§fn to_tokens(&self) -> TokenStream
fn to_tokens(&self) -> TokenStream
Returns the tokens used to construct self
source§impl<T: ExpressionOrStatementPosition> Serialize for ClassDeclaration<T>where
T::Name: Serialize,
impl<T: ExpressionOrStatementPosition> Serialize for ClassDeclaration<T>where T::Name: Serialize,
source§impl<T: ExpressionOrStatementPosition> Visitable for ClassDeclaration<T>
impl<T: ExpressionOrStatementPosition> Visitable for ClassDeclaration<T>
fn visit<TData>( &self, _visitors: &mut (impl VisitorReceiver<TData> + ?Sized), _data: &mut TData, _options: &VisitSettings, _chain: &mut Annex<'_, Chain> )
fn visit_mut<TData>( &mut self, _visitors: &mut (impl VisitorMutReceiver<TData> + ?Sized), _data: &mut TData, _options: &VisitSettings, _chain: &mut Annex<'_, Chain> )
impl<T: Eq + ExpressionOrStatementPosition> Eq for ClassDeclaration<T>where T::Name: Eq,
impl<T: ExpressionOrStatementPosition> StructuralEq for ClassDeclaration<T>
impl<T: ExpressionOrStatementPosition> StructuralPartialEq for ClassDeclaration<T>
Auto Trait Implementations§
impl<T> RefUnwindSafe for ClassDeclaration<T>where <T as ExpressionOrStatementPosition>::Name: RefUnwindSafe,
impl<T> Send for ClassDeclaration<T>
impl<T> Sync for ClassDeclaration<T>
impl<T> Unpin for ClassDeclaration<T>where <T as ExpressionOrStatementPosition>::Name: Unpin,
impl<T> UnwindSafe for ClassDeclaration<T>where <T as ExpressionOrStatementPosition>::Name: UnwindSafe,
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