pub fn update_cell_path(
        &mut self,
        cell_path: &[PathMember],
        callback: Box<dyn FnOnce(&Value) -> Value>,
    ) -> Result<(), ShellError> {
        let orig = self.clone();

        let new_val = callback(&orig.follow_cell_path(cell_path)?);

        match new_val {
            Value::Error { error } => Err(error),
            new_val => self.replace_data_at_cell_path(cell_path, new_val),
        }
    }
/// Follow a given column path into the value: for example accessing nth elements in a stream or list
Follow a given column path into the value: for example accessing nth elements in a stream or list
Follow a given column path into the value : for example accessing nth elements in a stream or list
pub fn update_cell_path(
        &mut self,
        cell_path: &[PathMember],
        callback: Box<dyn FnOnce(&Value) -> Value>,
    ) -> Result<(), ShellError> {
        let orig = self.clone();
        let new_val = callback(&orig.follow_cell_path(cell_path)?);
        match new_val {
            Value::Error { error } => Err(error),
            new_val => self.replace_data_at_cell_path(cell_path, new_val),
        }
    }
pub fn update_cell_path ( & mut self , cell_path : & [ PathMember ] , callback : Box < dyn FnOnce ( & Value ) -> Value > , ) -> Result < ( ) , ShellError > { let orig = self . clone ( ) ; let new_val = callback ( & orig . follow_cell_path ( cell_path ) ? ) ; match new_val { Value :: Error { error } => Err ( error ) , new_val => self . replace_data_at_cell_path ( cell_path , new_val ) , } }
Follow a given column path into the value: for example accessing nth elements in a stream or list
Follow a given column path into the value : for example accessing nth elements in a stream or list
&mut self
cell_path
&[PathMember]
callback
Box<dyn FnOnce(&Value) -> Value>