[−][src]Enum loa::syntax::NodeKind
Variants
Module ::=
NamespaceDirective
ImportDirective*
ModuleDeclaration*
REPLLine ::=
REPLStatement+
REPLStatement ::=
REPLDirective |
LetBinding |
REPLExpression |
ImportDirective |
Declaration
REPLDirective ::=
COLON
Symbol
Expression
PERIOD?
REPLExpression ::=
Expression
PERIOD?
ModuleDeclaration ::=
Doc?
(Declaration | EXPORT_KEYWORD Declaration)
NamespaceDirective ::=
NAMESPACE_KEYWORD
QualifiedSymbol
PERIOD
Fields of NamespaceDirective
ImportDirective ::=
IMPORT_KEYWORD
QualifiedSymbol
(
AS_KEYWORD
Symbol
)?
PERIOD
Fields of ImportDirective
QualifiedSymbol ::=
Symbol
(
SLASH
Symbol
)*
Symbol(Token)Symbol ::=
SIMPLE_SYMBOL
Declaration ::=
Class
Class ::=
PARTIAL_KEYWORD?
CLASS_KEYWORD
Symbol
TypeParameterList?
(ClassBody | PERIOD)
Fields of Class
TypeParameterList ::=
OPEN_ANGLE
TypeParameter
(COMMA TypeParameter)*
CLOSE_ANGLE
Fields of TypeParameterList
TypeParameter ::=
Symbol
(IN_KEYWORD | OUT_KEYWORD | INOUT_KEYWORD)?
ClassBody ::=
OPEN_CURLY
ClassMember*
CLOSE_CURLY
ClassMember ::=
Method |
Initializer |
Variable |
IsDirective
Method ::=
(PUBLIC_KEYWORD | PRIVATE_KEYWORD)?
NATIVE_KEYWORD?
Signature
MethodBody?
PERIOD
Fields of Method
IsDirective ::=
IS_KEYWORD
TypeExpression
PERIOD
Variable ::=
(PUBLIC_KEYWORD | PRIVATE_KEYWORD)?
VAR_KEYWORD
TypeExpression?
Symbol
(EQUAL_SIGN Expression)?
PERIOD
Fields of Variable
Initializer ::=
(PUBLIC_KEYWORD | PRIVATE_KEYWORD)?
INIT_KEYWORD
MessagePattern
(FAT_ARROW KeywordPair<Expression>*)
PERIOD
Fields of Initializer
Signature ::=
TypeParameterList?
MessagePattern
ReturnType?
MessagePattern ::=
UnaryMessagePattern |
BinaryMessagePattern |
KeywordMessagePattern
UnaryMessagePattern ::=
Symbol
Fields of UnaryMessagePattern
symbol: IdBinaryMessagePattern ::=
Operator
ParameterPattern
Operator ::=
(ASTERISK | PLUS | SLASH | EQUAL_SIGN | OPEN_ANGLE | CLOSE_ANGLE)+
KeywordMessagePattern ::=
KeywordPair<ParameterPattern>+
KeywordPair<N> ::=
Symbol
COLON
N
ReturnType ::=
ARROW
TypeExpression
ParameterPattern ::=
TypeExpression |
Symbol |
(
TypeExpression
Symbol
)
TypeExpression ::=
ReferenceTypeExpression |
SelfTypeExpression |
Nothing |
SymbolTypeExpression
ReferenceTypeExpression ::=
Symbol
TypeArgumentList?
SelfTypeExpression(Token)SelfTypeExpression ::=
SELF_KEYWORD
SymbolTypeExpression ::=
SYMBOL_LITERAL
Nothing(Token)Nothing ::=
UNDERSCORE
TypeArgumentList ::=
OPEN_ANGLE
TypeExpression
(COMMA TypeExpression)*
CLOSE_ANGLE
Fields of TypeArgumentList
MethodBody ::=
FAT_ARROW
Expression
Expression ::=
ReferenceExpression |
MessageSendExpression |
SelfExpression |
StringExpression |
CharacterExpression |
IntegerExpression |
FloatExpression |
SymbolExpression |
CascadeExpression |
TupleExpression |
PanicExpression
ReferenceExpression ::=
Symbol
Fields of ReferenceExpression
symbol: IdCascadeExpression ::=
Expression
SEMI_COLON
TupleExpression ::=
OPEN_PAREN
Expression
CLOSE_PAREN
SelfExpression(Token)SelfExpression ::=
SELF_KEYWORD
StringExpression ::=
SIMPLE_STRING
CharacterExpression ::=
SIMPLE_CHARACTER
IntegerExpression ::=
SIMPLE_INTEGER
FloatExpression(Token, BigFraction)FloatExpression ::=
SIMPLE_FLOAT
SymbolExpression ::=
SYMBOL_LITERAL
MessageSendExpression ::=
Expression
Message
PanicExpression ::=
PANIC_KEYWORD
Expression
Message ::=
UnaryMessage |
BinaryMessage |
KeywordMessage
UnaryMessage ::=
Symbol
Fields of UnaryMessage
symbol: IdBinaryMessage ::=
Operator
Expression
KeywordMessage ::=
KeywordPair<Expression>+
LetExpression ::=
LetBinding
Expression
LetBinding ::=
LET_KEYWORD
TypeExpression?
Symbol
EQUAL_SIGN
Expression
Period
Fields of LetBinding
Doc ::=
DOC_LINE_MARKER
DocBlock*
DocBlock ::=
DocParagraphBlock
DocParagraphBlock ::=
DocElement+
DocElement ::=
DocTextElement |
DocItalicElement |
DocBoldElement |
DocLinkElement
DocTextElement ::=
DOC_TEXT+
DocItalicElement ::=
UNDERSCORE
DOC_TEXT+
UNDERSCORE
DocBoldElement ::=
ASTERISK
DOC_TEXT+
ASTERISK
DocLinkElement ::=
DocLinkText
DocLinkRef?
DocLinkText ::=
OPEN_BRACKET
DOC_TEXT+
CLOSE_BRACKET
DocLinkRef ::=
OPEN_PAREN
DOC_TEXT+
CLOSE_PAREN
Methods
impl NodeKind[src]
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for NodeKind
impl Send for NodeKind
impl Sync for NodeKind
impl Unpin for NodeKind
impl UnwindSafe for NodeKind
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T[src]
fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,