Skip to main content

Keywords

Struct Keywords 

Source
pub struct Keywords { /* private fields */ }
Expand description

The keywords of one dialect, ready to be looked up by symbol.

Built once per compilation, against the interner that compilation will use, before any source has been read.

Implementations§

Source§

impl Keywords

Source

pub fn new(interner: &mut Interner, std: Std, gnu: bool) -> Keywords

Interns every keyword spelling and resolves which of them this dialect has.

§Panics

Panics if interner has already been given one of these spellings, since the symbols would no longer be one run and every lookup after that would be wrong. Build this first, immediately after the interner itself.

Source

pub fn get(&self, symbol: Symbol) -> Option<Keyword>

The keyword symbol is in this dialect, and None when it is an identifier.

Source

pub fn contains(&self, symbol: Symbol) -> bool

Whether symbol is a keyword in this dialect.

Source

pub fn len(&self) -> usize

How many spellings the table holds, active in this dialect or not.

Source

pub fn is_empty(&self) -> bool

Whether the table is empty, which it never is.

Trait Implementations§

Source§

impl Debug for Keywords

Source§

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

Formats the value using the given formatter. Read more

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> 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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

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.