Skip to main content

TokenType

Enum TokenType 

Source
pub enum TokenType {
Show 39 variants Division, RegexMatch, Substitution, Transliteration, QuoteRegex, StringLiteral, QuoteSingle, QuoteDouble, QuoteWords, QuoteCommand, InterpolatedString(Vec<StringPart>), HeredocStart, HeredocBody(Arc<str>), FormatBody(Arc<str>), Version(Arc<str>), Pod, DataMarker(Arc<str>), DataBody(Arc<str>), UnknownRest, Identifier(Arc<str>), Number(Arc<str>), Operator(Arc<str>), Keyword(Arc<str>), LeftParen, RightParen, LeftBracket, RightBracket, LeftBrace, RightBrace, Semicolon, Comma, Colon, Arrow, FatComma, Whitespace, Newline, Comment(Arc<str>), EOF, Error(Arc<str>),
}
Expand description

Token types for Perl

Variants§

§

Division

Division operator: /

§

RegexMatch

Regex match: m// or //

§

Substitution

Substitution: s///

§

Transliteration

Transliteration: tr/// or y///

§

QuoteRegex

Quote regex: qr//

§

StringLiteral

String literal: “string” or ‘string’

§

QuoteSingle

Single quote: q//

§

QuoteDouble

Double quote: qq//

§

QuoteWords

Quote words: qw//

§

QuoteCommand

Quote command: qx// or backticks

§

InterpolatedString(Vec<StringPart>)

String with interpolated parts

§

HeredocStart

Heredoc start: <<EOF or <<‘EOF’

§

HeredocBody(Arc<str>)

Heredoc body content

§

FormatBody(Arc<str>)

Format body content

§

Version(Arc<str>)

Version string: v5.32.0

§

Pod

POD documentation block

§

DataMarker(Arc<str>)

Data section marker: DATA or END

§

DataBody(Arc<str>)

Data section body content

§

UnknownRest

Unknown rest of input (used when budget exceeded)

§

Identifier(Arc<str>)

Identifier or variable name

§

Number(Arc<str>)

Numeric literal

§

Operator(Arc<str>)

Operator

§

Keyword(Arc<str>)

Keyword

§

LeftParen

Left parenthesis: (

§

RightParen

Right parenthesis: )

§

LeftBracket

Left bracket: [

§

RightBracket

Right bracket: ]

§

LeftBrace

Left brace: {

§

RightBrace

Right brace: }

§

Semicolon

Semicolon: ;

§

Comma

Comma: ,

§

Colon

Colon: :

§

Arrow

Arrow: ->

§

FatComma

Fat comma: =>

§

Whitespace

Whitespace (usually not returned)

§

Newline

Newline character

§

Comment(Arc<str>)

Comment text

§

EOF

End of file

§

Error(Arc<str>)

Error token for invalid input

Trait Implementations§

Source§

impl Clone for TokenType

Source§

fn clone(&self) -> TokenType

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 TokenType

Source§

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

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

impl PartialEq for TokenType

Source§

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

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