pub struct RustUdfSource { /* private fields */ }Expand description
Rust source code defining the UDF entrypoint and any helper functions.
Implementations§
Source§impl RustUdfSource
impl RustUdfSource
Sourcepub fn builder() -> Builder<SourceCodeStage>
pub fn builder() -> Builder<SourceCodeStage>
Returns a new builder.
Source§impl RustUdfSource
impl RustUdfSource
Sourcepub fn source_code(&self) -> &str
pub fn source_code(&self) -> &str
Rust source code to transpiled into WASM. The source may contain a single function as the entrypoint, or if several
functions appear at the top level, annotate the entrypoint with #[main]. Entrypoint must return a single f64 value.
Parameters must be typed as f64 for numeric inputes or String for categorical inputs.
Single function example:
ⓘ
fn run(a: f64, b: f64) -> f64 {
a + b
}
Main with helper function:
ⓘ
#[main]
fn run(sample: f64, band_size: f64) -> f64 {
excedance_count(sample, band_size)
}
fn excedance_count(value: f64, band_size: f64) -> f64 {
let mut excedances = 0.0;
for i in 1..=5 {
if value > band_size * i as f64 {
excedances += 1.0;
}
}
excedances
}Trait Implementations§
Source§impl Clone for RustUdfSource
impl Clone for RustUdfSource
Source§fn clone(&self) -> RustUdfSource
fn clone(&self) -> RustUdfSource
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 Debug for RustUdfSource
impl Debug for RustUdfSource
Source§impl<'de> Deserialize<'de> for RustUdfSource
impl<'de> Deserialize<'de> for RustUdfSource
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<RustUdfSource> for Builder<Complete>
impl From<RustUdfSource> for Builder<Complete>
Source§fn from(v: RustUdfSource) -> Self
fn from(v: RustUdfSource) -> Self
Converts to this type from the input type.
Source§impl Hash for RustUdfSource
impl Hash for RustUdfSource
Source§impl Ord for RustUdfSource
impl Ord for RustUdfSource
Source§fn cmp(&self, other: &RustUdfSource) -> Ordering
fn cmp(&self, other: &RustUdfSource) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for RustUdfSource
impl PartialEq for RustUdfSource
Source§impl PartialOrd for RustUdfSource
impl PartialOrd for RustUdfSource
Source§impl Serialize for RustUdfSource
impl Serialize for RustUdfSource
impl Eq for RustUdfSource
impl StructuralPartialEq for RustUdfSource
Auto Trait Implementations§
impl Freeze for RustUdfSource
impl RefUnwindSafe for RustUdfSource
impl Send for RustUdfSource
impl Sync for RustUdfSource
impl Unpin for RustUdfSource
impl UnsafeUnpin for RustUdfSource
impl UnwindSafe for RustUdfSource
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<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request