[−][src]Struct ascesis::grammar::Grammar
Methods
impl Grammar
[src]
pub fn new() -> Self
[src]
pub fn from_bnf(bnf: Syntax) -> Self
[src]
pub fn of_ascesis() -> Self
[src]
pub fn with_symbols<I, J>(self, terminals: I, nonterminals: J) -> Self where
I: IntoIterator<Item = String>,
J: IntoIterator<Item = String>,
[src]
I: IntoIterator<Item = String>,
J: IntoIterator<Item = String>,
pub fn add_production(&mut self, lhs: SymbolID, rhs: Vec<SymbolID>)
[src]
pub fn terminals(&self) -> Take<Iter<String>>
[src]
pub fn terminal_ids(&self) -> Range<SymbolID>
[src]
pub fn is_terminal(&self, symbol_id: SymbolID) -> bool
[src]
pub fn get_terminal(&self, symbol_id: SymbolID) -> Option<&str>
[src]
pub fn nonterminal_ids(&self) -> Range<SymbolID>
[src]
pub fn id_of_nonterminal<S: AsRef<str>>(&self, name: S) -> Option<SymbolID>
[src]
pub fn is_nonterminal(&self, symbol_id: SymbolID) -> bool
[src]
pub fn get_nonterminal(&self, symbol_id: SymbolID) -> Option<&str>
[src]
pub fn len(&self) -> usize
[src]
pub fn is_empty(&self) -> bool
[src]
pub fn iter(&self) -> Iter<Production>
[src]
pub fn get(&self, prod_id: ProductionID) -> Option<&Production>
[src]
pub fn get_as_string(&self, prod_id: ProductionID) -> Option<String>
[src]
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Grammar
impl Send for Grammar
impl Sync for Grammar
impl Unpin for Grammar
impl UnwindSafe for Grammar
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<Reference, Outer, OuterFieldType, Inner> HasPart<Nested<Outer, Inner>> for Reference where
Inner: Part,
Outer: Part<PartType = Field<OuterFieldType>>,
OuterFieldType: HasPart<Inner, RawTarget = OuterFieldType> + PartialRefTarget + ?Sized,
Reference: HasPart<Outer> + ?Sized,
Inner: Part,
Outer: Part<PartType = Field<OuterFieldType>>,
OuterFieldType: HasPart<Inner, RawTarget = OuterFieldType> + PartialRefTarget + ?Sized,
Reference: HasPart<Outer> + ?Sized,
unsafe fn part_ptr(
ptr: *const <Reference as PartialRefTarget>::RawTarget
) -> <<Inner as Part>::PartType as PartType>::Ptr
ptr: *const <Reference as PartialRefTarget>::RawTarget
) -> <<Inner as Part>::PartType as PartType>::Ptr
unsafe fn part_ptr_mut(
ptr: *mut <Reference as PartialRefTarget>::RawTarget
) -> <<Inner as Part>::PartType as PartType>::PtrMut
ptr: *mut <Reference as PartialRefTarget>::RawTarget
) -> <<Inner as Part>::PartType as PartType>::PtrMut
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,