[][src]Struct panini_logic::middle::ir::Ir

pub struct Ir {
    pub grammar: BinarizedGrammar,
    pub nulling_grammar: BinarizedGrammar,
    pub trivial_derivation: bool,
    pub rules: LowerRuleRewriteResult,
    pub type_map: BTreeMap<Path, BTreeSet<Type>>,
    pub maps: InternalExternalNameMap,
    pub attr_arguments: AttrArguments,
    pub lexer_layer: LexerLayer,
    pub trace: Trace,
    pub errors: Vec<TransformationError>,
}

Fields

grammar: BinarizedGrammarnulling_grammar: BinarizedGrammartrivial_derivation: boolrules: LowerRuleRewriteResulttype_map: BTreeMap<Path, BTreeSet<Type>>maps: InternalExternalNameMapattr_arguments: AttrArgumentslexer_layer: LexerLayertrace: Traceerrors: Vec<TransformationError>

Methods

impl Ir[src]

pub fn transform(stmts: Stmts) -> Result<Self, TransformationError>[src]

pub fn internalize(&self, symbol: Symbol) -> Option<Symbol>[src]

pub fn externalize(&self, symbol: Symbol) -> Symbol[src]

pub fn sym_of_external(&self, symbol: Symbol) -> Option<Sym>[src]

pub fn sym_map(&self) -> &SymMap[src]

Trait Implementations

impl From<IrMapped> for Ir[src]

Auto Trait Implementations

impl Send for Ir

impl Sync for Ir

impl Unpin for Ir

impl UnwindSafe for Ir

impl RefUnwindSafe for Ir

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<E> SpecializationError for E[src]

impl<T> Erased for T[src]

impl<T> MaybeResult<T> for T[src]

type Error = !

⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

impl<'a, T> Captures<'a> for T where
    T: ?Sized
[src]