Trait nu_protocol::CustomValue
source · pub trait CustomValue: Debug + Send + Sync + Serialize + Deserialize {
// Required methods
fn clone_value(&self, span: Span) -> Value;
fn value_string(&self) -> String;
fn to_base_value(&self, span: Span) -> Result<Value, ShellError>;
fn as_any(&self) -> &dyn Any;
// Provided methods
fn follow_path_int(
&self,
_count: usize,
span: Span
) -> Result<Value, ShellError> { ... }
fn follow_path_string(
&self,
_column_name: String,
span: Span
) -> Result<Value, ShellError> { ... }
fn partial_cmp(&self, _other: &Value) -> Option<Ordering> { ... }
fn operation(
&self,
_lhs_span: Span,
operator: Operator,
op: Span,
_right: &Value
) -> Result<Value, ShellError> { ... }
}
Required Methods§
fn clone_value(&self, span: Span) -> Value
fn value_string(&self) -> String
fn to_base_value(&self, span: Span) -> Result<Value, ShellError>
fn as_any(&self) -> &dyn Any
Provided Methods§
fn follow_path_int( &self, _count: usize, span: Span ) -> Result<Value, ShellError>
fn follow_path_string( &self, _column_name: String, span: Span ) -> Result<Value, ShellError>
fn partial_cmp(&self, _other: &Value) -> Option<Ordering>
fn operation( &self, _lhs_span: Span, operator: Operator, op: Span, _right: &Value ) -> Result<Value, ShellError>
Trait Implementations§
source§impl<'de> Deserialize<'de> for Box<dyn CustomValue>
impl<'de> Deserialize<'de> for Box<dyn CustomValue>
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<'de> Deserialize<'de> for Box<dyn CustomValue + Send>
impl<'de> Deserialize<'de> for Box<dyn CustomValue + Send>
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<'de> Deserialize<'de> for Box<dyn CustomValue + Send + Sync>
impl<'de> Deserialize<'de> for Box<dyn CustomValue + Send + Sync>
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<'de> Deserialize<'de> for Box<dyn CustomValue + Sync>
impl<'de> Deserialize<'de> for Box<dyn CustomValue + Sync>
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