pub(super) struct Body {
pub locals: Vec<LocalInfo>,
scopes: Vec<HashMap<String, LocalId>>,
pub context: Context,
}Expand description
One function, view or window body: its locals and the scopes that name them.
Fields§
§locals: Vec<LocalInfo>§scopes: Vec<HashMap<String, LocalId>>§context: ContextImplementations§
Source§impl Body
impl Body
pub(super) fn new(context: Context) -> Self
Sourcepub(super) fn declare(&mut self, name: &str, info: LocalInfo) -> LocalId
pub(super) fn declare(&mut self, name: &str, info: LocalInfo) -> LocalId
Allocates a local and names it in the current scope.
Sourcepub(super) fn allocate(&mut self, info: LocalInfo) -> LocalId
pub(super) fn allocate(&mut self, info: LocalInfo) -> LocalId
Allocates a local without naming it yet.
pub(super) fn bind(&mut self, name: &str, id: LocalId)
pub(super) fn lookup(&self, name: &str) -> Option<LocalId>
pub(super) fn local(&self, id: LocalId) -> &LocalInfo
pub(super) fn push_scope(&mut self)
pub(super) fn pop_scope(&mut self)
Trait Implementations§
Auto Trait Implementations§
impl !Send for Body
impl !Sync for Body
impl Freeze for Body
impl RefUnwindSafe for Body
impl Unpin for Body
impl UnsafeUnpin for Body
impl UnwindSafe for Body
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