pub struct TyModule {
pub span: Span,
pub submodules: Vec<(ModName, TySubmodule)>,
pub namespace: Module,
pub all_nodes: Vec<TyAstNode>,
pub attributes: AttributesMap,
}
Fields§
§span: Span
§submodules: Vec<(ModName, TySubmodule)>
§namespace: Module
§all_nodes: Vec<TyAstNode>
§attributes: AttributesMap
Implementations§
source§impl TyModule
impl TyModule
sourcepub fn submodules_recursive(&self) -> SubmodulesRecursive<'_> ⓘ
pub fn submodules_recursive(&self) -> SubmodulesRecursive<'_> ⓘ
An iterator yielding all submodules recursively, depth-first.
sourcepub fn test_fns<'a: 'b, 'b>(
&'b self,
decl_engine: &'a DeclEngine
) -> impl '_ + Iterator<Item = (TyFunctionDecl, DeclRefFunction)>
pub fn test_fns<'a: 'b, 'b>( &'b self, decl_engine: &'a DeclEngine ) -> impl '_ + Iterator<Item = (TyFunctionDecl, DeclRefFunction)>
All test functions within this module.
source§impl TyModule
impl TyModule
sourcepub fn type_check(
ctx: TypeCheckContext<'_>,
parsed: &ParseModule
) -> CompileResult<Self>
pub fn type_check( ctx: TypeCheckContext<'_>, parsed: &ParseModule ) -> CompileResult<Self>
Type-check the given parsed module to produce a typed module.
Recursively type-checks submodules first.
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for TyModule
impl Send for TyModule
impl Sync for TyModule
impl Unpin for TyModule
impl UnwindSafe for TyModule
Blanket Implementations§
source§impl<T> AnyDebug for Twhere
T: Any + Debug,
impl<T> AnyDebug for Twhere T: Any + Debug,
source§fn as_any_ref(&self) -> &(dyn Any + 'static)
fn as_any_ref(&self) -> &(dyn Any + 'static)
Returns a reference to the underlying type as
Any
.§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.