pub trait ValueExt {
Show 14 methods
// Required methods
fn into_parts(self) -> (UntaggedValue, Tag);
fn get_data(&self, desc: &str) -> MaybeOwned<'_, Value>;
fn get_data_by_key(&self, name: Spanned<&str>) -> Option<Value>;
fn get_data_by_member(&self, name: &PathMember) -> Result<Value, ShellError>;
fn get_data_by_column_path(
&self,
path: &ColumnPath,
callback: Box<dyn FnOnce(&Value, &PathMember, ShellError) -> ShellError>,
) -> Result<Value, ShellError>;
fn swap_data_by_column_path(
&self,
path: &ColumnPath,
callback: Box<dyn FnOnce(&Value) -> Result<Value, ShellError>>,
) -> Result<Value, ShellError>;
fn insert_data_at_path(&self, path: &str, new_value: Value) -> Option<Value>;
fn insert_data_at_member(
&mut self,
member: &PathMember,
new_value: Value,
) -> Result<(), ShellError>;
fn forgiving_insert_data_at_column_path(
&self,
split_path: &ColumnPath,
new_value: Value,
) -> Result<Value, ShellError>;
fn insert_data_at_column_path(
&self,
split_path: &ColumnPath,
new_value: Value,
) -> Result<Value, ShellError>;
fn replace_data_at_column_path(
&self,
split_path: &ColumnPath,
replaced_value: Value,
) -> Option<Value>;
fn as_column_path(&self) -> Result<Tagged<ColumnPath>, ShellError>;
fn as_path_member(&self) -> Result<PathMember, ShellError>;
fn as_string(&self) -> Result<String, ShellError>;
}Required Methods§
fn into_parts(self) -> (UntaggedValue, Tag)
fn get_data(&self, desc: &str) -> MaybeOwned<'_, Value>
fn get_data_by_key(&self, name: Spanned<&str>) -> Option<Value>
fn get_data_by_member(&self, name: &PathMember) -> Result<Value, ShellError>
fn get_data_by_column_path( &self, path: &ColumnPath, callback: Box<dyn FnOnce(&Value, &PathMember, ShellError) -> ShellError>, ) -> Result<Value, ShellError>
fn swap_data_by_column_path( &self, path: &ColumnPath, callback: Box<dyn FnOnce(&Value) -> Result<Value, ShellError>>, ) -> Result<Value, ShellError>
fn insert_data_at_path(&self, path: &str, new_value: Value) -> Option<Value>
fn insert_data_at_member( &mut self, member: &PathMember, new_value: Value, ) -> Result<(), ShellError>
fn forgiving_insert_data_at_column_path( &self, split_path: &ColumnPath, new_value: Value, ) -> Result<Value, ShellError>
fn insert_data_at_column_path( &self, split_path: &ColumnPath, new_value: Value, ) -> Result<Value, ShellError>
fn replace_data_at_column_path( &self, split_path: &ColumnPath, replaced_value: Value, ) -> Option<Value>
fn as_column_path(&self) -> Result<Tagged<ColumnPath>, ShellError>
fn as_path_member(&self) -> Result<PathMember, ShellError>
fn as_string(&self) -> Result<String, ShellError>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".