Token

Enum Token 

Source
pub enum Token {
Show 36 variants Word(Word), Arrow, Hash, At, Dot, DotDotDot, Bang, LParen, RParen, LBracket, RBracket, LBrace, RBrace, Semi, Comma, BackQuote, Template { raw: Atom, cooked: LexResult<Atom>, }, Colon, BinOp(BinOpToken), AssignOp(AssignOp), DollarLBrace, QuestionMark, PlusPlus, MinusMinus, Tilde, Str { value: Atom, raw: Atom, }, Regex(Atom, Atom), Num { value: f64, raw: Atom, }, BigInt { value: Box<BigInt>, raw: Atom, }, JSXName { name: Atom, }, JSXText { value: Atom, raw: Atom, }, JSXTagStart, JSXTagEnd, Shebang(Atom), Error(Error), Eof,
}

Variants§

§

Word(Word)

Identifier, “null”, “true”, “false”.

Contains null and ``

§

Arrow

‘=>’

§

Hash

‘#’

§

At

‘@’

§

Dot

‘.’

§

DotDotDot

‘…’

§

Bang

‘!’

§

LParen

‘(’

§

RParen

‘)’

§

LBracket

[

§

RBracket

‘]’

§

LBrace

‘{’

§

RBrace

‘}’

§

Semi

‘;’

§

Comma

‘,’

§

BackQuote

‘`’

§

Template

Fields

§raw: Atom
§cooked: LexResult<Atom>
§

Colon

‘:’

§

BinOp(BinOpToken)

§

AssignOp(AssignOp)

§

DollarLBrace

‘${’

§

QuestionMark

‘?’

§

PlusPlus

++

§

MinusMinus

--

§

Tilde

~

§

Str

String literal. Span of this token contains quote.

Fields

§value: Atom
§raw: Atom
§

Regex(Atom, Atom)

Regexp literal.

§

Num

TODO: Make Num as enum and separate decimal, binary, ..etc

Fields

§value: f64
§raw: Atom
§

BigInt

Fields

§value: Box<BigInt>
§raw: Atom
§

JSXName

Fields

§name: Atom
§

JSXText

Fields

§value: Atom
§raw: Atom
§

JSXTagStart

§

JSXTagEnd

§

Shebang(Atom)

§

Error(Error)

§

Eof

Implementations§

Source§

impl Token

Source

pub fn kind(&self) -> TokenKind

Trait Implementations§

Source§

impl Clone for Token

Source§

fn clone(&self) -> Token

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 Token

Source§

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

This method is called only in the case of parsing failure.

Source§

impl PartialEq for Token

Source§

fn eq(&self, other: &Token) -> 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<'a, I: Tokens<TokenAndSpan>> TokenFactory<'a, TokenAndSpan, I> for Token

Source§

const ABSTRACT: Self

Source§

const ACCESSOR: Self

Source§

const ANY: Self

Source§

const ARROW: Self = Self::Arrow

Source§

const AS: Self

Source§

const ASSERT: Self

Source§

const ASSERTS: Self

Source§

const ASYNC: Self

Source§

const AT: Self = Self::At

Source§

const AWAIT: Self

Source§

const BACKQUOTE: Self = Self::BackQuote

Source§

const BANG: Self = Self::Bang

Source§

const BIGINT: Self

Source§

const BIT_AND: Self

Source§

const BIT_AND_EQ: Self

Source§

const BIT_OR: Self

Source§

const BIT_OR_EQ: Self

Source§

const BOOLEAN: Self

Source§

const BREAK: Self

Source§

const CASE: Self

Source§

const CATCH: Self

Source§

const CLASS: Self

Source§

const COLON: Self = Self::Colon

Source§

const COMMA: Self = Self::Comma

Source§

const CONST: Self

Source§

const CONTINUE: Self

Source§

const DEBUGGER: Self

Source§

const DECLARE: Self

Source§

const DEFAULT: Self

Source§

const DELETE: Self

Source§

const DIV: Self

Source§

const DIV_EQ: Self

Source§

const DO: Self

Source§

const DOLLAR_LBRACE: Self = Self::DollarLBrace

Source§

const DOT: Self = Self::Dot

Source§

const DOTDOTDOT: Self = Self::DotDotDot

Source§

const ELSE: Self

Source§

const ENUM: Self

Source§

const EOF: Self = Token::Eof

Source§

const EQUAL: Self

Source§

const EXP: Self

Source§

const EXPORT: Self

Source§

const EXP_EQ: Self

Source§

const EXTENDS: Self

Source§

const FALSE: Self

Source§

const FINALLY: Self

Source§

const FOR: Self

Source§

const FROM: Self

Source§

const FUNCTION: Self

Source§

const GET: Self

Source§

const GLOBAL: Self

Source§

const GREATER: Self

Source§

const GREATER_EQ: Self

Source§

const HASH: Self = Self::Hash

Source§

const IF: Self

Source§

const IMPLEMENTS: Self

Source§

const IMPORT: Self

Source§

const IN: Self

Source§

const INFER: Self

Source§

const INSTANCEOF: Self

Source§

const INTERFACE: Self

Source§

const INTRINSIC: Self

Source§

const IS: Self

Source§

const JSX_TAG_END: Self = Self::JSXTagEnd

Source§

const JSX_TAG_START: Self = Self::JSXTagStart

Source§

const KEYOF: Self

Source§

const LBRACE: Self = Self::LBrace

Source§

const LBRACKET: Self = Self::LBracket

Source§

const LESS: Self

Source§

const LESS_EQ: Self

Source§

const LET: Self

Source§

const LOGICAL_AND: Self

Source§

const LOGICAL_AND_EQ: Self

Source§

const LOGICAL_OR: Self

Source§

const LOGICAL_OR_EQ: Self

Source§

const LPAREN: Self = Self::LParen

Source§

const LSHIFT: Self

Source§

const LSHIFT_EQ: Self

Source§

const MINUS: Self

Source§

const MINUS_MINUS: Self = Self::MinusMinus

Source§

const MOD: Self

Source§

const MOD_EQ: Self

Source§

const MUL: Self

Source§

const MUL_EQ: Self

Source§

const NAMESPACE: Self

Source§

const NEVER: Self

Source§

const NEW: Self

Source§

const NULL: Self

Source§

const NULLISH_ASSIGN: Self

Source§

const NULLISH_COALESCING: Self

Source§

const NUMBER: Self

Source§

const OBJECT: Self

Source§

const OF: Self

Source§

const PACKAGE: Self

Source§

const PLUS: Self

Source§

const PLUS_PLUS: Self = Self::PlusPlus

Source§

const PRIVATE: Self

Source§

const PROTECTED: Self

Source§

const PUBLIC: Self

Source§

const QUESTION: Self = Token::QuestionMark

Source§

const RBRACE: Self = Self::RBrace

Source§

const RBRACKET: Self = Self::RBracket

Source§

const READONLY: Self

Source§

const REQUIRE: Self

Source§

const RETURN: Self

Source§

const RPAREN: Self = Self::RParen

Source§

const RSHIFT: Self

Source§

const RSHIFT_EQ: Self

Source§

const SATISFIES: Self

Source§

const SEMI: Self = Self::Semi

Source§

const SET: Self

Source§

const STATIC: Self

Source§

const STRING: Self

Source§

const SUPER: Self

Source§

const SWITCH: Self

Source§

const SYMBOL: Self

Source§

const TARGET: Self

Source§

const THIS: Self

Source§

const THROW: Self

Source§

const TILDE: Self = Self::Tilde

Source§

const TRUE: Self

Source§

const TRY: Self

Source§

const TYPE: Self

Source§

const TYPEOF: Self

Source§

const UNDEFINED: Self

Source§

const UNIQUE: Self

Source§

const UNKNOWN: Self

Source§

const USING: Self

Source§

const VAR: Self

Source§

const VOID: Self

Source§

const WHILE: Self

Source§

const WITH: Self

Source§

const YIELD: Self

Source§

const ZERO_FILL_RSHIFT: Self

Source§

const ZERO_FILL_RSHIFT_EQ: Self

Source§

type Buffer = Buffer<I>

Source§

type Lexer = Lexer<'a>

Source§

fn jsx_name(name: &'a str, lexer: &mut Lexer<'a>) -> Self

Source§

fn is_jsx_name(&self) -> bool

Source§

fn take_jsx_name(self, _: &mut Self::Buffer) -> Atom

Source§

fn str(value: Atom, raw: Atom, _: &mut Lexer<'a>) -> Self

Source§

fn template(cooked: LexResult<Atom>, raw: Atom, _: &mut Lexer<'a>) -> Self

Source§

fn regexp(content: Atom, flags: Atom, _: &mut Lexer<'a>) -> Self

Source§

fn num(value: f64, raw: Atom, _: &mut Lexer<'a>) -> Self

Source§

fn bigint(value: Box<BigIntValue>, raw: Atom, _: &mut Lexer<'a>) -> Self

Source§

fn unknown_ident(value: Atom, _: &mut Lexer<'a>) -> Self

Source§

fn is_word(&self) -> bool

Source§

fn is_reserved(&self, ctx: Context) -> bool

Source§

fn into_atom(self, _: &mut Lexer<'a>) -> Option<Atom>

Source§

fn is_error(&self) -> bool

Source§

fn take_error(self, _: &mut Self::Buffer) -> Error

Source§

fn is_str(&self) -> bool

Source§

fn is_str_raw_content(&self, content: &str, _: &Self::Buffer) -> bool

Source§

fn take_str(self, _: &mut Self::Buffer) -> (Atom, Atom)

Source§

fn is_num(&self) -> bool

Source§

fn take_num(self, _: &mut Self::Buffer) -> (f64, Atom)

Source§

fn is_bigint(&self) -> bool

Source§

fn take_bigint(self, _: &mut Self::Buffer) -> (Box<BigIntValue>, Atom)

Source§

fn take_word(self, _: &Self::Buffer) -> Option<Atom>

Source§

fn is_unknown_ident(&self) -> bool

Source§

fn take_unknown_ident(self, _: &mut Self::Buffer) -> Atom

Source§

fn take_unknown_ident_ref<'b>(&'b self, _: &'b Self::Buffer) -> &'b Atom

Source§

fn is_keyword(&self) -> bool

Source§

fn is_known_ident(&self) -> bool

Source§

fn take_known_ident(&self) -> Atom

Source§

fn is_regexp(&self) -> bool

Source§

fn is_template(&self) -> bool

Source§

fn take_template(self, _: &mut Self::Buffer) -> (LexResult<Atom>, Atom)

Source§

fn jsx_text(value: Atom, raw: Atom, _: &mut Self::Lexer) -> Self

Source§

fn is_jsx_text(&self) -> bool

Source§

fn take_jsx_text(self, _: &mut Self::Buffer) -> (Atom, Atom)

Source§

fn starts_expr(&self) -> bool

Source§

fn to_string(&self, _: &Self::Buffer) -> String

Source§

fn is_bin_op(&self) -> bool

Source§

fn as_assign_op(&self) -> Option<AssignOp>

Source§

fn as_bin_op(&self) -> Option<BinaryOp>

Source§

fn follows_keyword_let(&self) -> bool

Source§

fn is_assign_op(&self) -> bool

Source§

fn take_regexp(self, _: &mut Self::Buffer) -> (Atom, Atom)

Source§

fn shebang(value: Atom, _: &mut Self::Lexer) -> Self

Source§

fn is_shebang(&self) -> bool

Source§

fn take_shebang(self, _: &mut Self::Buffer) -> Atom

Source§

fn is_no_substitution_template_literal(&self) -> bool

Source§

fn is_template_head(&self) -> bool

Source§

fn is_less(&self) -> bool

Source§

fn is_less_eq(&self) -> bool

Source§

fn is_greater(&self) -> bool

Source§

fn is_colon(&self) -> bool

Source§

fn is_comma(&self) -> bool

Source§

fn is_equal(&self) -> bool

Source§

fn is_question(&self) -> bool

Source§

fn is_null(&self) -> bool

Source§

fn is_lshift(&self) -> bool

Source§

fn is_rshift(&self) -> bool

Source§

fn is_rshift_eq(&self) -> bool

Source§

fn is_greater_eq(&self) -> bool

Source§

fn is_true(&self) -> bool

Source§

fn is_false(&self) -> bool

Source§

fn is_enum(&self) -> bool

Source§

fn is_yield(&self) -> bool

Source§

fn is_let(&self) -> bool

Source§

fn is_var(&self) -> bool

Source§

fn is_static(&self) -> bool

Source§

fn is_extends(&self) -> bool

Source§

fn is_implements(&self) -> bool

Source§

fn is_interface(&self) -> bool

Source§

fn is_type(&self) -> bool

Source§

fn is_package(&self) -> bool

Source§

fn is_private(&self) -> bool

Source§

fn is_protected(&self) -> bool

Source§

fn is_public(&self) -> bool

Source§

fn is_readonly(&self) -> bool

Source§

fn is_await(&self) -> bool

Source§

fn is_break(&self) -> bool

Source§

fn is_continue(&self) -> bool

Source§

fn is_arrow(&self) -> bool

Source§

fn is_this(&self) -> bool

Source§

fn is_super(&self) -> bool

Source§

fn is_using(&self) -> bool

Source§

fn is_backquote(&self) -> bool

Source§

fn is_lparen(&self) -> bool

Source§

fn is_rparen(&self) -> bool

Source§

fn is_lbracket(&self) -> bool

Source§

fn is_rbracket(&self) -> bool

Source§

fn is_lbrace(&self) -> bool

Source§

fn is_rbrace(&self) -> bool

Source§

fn is_function(&self) -> bool

Source§

fn is_class(&self) -> bool

Source§

fn is_if(&self) -> bool

Source§

fn is_return(&self) -> bool

Source§

fn is_switch(&self) -> bool

Source§

fn is_throw(&self) -> bool

Source§

fn is_catch(&self) -> bool

Source§

fn is_finally(&self) -> bool

Source§

fn is_try(&self) -> bool

Source§

fn is_with(&self) -> bool

Source§

fn is_while(&self) -> bool

Source§

fn is_new(&self) -> bool

Source§

fn is_ident_ref(&self, ctx: Context) -> bool

Source§

fn is_import(&self) -> bool

Source§

fn is_export(&self) -> bool

Source§

fn is_dot(&self) -> bool

Source§

fn is_do(&self) -> bool

Source§

fn is_for(&self) -> bool

Source§

fn is_from(&self) -> bool

Source§

fn is_dotdotdot(&self) -> bool

Source§

fn is_plus(&self) -> bool

Source§

fn is_minus(&self) -> bool

Source§

fn is_bang(&self) -> bool

Source§

fn is_tilde(&self) -> bool

Source§

fn is_plus_plus(&self) -> bool

Source§

fn is_minus_minus(&self) -> bool

Source§

fn is_delete(&self) -> bool

Source§

fn is_typeof(&self) -> bool

Source§

fn is_of(&self) -> bool

Source§

fn is_void(&self) -> bool

Source§

fn is_hash(&self) -> bool

Source§

fn is_in(&self) -> bool

Source§

fn is_const(&self) -> bool

Source§

fn is_star(&self) -> bool

Source§

fn is_mod(&self) -> bool

Source§

fn is_semi(&self) -> bool

Source§

fn is_slash(&self) -> bool

Source§

fn is_slash_eq(&self) -> bool

Source§

fn is_jsx_tag_start(&self) -> bool

Source§

fn is_jsx_tag_end(&self) -> bool

Source§

fn is_asserts(&self) -> bool

Source§

fn is_is(&self) -> bool

Source§

fn is_as(&self) -> bool

Source§

fn is_satisfies(&self) -> bool

Source§

fn is_instanceof(&self) -> bool

Source§

fn is_async(&self) -> bool

Source§

fn is_case(&self) -> bool

Source§

fn is_default(&self) -> bool

Source§

fn is_debugger(&self) -> bool

Source§

fn is_bit_and(&self) -> bool

Source§

fn is_bit_or(&self) -> bool

Source§

fn is_exp(&self) -> bool

Source§

fn is_eof(&self) -> bool

Source§

impl StructuralPartialEq for Token

Auto Trait Implementations§

§

impl Freeze for Token

§

impl RefUnwindSafe for Token

§

impl Send for Token

§

impl Sync for Token

§

impl Unpin for Token

§

impl UnwindSafe for Token

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

Source§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
Source§

impl<T> FmtForward for T

Source§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
Source§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
Source§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where Self: LowerExp,

Causes self to use its LowerExp implementation when Debug-formatted.
Source§

fn fmt_lower_hex(self) -> FmtLowerHex<Self>
where Self: LowerHex,

Causes self to use its LowerHex implementation when Debug-formatted.
Source§

fn fmt_octal(self) -> FmtOctal<Self>
where Self: Octal,

Causes self to use its Octal implementation when Debug-formatted.
Source§

fn fmt_pointer(self) -> FmtPointer<Self>
where Self: Pointer,

Causes self to use its Pointer implementation when Debug-formatted.
Source§

fn fmt_upper_exp(self) -> FmtUpperExp<Self>
where Self: UpperExp,

Causes self to use its UpperExp implementation when Debug-formatted.
Source§

fn fmt_upper_hex(self) -> FmtUpperHex<Self>
where Self: UpperHex,

Causes self to use its UpperHex implementation when Debug-formatted.
Source§

fn fmt_list(self) -> FmtList<Self>
where &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> Pipe for T
where T: ?Sized,

Source§

fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
where Self: Sized,

Pipes by value. This is generally the method you want to use. Read more
Source§

fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
where R: 'a,

Borrows self and passes that borrow into the pipe function. Read more
Source§

fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
where R: 'a,

Mutably borrows self and passes that borrow into the pipe function. Read more
Source§

fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
where Self: Borrow<B>, B: 'a + ?Sized, R: 'a,

Borrows self, then passes self.borrow() into the pipe function. Read more
Source§

fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
where Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.borrow_mut() into the pipe function. Read more
Source§

fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
where Self: AsRef<U>, U: 'a + ?Sized, R: 'a,

Borrows self, then passes self.as_ref() into the pipe function.
Source§

fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
where Self: AsMut<U>, U: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.as_mut() into the pipe function.
Source§

fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
where Self: Deref<Target = T>, T: 'a + ?Sized, R: 'a,

Borrows self, then passes self.deref() into the pipe function.
Source§

fn pipe_deref_mut<'a, T, R>( &'a mut self, func: impl FnOnce(&'a mut T) -> R, ) -> R
where Self: DerefMut<Target = T> + Deref, T: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.deref_mut() into the pipe function.
Source§

impl<T> Tap for T

Source§

fn tap(self, func: impl FnOnce(&Self)) -> Self

Immutable access to a value. Read more
Source§

fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

Mutable access to a value. Read more
Source§

fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Immutable access to the Borrow<B> of a value. Read more
Source§

fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Mutable access to the BorrowMut<B> of a value. Read more
Source§

fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Immutable access to the AsRef<R> view of a value. Read more
Source§

fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Mutable access to the AsMut<R> view of a value. Read more
Source§

fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Immutable access to the Deref::Target of a value. Read more
Source§

fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Mutable access to the Deref::Target of a value. Read more
Source§

fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

Calls .tap() only in debug builds, and is erased in release builds.
Source§

fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

Calls .tap_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Calls .tap_borrow() only in debug builds, and is erased in release builds.
Source§

fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Calls .tap_borrow_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Calls .tap_ref() only in debug builds, and is erased in release builds.
Source§

fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Calls .tap_ref_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Calls .tap_deref() only in debug builds, and is erased in release builds.
Source§

fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Calls .tap_deref_mut() only in debug builds, and is erased in release builds.
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> TryConv for T

Source§

fn try_conv<T>(self) -> Result<T, Self::Error>
where Self: TryInto<T>,

Attempts to convert self into T using TryInto<T>. 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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T

Source§

impl<T> Send for T
where T: ?Sized,

Source§

impl<T> Sync for T
where T: ?Sized,

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 24 bytes

Size for each variant:

  • Word: 24 bytes
  • Arrow: 0 bytes
  • Hash: 0 bytes
  • At: 0 bytes
  • Dot: 0 bytes
  • DotDotDot: 0 bytes
  • Bang: 0 bytes
  • LParen: 0 bytes
  • RParen: 0 bytes
  • LBracket: 0 bytes
  • RBracket: 0 bytes
  • LBrace: 0 bytes
  • RBrace: 0 bytes
  • Semi: 0 bytes
  • Comma: 0 bytes
  • BackQuote: 0 bytes
  • Template: 24 bytes
  • Colon: 0 bytes
  • BinOp: 9 bytes
  • AssignOp: 9 bytes
  • DollarLBrace: 0 bytes
  • QuestionMark: 0 bytes
  • PlusPlus: 0 bytes
  • MinusMinus: 0 bytes
  • Tilde: 0 bytes
  • Str: 24 bytes
  • Regex: 24 bytes
  • Num: 24 bytes
  • BigInt: 24 bytes
  • JSXName: 16 bytes
  • JSXText: 24 bytes
  • JSXTagStart: 0 bytes
  • JSXTagEnd: 0 bytes
  • Shebang: 16 bytes
  • Error: 16 bytes
  • Eof: 0 bytes