pub struct RtValueCast { /* private fields */ }Expand description
Just a utility helping to cast the RtValue to the specific type.
use forester_rs::runtime::args::RtArgs;
use forester_rs::runtime::context::{TreeContext, TreeContextRef};
fn tick(args: RtArgs, ctx: TreeContextRef) {
match args.first() {
None => (),
Some(v) => {
let val = v.cast(ctx.clone()).str().unwrap().unwrap_or_default();
println!("{val}");
}
}
}
Implementations§
Source§impl RtValueCast
impl RtValueCast
Sourcepub fn with_ptr(self) -> RtResult<RtValue>
pub fn with_ptr(self) -> RtResult<RtValue>
tries to convert the value to the given type but considers the value as a pointer to the value in BlackBoard
pub fn str(self) -> RtResult<Option<String>>
pub fn int(self) -> RtResult<Option<i64>>
pub fn bool(self) -> RtResult<Option<bool>>
pub fn float(self) -> RtResult<Option<f64>>
Auto Trait Implementations§
impl Freeze for RtValueCast
impl RefUnwindSafe for RtValueCast
impl Send for RtValueCast
impl Sync for RtValueCast
impl Unpin for RtValueCast
impl UnwindSafe for RtValueCast
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> 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<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