SyntaxKind

Enum SyntaxKind 

Source
pub enum SyntaxKind {
Show 210 variants SEMI, COMMA, L_PAREN, R_PAREN, L_CURLY, R_CURLY, L_BRACK, R_BRACK, L_ANGLE, R_ANGLE, AT, POUND, TILDE, QUESTION, DOLLAR, AMP, PIPE, PLUS, STAR, SLASH, CARET, PERCENT, DOT, DOTDOT, DOTDOTDOT, DOTDOTEQ, COLON, COLONCOLON, EQ, EQEQ, FAT_ARROW, EXCL, NEQ, MINUS, THIN_ARROW, LTEQ, GTEQ, PLUSEQ, MINUSEQ, PIPEEQ, AMPEQ, CARETEQ, SLASHEQ, STAREQ, AMPAMP, PIPEPIPE, SHL, SHR, SHLEQ, SHREQ, USE_KW, FN_KW, STRUCT_KW, ENUM_KW, TRAIT_KW, IMPL_KW, DYN_KW, TRUE_KW, FALSE_KW, AS_KW, EXTERN_KW, CRATE_KW, MOD_KW, PUB_KW, SELF_KW, SUPER_KW, IN_KW, WHERE_KW, FOR_KW, LOOP_KW, WHILE_KW, CONTINUE_KW, BREAK_KW, IF_KW, ELSE_KW, MATCH_KW, CONST_KW, STATIC_KW, MUT_KW, UNSAFE_KW, TYPE_KW, REF_KW, LET_KW, MOVE_KW, RETURN_KW, AUTO_KW, DEFAULT_KW, UNION_KW, ERROR, IDENT, UNDERSCORE, WHITESPACE, INT_NUMBER, FLOAT_NUMBER, LIFETIME, CHAR, BYTE, STRING, RAW_STRING, BYTE_STRING, RAW_BYTE_STRING, COMMENT, SHEBANG, ROOT, STRUCT_DEF, ENUM_DEF, FN_DEF, RET_TYPE, EXTERN_CRATE_ITEM, MODULE, USE_ITEM, STATIC_DEF, CONST_DEF, TRAIT_DEF, IMPL_ITEM, TYPE_DEF, MACRO_CALL, TOKEN_TREE, PAREN_TYPE, TUPLE_TYPE, NEVER_TYPE, PATH_TYPE, POINTER_TYPE, ARRAY_TYPE, SLICE_TYPE, REFERENCE_TYPE, PLACEHOLDER_TYPE, FN_POINTER_TYPE, FOR_TYPE, IMPL_TRAIT_TYPE, DYN_TRAIT_TYPE, REF_PAT, BIND_PAT, PLACEHOLDER_PAT, PATH_PAT, STRUCT_PAT, FIELD_PAT_LIST, TUPLE_STRUCT_PAT, TUPLE_PAT, SLICE_PAT, RANGE_PAT, TUPLE_EXPR, ARRAY_EXPR, PAREN_EXPR, PATH_EXPR, LAMBDA_EXPR, IF_EXPR, WHILE_EXPR, CONDITION, LOOP_EXPR, FOR_EXPR, CONTINUE_EXPR, BREAK_EXPR, LABEL, BLOCK_EXPR, RETURN_EXPR, MATCH_EXPR, MATCH_ARM_LIST, MATCH_ARM, MATCH_GUARD, STRUCT_LIT, NAMED_FIELD_LIST, NAMED_FIELD, CALL_EXPR, INDEX_EXPR, METHOD_CALL_EXPR, FIELD_EXPR, TRY_EXPR, CAST_EXPR, REF_EXPR, PREFIX_EXPR, RANGE_EXPR, BIN_EXPR, BLOCK, EXTERN_BLOCK, EXTERN_ITEM_LIST, ENUM_VARIANT, NAMED_FIELD_DEF_LIST, NAMED_FIELD_DEF, POS_FIELD_LIST, POS_FIELD, ENUM_VARIANT_LIST, ITEM_LIST, ATTR, META_ITEM, USE_TREE, USE_TREE_LIST, PATH, PATH_SEGMENT, LITERAL, ALIAS, VISIBILITY, WHERE_CLAUSE, WHERE_PRED, ABI, NAME, NAME_REF, LET_STMT, EXPR_STMT, TYPE_PARAM_LIST, LIFETIME_PARAM, TYPE_PARAM, TYPE_ARG_LIST, LIFETIME_ARG, TYPE_ARG, ASSOC_TYPE_ARG, PARAM_LIST, PARAM, SELF_PARAM, ARG_LIST, // some variants omitted
}
Expand description

The kind of syntax node, e.g. IDENT, USE_KW, or STRUCT_DEF.

Variants§

§

SEMI

§

COMMA

§

L_PAREN

§

R_PAREN

§

L_CURLY

§

R_CURLY

§

L_BRACK

§

R_BRACK

§

L_ANGLE

§

R_ANGLE

§

AT

§

POUND

§

TILDE

§

QUESTION

§

DOLLAR

§

AMP

§

PIPE

§

PLUS

§

STAR

§

SLASH

§

CARET

§

PERCENT

§

DOT

§

DOTDOT

§

DOTDOTDOT

§

DOTDOTEQ

§

COLON

§

COLONCOLON

§

EQ

§

EQEQ

§

FAT_ARROW

§

EXCL

§

NEQ

§

MINUS

§

THIN_ARROW

§

LTEQ

§

GTEQ

§

PLUSEQ

§

MINUSEQ

§

PIPEEQ

§

AMPEQ

§

CARETEQ

§

SLASHEQ

§

STAREQ

§

AMPAMP

§

PIPEPIPE

§

SHL

§

SHR

§

SHLEQ

§

SHREQ

§

USE_KW

§

FN_KW

§

STRUCT_KW

§

ENUM_KW

§

TRAIT_KW

§

IMPL_KW

§

DYN_KW

§

TRUE_KW

§

FALSE_KW

§

AS_KW

§

EXTERN_KW

§

CRATE_KW

§

MOD_KW

§

PUB_KW

§

SELF_KW

§

SUPER_KW

§

IN_KW

§

WHERE_KW

§

FOR_KW

§

LOOP_KW

§

WHILE_KW

§

CONTINUE_KW

§

BREAK_KW

§

IF_KW

§

ELSE_KW

§

MATCH_KW

§

CONST_KW

§

STATIC_KW

§

MUT_KW

§

UNSAFE_KW

§

TYPE_KW

§

REF_KW

§

LET_KW

§

MOVE_KW

§

RETURN_KW

§

AUTO_KW

§

DEFAULT_KW

§

UNION_KW

§

ERROR

§

IDENT

§

UNDERSCORE

§

WHITESPACE

§

INT_NUMBER

§

FLOAT_NUMBER

§

LIFETIME

§

CHAR

§

BYTE

§

STRING

§

RAW_STRING

§

BYTE_STRING

§

RAW_BYTE_STRING

§

COMMENT

§

SHEBANG

§

ROOT

§

STRUCT_DEF

§

ENUM_DEF

§

FN_DEF

§

RET_TYPE

§

EXTERN_CRATE_ITEM

§

MODULE

§

USE_ITEM

§

STATIC_DEF

§

CONST_DEF

§

TRAIT_DEF

§

IMPL_ITEM

§

TYPE_DEF

§

MACRO_CALL

§

TOKEN_TREE

§

PAREN_TYPE

§

TUPLE_TYPE

§

NEVER_TYPE

§

PATH_TYPE

§

POINTER_TYPE

§

ARRAY_TYPE

§

SLICE_TYPE

§

REFERENCE_TYPE

§

PLACEHOLDER_TYPE

§

FN_POINTER_TYPE

§

FOR_TYPE

§

IMPL_TRAIT_TYPE

§

DYN_TRAIT_TYPE

§

REF_PAT

§

BIND_PAT

§

PLACEHOLDER_PAT

§

PATH_PAT

§

STRUCT_PAT

§

FIELD_PAT_LIST

§

TUPLE_STRUCT_PAT

§

TUPLE_PAT

§

SLICE_PAT

§

RANGE_PAT

§

TUPLE_EXPR

§

ARRAY_EXPR

§

PAREN_EXPR

§

PATH_EXPR

§

LAMBDA_EXPR

§

IF_EXPR

§

WHILE_EXPR

§

CONDITION

§

LOOP_EXPR

§

FOR_EXPR

§

CONTINUE_EXPR

§

BREAK_EXPR

§

LABEL

§

BLOCK_EXPR

§

RETURN_EXPR

§

MATCH_EXPR

§

MATCH_ARM_LIST

§

MATCH_ARM

§

MATCH_GUARD

§

STRUCT_LIT

§

NAMED_FIELD_LIST

§

NAMED_FIELD

§

CALL_EXPR

§

INDEX_EXPR

§

METHOD_CALL_EXPR

§

FIELD_EXPR

§

TRY_EXPR

§

CAST_EXPR

§

REF_EXPR

§

PREFIX_EXPR

§

RANGE_EXPR

§

BIN_EXPR

§

BLOCK

§

EXTERN_BLOCK

§

EXTERN_ITEM_LIST

§

ENUM_VARIANT

§

NAMED_FIELD_DEF_LIST

§

NAMED_FIELD_DEF

§

POS_FIELD_LIST

§

POS_FIELD

§

ENUM_VARIANT_LIST

§

ITEM_LIST

§

ATTR

§

META_ITEM

§

USE_TREE

§

USE_TREE_LIST

§

PATH

§

PATH_SEGMENT

§

LITERAL

§

ALIAS

§

VISIBILITY

§

WHERE_CLAUSE

§

WHERE_PRED

§

ABI

§

NAME

§

NAME_REF

§

LET_STMT

§

EXPR_STMT

§

TYPE_PARAM_LIST

§

LIFETIME_PARAM

§

TYPE_PARAM

§

TYPE_ARG_LIST

§

LIFETIME_ARG

§

TYPE_ARG

§

ASSOC_TYPE_ARG

§

PARAM_LIST

§

PARAM

§

SELF_PARAM

§

ARG_LIST

Implementations§

Trait Implementations§

Source§

impl Clone for SyntaxKind

Source§

fn clone(&self) -> SyntaxKind

Returns a duplicate 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 SyntaxKind

Source§

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

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

impl Hash for SyntaxKind

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Ord for SyntaxKind

Source§

fn cmp(&self, other: &SyntaxKind) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for SyntaxKind

Source§

fn eq(&self, other: &SyntaxKind) -> 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 PartialOrd for SyntaxKind

Source§

fn partial_cmp(&self, other: &SyntaxKind) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl Copy for SyntaxKind

Source§

impl Eq for SyntaxKind

Source§

impl StructuralPartialEq for SyntaxKind

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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
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.
Source§

impl<T> Erased for T