pub struct GrammarDeclarations {
pub matching: Option<String>,
pub settling: Option<Vec<String>>,
pub imports: Vec<String>,
pub modes: Vec<String>,
pub extras: Vec<GrammarExpr>,
pub conflicts: Vec<Vec<String>>,
pub precedences: Vec<Vec<PrecedenceEntry>>,
pub macros: Vec<GrammarMacro>,
pub scanners: Vec<GrammarScanner>,
}Expand description
The grammar-level declarations of the feature union.
Fields§
§matching: Option<String>generalized, peg or longest, when given.
settling: Option<Vec<String>>The settling steps (see SETTLING_STEPS), when given.
imports: Vec<String>Names of grammars this one inherits from.
modes: Vec<String>The lexer modes beyond default.
extras: Vec<GrammarExpr>Trivia expressions allowed between any two tokens.
conflicts: Vec<Vec<String>>Groups of rule names whose ambiguity is expected.
precedences: Vec<Vec<PrecedenceEntry>>Orders of named precedences and rules, the earlier entry higher.
macros: Vec<GrammarMacro>Macro declarations.
scanners: Vec<GrammarScanner>External scanner declarations.
Implementations§
Trait Implementations§
Source§impl Clone for GrammarDeclarations
impl Clone for GrammarDeclarations
Source§fn clone(&self) -> GrammarDeclarations
fn clone(&self) -> GrammarDeclarations
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for GrammarDeclarations
impl Debug for GrammarDeclarations
Source§impl Default for GrammarDeclarations
impl Default for GrammarDeclarations
Source§fn default() -> GrammarDeclarations
fn default() -> GrammarDeclarations
Returns the “default value” for a type. Read more
impl Eq for GrammarDeclarations
Source§impl PartialEq for GrammarDeclarations
impl PartialEq for GrammarDeclarations
impl StructuralPartialEq for GrammarDeclarations
Auto Trait Implementations§
impl Freeze for GrammarDeclarations
impl RefUnwindSafe for GrammarDeclarations
impl Send for GrammarDeclarations
impl Sync for GrammarDeclarations
impl Unpin for GrammarDeclarations
impl UnsafeUnpin for GrammarDeclarations
impl UnwindSafe for GrammarDeclarations
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.