pub struct Module { /* private fields */ }
Expand description
The abstract syntax tree for a single Miden Assembly module.
All module kinds share this AST representation, as they are largely identical. However, the ModuleKind dictates how the parsed module is semantically analyzed and validated.
Implementations§
Source§impl Module
Constants
impl Module
Constants
Sourcepub const FILE_EXTENSION: &'static str = "masm"
pub const FILE_EXTENSION: &'static str = "masm"
File extension for a Assembly Module.
Sourcepub const ROOT_FILENAME: &'static str = "mod.masm"
pub const ROOT_FILENAME: &'static str = "mod.masm"
File name of the root module.
Source§impl Module
Construction
impl Module
Construction
Sourcepub fn new(kind: ModuleKind, path: LibraryPath) -> Module
pub fn new(kind: ModuleKind, path: LibraryPath) -> Module
Creates a new Module with the specified kind
and fully-qualified path, e.g.
std::math::u64
.
Sourcepub fn new_kernel() -> Module
pub fn new_kernel() -> Module
An alias for creating the default, but empty, #kernel
Module.
Sourcepub fn new_executable() -> Module
pub fn new_executable() -> Module
An alias for creating the default, but empty, #exec
Module.
Sourcepub fn with_span(self, span: SourceSpan) -> Module
pub fn with_span(self, span: SourceSpan) -> Module
Specifies the source span in the source file in which this module was defined, that covers the full definition of this module.
Sourcepub fn set_path(&mut self, path: LibraryPath)
pub fn set_path(&mut self, path: LibraryPath)
Sets the LibraryPath for this module
Sourcepub fn set_namespace(&mut self, ns: LibraryNamespace)
pub fn set_namespace(&mut self, ns: LibraryNamespace)
Sets the LibraryNamespace for this module
Sourcepub fn set_span(&mut self, span: SourceSpan)
pub fn set_span(&mut self, span: SourceSpan)
Like Module::with_span, but does not require ownership of the Module.
Sourcepub fn define_procedure(
&mut self,
export: Export,
) -> Result<(), SemanticAnalysisError>
pub fn define_procedure( &mut self, export: Export, ) -> Result<(), SemanticAnalysisError>
Defines a procedure, raising an error if the procedure is invalid, or conflicts with a previous definition
Sourcepub fn define_import(
&mut self,
import: Import,
) -> Result<(), SemanticAnalysisError>
pub fn define_import( &mut self, import: Import, ) -> Result<(), SemanticAnalysisError>
Defines an import, raising an error if the import is invalid, or conflicts with a previous definition.
Source§impl Module
Parsing
impl Module
Parsing
Sourcepub fn parse(
name: LibraryPath,
kind: ModuleKind,
source_file: Arc<SourceFile>,
) -> Result<Box<Module>, Report>
pub fn parse( name: LibraryPath, kind: ModuleKind, source_file: Arc<SourceFile>, ) -> Result<Box<Module>, Report>
Parse a Module, name
, of the given ModuleKind, from source_file
.
Sourcepub fn parser(kind: ModuleKind) -> ModuleParser
pub fn parser(kind: ModuleKind) -> ModuleParser
Get a ModuleParser for parsing modules of the provided ModuleKind
Source§impl Module
Metadata
impl Module
Metadata
Sourcepub fn name(&self) -> &str
pub fn name(&self) -> &str
Get the name of this specific module, i.e. the last component of the LibraryPath that
represents the fully-qualified name of the module, e.g. u64
in std::math::u64
Sourcepub fn path(&self) -> &LibraryPath
pub fn path(&self) -> &LibraryPath
Get the fully-qualified name of this module, e.g. std::math::u64
Sourcepub fn namespace(&self) -> &LibraryNamespace
pub fn namespace(&self) -> &LibraryNamespace
Get the namespace of this module, e.g. std
in std::math::u64
Sourcepub fn is_in_namespace(&self, namespace: &LibraryNamespace) -> bool
pub fn is_in_namespace(&self, namespace: &LibraryNamespace) -> bool
Returns true if this module belongs to the provided namespace.
Sourcepub fn docs(&self) -> Option<Span<&str>>
pub fn docs(&self) -> Option<Span<&str>>
Get the module documentation for this module, if it was present in the source code the module was parsed from
Sourcepub fn kind(&self) -> ModuleKind
pub fn kind(&self) -> ModuleKind
Get the type of module this represents:
See ModuleKind for details on the different types of modules.
Sourcepub fn is_executable(&self) -> bool
pub fn is_executable(&self) -> bool
Returns true if this module is an executable module.
Sourcepub fn has_entrypoint(&self) -> bool
pub fn has_entrypoint(&self) -> bool
Returns true if this module has an entrypoint procedure defined,
i.e. a begin
..end
block.
Sourcepub fn procedures(&self) -> Iter<'_, Export>
pub fn procedures(&self) -> Iter<'_, Export>
Get an iterator over the procedures defined in this module.
The entity returned is an Export, which abstracts over locally-defined procedures and re-exported procedures from imported modules.
Sourcepub fn procedures_mut(&mut self) -> IterMut<'_, Export>
pub fn procedures_mut(&mut self) -> IterMut<'_, Export>
Same as Module::procedures, but returns mutable references.
Sourcepub fn exported_procedures(
&self,
) -> impl Iterator<Item = (ProcedureIndex, QualifiedProcedureName)>
pub fn exported_procedures( &self, ) -> impl Iterator<Item = (ProcedureIndex, QualifiedProcedureName)>
Returns procedures exported from this module.
Each exported procedure is represented by its local procedure index and a fully qualified name.
Sourcepub fn imports(&self) -> Iter<'_, Import>
pub fn imports(&self) -> Iter<'_, Import>
Get an iterator over the imports declared in this module.
See Import for details on what information is available for imports.
Sourcepub fn imports_mut(&mut self) -> IterMut<'_, Import>
pub fn imports_mut(&mut self) -> IterMut<'_, Import>
Same as Self::imports, but returns mutable references to each import.
Sourcepub fn dependencies(&self) -> impl Iterator<Item = &LibraryNamespace>
pub fn dependencies(&self) -> impl Iterator<Item = &LibraryNamespace>
Get an iterator over the “dependencies” of a module, i.e. what library namespaces we expect to find imported procedures in.
For example, if we have imported std::math::u64
, then we would expect to find a library
on disk named std.masl
, although that isn’t a strict requirement. This notion of
dependencies may go away with future packaging-related changed.
Sourcepub fn get(&self, index: ProcedureIndex) -> Option<&Export>
pub fn get(&self, index: ProcedureIndex) -> Option<&Export>
Get the procedure at index
in this module’s procedure table.
The procedure returned may be either a locally-defined procedure, or a re-exported procedure. See Export for details.
Sourcepub fn index_of<F>(&self, predicate: F) -> Option<ProcedureIndex>
pub fn index_of<F>(&self, predicate: F) -> Option<ProcedureIndex>
Get the ProcedureIndex for the first procedure in this module’s procedure table which
returns true for predicate
.
Sourcepub fn index_of_name(&self, name: &ProcedureName) -> Option<ProcedureIndex>
pub fn index_of_name(&self, name: &ProcedureName) -> Option<ProcedureIndex>
Get the ProcedureIndex for the procedure whose name is name
in this module’s procedure
table, if that procedure is exported.
Non-exported procedures can be retrieved by using Module::index_of.
Sourcepub fn resolve(&self, name: &ProcedureName) -> Option<ResolvedProcedure>
pub fn resolve(&self, name: &ProcedureName) -> Option<ResolvedProcedure>
Resolves name
to a procedure within the local scope of this module
Sourcepub fn resolver(&self) -> LocalNameResolver
pub fn resolver(&self) -> LocalNameResolver
Construct a search structure that can resolve procedure names local to this module
Sourcepub fn resolve_import(&self, module_name: &Ident) -> Option<&Import>
pub fn resolve_import(&self, module_name: &Ident) -> Option<&Import>
Resolves module_name
to an Import within the context of this module
Sourcepub fn resolve_import_mut(&mut self, module_name: &Ident) -> Option<&mut Import>
pub fn resolve_import_mut(&mut self, module_name: &Ident) -> Option<&mut Import>
Same as Module::resolve_import, but returns a mutable reference to the Import
Sourcepub fn import_paths(&self) -> impl Iterator<Item = &LibraryPath>
pub fn import_paths(&self) -> impl Iterator<Item = &LibraryPath>
Return an iterator over the paths of all imports in this module
Trait Implementations§
Source§impl Compile for &Module
impl Compile for &Module
Source§fn compile_with_options(
self,
source_manager: &dyn SourceManager,
options: Options,
) -> Result<Box<Module>, Report>
fn compile_with_options( self, source_manager: &dyn SourceManager, options: Options, ) -> Result<Box<Module>, Report>
Source§impl Compile for Module
impl Compile for Module
Source§fn compile_with_options(
self,
source_manager: &dyn SourceManager,
options: Options,
) -> Result<Box<Module>, Report>
fn compile_with_options( self, source_manager: &dyn SourceManager, options: Options, ) -> Result<Box<Module>, Report>
Source§impl Display for Module
Pretty-printed representation of this module as Miden Assembly text format
impl Display for Module
Pretty-printed representation of this module as Miden Assembly text format
NOTE: Delegates to the crate::prettier::PrettyPrint implementation internally
Source§impl Emit for Module
impl Emit for Module
Source§fn output_type(&self, _mode: OutputMode) -> OutputType
fn output_type(&self, _mode: OutputMode) -> OutputType
mode
Source§fn write_to<W>(
&self,
writer: W,
mode: OutputMode,
_session: &Session,
) -> Result<(), Error>where
W: Writer,
fn write_to<W>(
&self,
writer: W,
mode: OutputMode,
_session: &Session,
) -> Result<(), Error>where
W: Writer,
mode
to determine the output
typeSource§impl Index<ProcedureIndex> for Module
impl Index<ProcedureIndex> for Module
Source§impl IndexMut<ProcedureIndex> for Module
impl IndexMut<ProcedureIndex> for Module
Source§fn index_mut(
&mut self,
index: ProcedureIndex,
) -> &mut <Module as Index<ProcedureIndex>>::Output
fn index_mut( &mut self, index: ProcedureIndex, ) -> &mut <Module as Index<ProcedureIndex>>::Output
container[index]
) operation. Read moreSource§impl PrettyPrint for Module
The pretty-printer for Module
impl PrettyPrint for Module
The pretty-printer for Module
Source§fn to_pretty_string(&self) -> String
fn to_pretty_string(&self) -> String
Source§fn pretty_print(&self, f: &mut Formatter<'_>) -> Result<(), Error>
fn pretty_print(&self, f: &mut Formatter<'_>) -> Result<(), Error>
impl Eq for Module
Auto Trait Implementations§
impl Freeze for Module
impl RefUnwindSafe for Module
impl Send for Module
impl Sync for Module
impl Unpin for Module
impl UnwindSafe for Module
Blanket Implementations§
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DynPartialEq for Twhere
T: PartialEq + 'static,
impl<T> DynPartialEq for Twhere
T: PartialEq + 'static,
default fn dyn_eq(&self, rhs: &(dyn DynPartialEq + 'static)) -> bool
Source§impl<T> EmitExt for T
impl<T> EmitExt for T
Source§default fn write_to_stdout(&self, session: &Session) -> Result<(), Error>
default fn write_to_stdout(&self, session: &Session) -> Result<(), Error>
Source§default fn write_to_file(
&self,
path: &Path,
mode: OutputMode,
session: &Session,
) -> Result<(), Error>
default fn write_to_file( &self, path: &Path, mode: OutputMode, session: &Session, ) -> Result<(), Error>
mode
to determine the output typeSource§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self
to use its Display
implementation when
Debug
-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg
or
a color-specific method, such as OwoColorize::green
, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg
or
a color-specific method, such as OwoColorize::on_yellow
, Read moreSource§fn fg_rgb<const R: u8, const G: u8, const B: u8>(
&self,
) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn fg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
Source§fn bg_rgb<const R: u8, const G: u8, const B: u8>(
&self,
) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn bg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
Source§fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
Source§fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
Source§impl<T> PassTarget for Twhere
T: 'static,
impl<T> PassTarget for Twhere
T: 'static,
default fn target_name(_context: &Context) -> Option<OperationName>
default fn into_target( op: &RawEntityRef<Operation, IntrusiveLink>, ) -> EntityRef<'_, T>
default fn into_target_mut( op: &mut RawEntityRef<Operation, IntrusiveLink>, ) -> EntityMut<'_, T>
Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.Source§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
Source§fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
ToCompactString::to_compact_string()
Read moreSource§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
CompactString
. Read moreSource§impl<T, Trait> Verifier<Trait> for Twhere
Trait: ?Sized,
impl<T, Trait> Verifier<Trait> for Twhere
Trait: ?Sized,
Source§const VACUOUS: bool = true
const VACUOUS: bool = true
Verifier
sets this flag to true when its implementation is vacuous,
i.e. it always succeeds and is not dependent on runtime context. Read moreSource§default fn should_verify(&self, _context: &Context) -> bool
default fn should_verify(&self, _context: &Context) -> bool
Source§default fn maybe_verify(&self, _context: &Context) -> Result<(), Report>
default fn maybe_verify(&self, _context: &Context) -> Result<(), Report>
true