pub struct SemanticTranslation {
pub entry: Option<String>,
pub observation_procedure: &'static str,
pub encodings: Vec<Encoding>,
pub assumptions: Vec<Assumption>,
pub obligations: Vec<TranslationObligation>,
pub mappings: Vec<Mapping>,
pub runtime_dependencies: Vec<String>,
pub provenance: TranslationProvenance,
}Expand description
The record of one semantic translation.
Fields§
§entry: Option<String>The target’s entry point, when the source has a main program.
observation_procedure: &'static strHow the target’s observations are made.
encodings: Vec<Encoding>Representation choices for constructs without a direct target equivalent.
assumptions: Vec<Assumption>Assumptions, with the program-specific details.
obligations: Vec<TranslationObligation>Source theorems and assertions and how the target discharges them.
mappings: Vec<Mapping>Where each source declaration went, with its source span in UTF-16 code units.
runtime_dependencies: Vec<String>Libraries and host features the emitted program needs.
provenance: TranslationProvenanceWhere the translation came from.
Trait Implementations§
Source§impl Clone for SemanticTranslation
impl Clone for SemanticTranslation
Source§fn clone(&self) -> SemanticTranslation
fn clone(&self) -> SemanticTranslation
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 SemanticTranslation
impl Debug for SemanticTranslation
impl Eq for SemanticTranslation
Source§impl PartialEq for SemanticTranslation
impl PartialEq for SemanticTranslation
impl StructuralPartialEq for SemanticTranslation
Auto Trait Implementations§
impl Freeze for SemanticTranslation
impl RefUnwindSafe for SemanticTranslation
impl Send for SemanticTranslation
impl Sync for SemanticTranslation
impl Unpin for SemanticTranslation
impl UnsafeUnpin for SemanticTranslation
impl UnwindSafe for SemanticTranslation
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.