Skip to main content

TokenSource

Trait TokenSource 

Source
pub trait TokenSource {
    // Required methods
    fn next_token(&mut self) -> Result<Token>;
    fn unget_token(&mut self, token: Token);
    fn interner(&self) -> &StringInterner;
    fn interner_mut(&mut self) -> &mut StringInterner;
    fn files(&self) -> &FileRegistry;

    // Provided method
    fn is_file_in_target(&self, file_id: FileId) -> bool { ... }
}
Expand description

トークンを供給するソースの抽象化

Required Methods§

Source

fn next_token(&mut self) -> Result<Token>

次のトークンを取得

Source

fn unget_token(&mut self, token: Token)

トークンを先読みバッファに戻す

Source

fn interner(&self) -> &StringInterner

StringInterner への参照を取得

Source

fn interner_mut(&mut self) -> &mut StringInterner

StringInterner への可変参照を取得

Source

fn files(&self) -> &FileRegistry

FileRegistry への参照を取得

Provided Methods§

Source

fn is_file_in_target(&self, file_id: FileId) -> bool

指定されたファイルがターゲットディレクトリ内かどうかを判定 デフォルト実装は常に false を返す(TokenSlice など)

Implementors§

Source§

impl TokenSource for Preprocessor

TokenSource trait の実装

Parser がプリプロセッサをトークンソースとして使用できるようにする

Source§

impl TokenSource for TokenSlice

Source§

impl<'a> TokenSource for TokenSliceRef<'a>