Struct Unit

Source
pub struct Unit<S = DefaultStorage> { /* private fields */ }
Expand description

Instructions and debug info from a single compilation.

See rune::prepare for more.

Implementations§

Source§

impl Unit

Source

pub fn emit_instructions<O>( &self, out: &mut O, sources: &Sources, without_source: bool, ) -> Result<()>
where O: WriteColor,

Available on crate feature emit only.

Dump instructions in a human readable manner.

Source§

impl<S> Unit<S>

Source

pub fn from_parts(data: Logic<S>, debug: Option<DebugInfo>) -> Result<Self>

Constructs a new unit from a pair of data and debug info.

Source

pub fn logic(&self) -> &Logic<S>

Access unit data.

Source

pub fn debug_info(&self) -> Option<&DebugInfo>

Access debug information for the given location if it is available.

Trait Implementations§

Source§

impl<S: Debug> Debug for Unit<S>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'__de, S, __A> Decode<'__de, Text, __A> for Unit<S>
where __A: Allocator, S: Decode<'__de, Text, __A>,

Source§

const IS_BITWISE_DECODE: bool = false

Whether the type is packed. Packed types can be bitwise copied if the representation of the serialization format is identical to the memory layout of the type. Read more
Source§

fn decode<T0>(_1: T0) -> Result<Self, <T0 as Decoder<'__de>>::Error>
where T0: Decoder<'__de, Mode = Text, Allocator = __A>,

Decode the current value.
Source§

impl<'de, S, A> Decode<'de, Binary, A> for Unit<S>
where A: Allocator, S: Encode<Binary> + Decode<'de, Binary, A>,

Source§

const IS_BITWISE_DECODE: bool = false

Whether the type is packed. Packed types can be bitwise copied if the representation of the serialization format is identical to the memory layout of the type. Read more
Source§

fn decode<T0>(_1: T0) -> Result<Self, <T0 as Decoder<'de>>::Error>
where T0: Decoder<'de, Mode = Binary, Allocator = A>,

Decode the current value.
Source§

impl<S: Default> Default for Unit<S>

Source§

fn default() -> Unit<S>

Returns the “default value” for a type. Read more
Source§

impl<'de, S> Deserialize<'de> for Unit<S>

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl<S> Encode<Binary> for Unit<S>
where S: Encode<Binary>,

Source§

const IS_BITWISE_ENCODE: bool = false

Whether the type is packed. Packed types can be bitwise copied if the representation of the serialization format is identical to the memory layout of the type. Read more
Source§

type Encode = Unit<S>

The underlying type being encoded. Read more
Source§

fn encode<T0>(&self, _0: T0) -> Result<(), <T0 as Encoder>::Error>
where T0: Encoder<Mode = Binary>,

Encode the given output.
Source§

fn size_hint(&self) -> Option<usize>

The number of fields in the type.
Source§

fn as_encode(&self) -> &Self::Encode

Coerce into the underlying value being encoded.
Source§

impl<S> Encode<Text> for Unit<S>
where S: Encode<Text>,

Source§

const IS_BITWISE_ENCODE: bool = false

Whether the type is packed. Packed types can be bitwise copied if the representation of the serialization format is identical to the memory layout of the type. Read more
Source§

type Encode = Unit<S>

The underlying type being encoded. Read more
Source§

fn encode<T0>(&self, _0: T0) -> Result<(), <T0 as Encoder>::Error>
where T0: Encoder<Mode = Text>,

Encode the given output.
Source§

fn size_hint(&self) -> Option<usize>

The number of fields in the type.
Source§

fn as_encode(&self) -> &Self::Encode

Coerce into the underlying value being encoded.
Source§

impl<S> Serialize for Unit<S>

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl<S> TryClone for Unit<S>
where S: TryClone,

Source§

fn try_clone(&self) -> Result<Self>

Try to clone the current value, raising an allocation error if it’s unsuccessful.
Source§

fn try_clone_from(&mut self, source: &Self) -> Result<(), Error>

Performs copy-assignment from source. Read more

Auto Trait Implementations§

§

impl<S> Freeze for Unit<S>
where S: Freeze,

§

impl<S> RefUnwindSafe for Unit<S>
where S: RefUnwindSafe,

§

impl<S> Send for Unit<S>
where S: Send,

§

impl<S> Sync for Unit<S>
where S: Sync,

§

impl<S> Unpin for Unit<S>
where S: Unpin,

§

impl<S> UnwindSafe for Unit<S>
where S: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> TryToOwned for T
where T: TryClone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn try_to_owned(&self) -> Result<T, Error>

Creates owned data from borrowed data, usually by cloning. Read more
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<M, D, A> DecodeOwned<M, A> for D
where D: for<'de> Decode<'de, M, A>, A: Allocator,

Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T