pub struct LanguageSupport {Show 13 fields
pub schema_version: u32,
pub name: &'static str,
pub aliases: &'static [&'static str],
pub version: &'static str,
pub edition: &'static str,
pub extensions: &'static [&'static str],
pub source_bytes: RepresentationLevel,
pub concrete_syntax: RepresentationLevel,
pub binding_resolution: RepresentationLevel,
pub type_elaboration: RepresentationLevel,
pub dynamic_extensions: RepresentationLevel,
pub proof_syntax: RepresentationLevel,
pub emitter: &'static str,
}Expand description
Immutable support declaration for a registered language frontend and emitter.
Fields§
§schema_version: u32Contract schema revision.
name: &'static strCanonical language name.
aliases: &'static [&'static str]Case-insensitive parser aliases.
version: &'static strExact target language release.
edition: &'static strLanguage edition or surface dialect.
extensions: &'static [&'static str]Registered file extensions.
source_bytes: RepresentationLevelOriginal-source preservation level.
concrete_syntax: RepresentationLevelParser structure level.
binding_resolution: RepresentationLevelName/scope resolution level.
type_elaboration: RepresentationLevelType or proof elaboration level.
dynamic_extensions: RepresentationLevelHandling of macros, notation, attributes, and plugins.
proof_syntax: RepresentationLevelProof/tactic representation level.
emitter: &'static strRegistered emitter description.
Trait Implementations§
Source§impl Clone for LanguageSupport
impl Clone for LanguageSupport
Source§fn clone(&self) -> LanguageSupport
fn clone(&self) -> LanguageSupport
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 moreimpl Copy for LanguageSupport
Source§impl Debug for LanguageSupport
impl Debug for LanguageSupport
impl Eq for LanguageSupport
Source§impl PartialEq for LanguageSupport
impl PartialEq for LanguageSupport
impl StructuralPartialEq for LanguageSupport
Auto Trait Implementations§
impl Freeze for LanguageSupport
impl RefUnwindSafe for LanguageSupport
impl Send for LanguageSupport
impl Sync for LanguageSupport
impl Unpin for LanguageSupport
impl UnsafeUnpin for LanguageSupport
impl UnwindSafe for LanguageSupport
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.