pub struct JitFunction(/* private fields */);Expand description
Function for use with a JIT evaluator
Trait Implementations§
Source§impl Clone for JitFunction
impl Clone for JitFunction
Source§fn clone(&self) -> JitFunction
fn clone(&self) -> JitFunction
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'a> From<&'a JitFunction> for &'a GenericVmFunction<REGISTER_LIMIT>
impl<'a> From<&'a JitFunction> for &'a GenericVmFunction<REGISTER_LIMIT>
Source§fn from(v: &'a JitFunction) -> Self
fn from(v: &'a JitFunction) -> Self
Converts to this type from the input type.
Source§impl From<GenericVmFunction<REGISTER_LIMIT>> for JitFunction
impl From<GenericVmFunction<REGISTER_LIMIT>> for JitFunction
Source§fn from(v: GenericVmFunction<REGISTER_LIMIT>) -> Self
fn from(v: GenericVmFunction<REGISTER_LIMIT>) -> Self
Converts to this type from the input type.
Source§impl Function for JitFunction
impl Function for JitFunction
Source§type Workspace = VmWorkspace<REGISTER_LIMIT>
type Workspace = VmWorkspace<REGISTER_LIMIT>
Associated type for workspace used during function simplification
Source§type TapeStorage = Mmap
type TapeStorage = Mmap
Associated type for storage used by tapes Read more
Source§type IntervalEval = JitIntervalEval
type IntervalEval = JitIntervalEval
Associated type for single interval tracing evaluation
Source§type PointEval = JitPointEval
type PointEval = JitPointEval
Associated type for single-point tracing evaluation
Source§type FloatSliceEval = JitFloatSliceEval
type FloatSliceEval = JitFloatSliceEval
Associated type for evaluating many points in one call
Source§type GradSliceEval = JitGradSliceEval
type GradSliceEval = JitGradSliceEval
Associated type for evaluating many gradients in one call
Source§fn point_tape(&self, storage: Mmap) -> JitTracingFn<f32>
fn point_tape(&self, storage: Mmap) -> JitTracingFn<f32>
Returns an evaluation tape for a point evaluator
Source§fn interval_tape(&self, storage: Mmap) -> JitTracingFn<Interval>
fn interval_tape(&self, storage: Mmap) -> JitTracingFn<Interval>
Returns an evaluation tape for an interval evaluator
Source§fn float_slice_tape(&self, storage: Mmap) -> JitBulkFn<f32>
fn float_slice_tape(&self, storage: Mmap) -> JitBulkFn<f32>
Returns an evaluation tape for a float slice evaluator
Source§fn grad_slice_tape(&self, storage: Mmap) -> JitBulkFn<Grad>
fn grad_slice_tape(&self, storage: Mmap) -> JitBulkFn<Grad>
Returns an evaluation tape for a float slice evaluator
Source§fn simplify(
&self,
trace: &Self::Trace,
storage: Self::Storage,
workspace: &mut Self::Workspace,
) -> Result<Self, Error>
fn simplify( &self, trace: &Self::Trace, storage: Self::Storage, workspace: &mut Self::Workspace, ) -> Result<Self, Error>
Computes a simplified tape using the given trace, and reusing storage
Source§fn recycle(self) -> Option<Self::Storage>
fn recycle(self) -> Option<Self::Storage>
Attempt to reclaim storage from this function Read more
Source§fn can_simplify(&self) -> bool
fn can_simplify(&self) -> bool
Checks to see whether this function can ever be simplified
Source§fn new_point_eval() -> Self::PointEval
fn new_point_eval() -> Self::PointEval
Builds a new point evaluator
Source§fn new_interval_eval() -> Self::IntervalEval
fn new_interval_eval() -> Self::IntervalEval
Builds a new interval evaluator
Source§fn new_float_slice_eval() -> Self::FloatSliceEval
fn new_float_slice_eval() -> Self::FloatSliceEval
Builds a new float slice evaluator
Source§fn new_grad_slice_eval() -> Self::GradSliceEval
fn new_grad_slice_eval() -> Self::GradSliceEval
Builds a new gradient slice evaluator
Source§impl MathFunction for JitFunction
impl MathFunction for JitFunction
Source§impl RenderHints for JitFunction
impl RenderHints for JitFunction
Source§fn tile_sizes_3d() -> TileSizes
fn tile_sizes_3d() -> TileSizes
Recommended tile sizes for 3D rendering
Source§fn tile_sizes_2d() -> TileSizes
fn tile_sizes_2d() -> TileSizes
Recommended tile sizes for 2D rendering
Auto Trait Implementations§
impl Freeze for JitFunction
impl RefUnwindSafe for JitFunction
impl Send for JitFunction
impl Sync for JitFunction
impl Unpin for JitFunction
impl UnsafeUnpin for JitFunction
impl UnwindSafe for JitFunction
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.