pub struct CompilationUnit {
pub public_components: Vec<PublicComponent>,
pub sub_components: TiVec<SubComponentIdx, SubComponent>,
pub used_sub_components: Vec<SubComponentIdx>,
pub globals: TiVec<GlobalIdx, GlobalComponent>,
pub popup_menu: Option<PopupMenu>,
pub has_debug_info: bool,
}
Fields§
§public_components: Vec<PublicComponent>
§sub_components: TiVec<SubComponentIdx, SubComponent>
Storage for all sub-components
used_sub_components: Vec<SubComponentIdx>
The sub-components that are not item-tree root
globals: TiVec<GlobalIdx, GlobalComponent>
§has_debug_info: bool
Implementations§
Source§impl CompilationUnit
impl CompilationUnit
pub fn for_each_sub_components<'a>( &'a self, visitor: &mut dyn FnMut(&'a SubComponent, &EvaluationContext<'_>), )
pub fn for_each_expression<'a>( &'a self, visitor: &mut dyn FnMut(&'a MutExpression, &EvaluationContext<'_>), )
Trait Implementations§
Auto Trait Implementations§
impl Freeze for CompilationUnit
impl !RefUnwindSafe for CompilationUnit
impl !Send for CompilationUnit
impl !Sync for CompilationUnit
impl Unpin for CompilationUnit
impl !UnwindSafe for CompilationUnit
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
Mutably borrows from an owned value. Read more
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