pub struct RuntimePropertiesStackFrame { /* private fields */ }Expand description
Data structure for a single frame of our runtime stack, including
a reference to its parent frame and properties for
runtime evaluation, e.g. of Expressions. RuntimePropertiesStackFrames also track
timeline playhead position.
Components push RuntimePropertiesStackFrames before computing properties and pop them after computing, thus providing a
hierarchical store of node-relevant data that can be bound to symbols in expressions.
Implementations§
source§impl RuntimePropertiesStackFrame
impl RuntimePropertiesStackFrame
pub fn new(properties: Rc<RefCell<dyn Any>>) -> Rc<Self>
pub fn push(self: &Rc<Self>, properties: &Rc<RefCell<dyn Any>>) -> Rc<Self>
pub fn pop(self: &Rc<Self>) -> Option<Rc<Self>>
sourcepub fn peek_nth(self: &Rc<Self>, n: isize) -> Option<Rc<RefCell<dyn Any>>>
pub fn peek_nth(self: &Rc<Self>, n: isize) -> Option<Rc<RefCell<dyn Any>>>
Traverses stack recursively n times to retrieve ancestor;
useful for runtime lookups for identifiers, where n is the statically known offset determined by the Pax compiler
when resolving a symbol
pub fn get_properties(&self) -> Rc<RefCell<dyn Any>>
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RuntimePropertiesStackFrame
impl !RefUnwindSafe for RuntimePropertiesStackFrame
impl !Send for RuntimePropertiesStackFrame
impl !Sync for RuntimePropertiesStackFrame
impl Unpin for RuntimePropertiesStackFrame
impl !UnwindSafe for RuntimePropertiesStackFrame
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, U> RoundInto<U> for Twhere
U: RoundFrom<T>,
impl<T, U> RoundInto<U> for Twhere
U: RoundFrom<T>,
source§fn round_into(self) -> U
fn round_into(self) -> U
Performs the conversion.