pub struct Move {
pub workspace: Arc<dyn Workspace>,
pub base: Option<PathBuf>,
pub confine: bool,
}Expand description
Moves or renames a file, creating the new path’s directory; a directory
is refused, and so is an existing file at the new path unless the call
says to overwrite it. Publishes the files it changed (FilesChanged),
by their resolved paths: the old one deleted, and
the new one created (or, overwritten, changed) with its hunks.
Fields§
§workspace: Arc<dyn Workspace>Where the file is moved.
base: Option<PathBuf>The directory relative paths are resolved from; None is the
workspace’s working directory.
confine: boolWhether a path that resolves outside base is refused, before
anything is moved.
Trait Implementations§
Source§impl Tool for Move
impl Tool for Move
Source§type Error = ToolExecutionError
type Error = ToolExecutionError
Typed error returned by direct calls to this tool. Read more
Source§fn description(&self) -> String
fn description(&self) -> String
Model-facing description.
Source§fn parameters(&self) -> Value
fn parameters(&self) -> Value
JSON Schema for arguments.
Source§fn annotations(&self) -> ToolAnnotations
fn annotations(&self) -> ToolAnnotations
What calling the tool does to the world, for the host’s policies
(approval, plan mode, which calls run side by side). Nothing is
stated by default, which reads as the protocol’s defaults
(
ToolAnnotations).Source§fn footprint(&self, args: &MoveArgs) -> Touches
fn footprint(&self, args: &MoveArgs) -> Touches
What a call with
args may read and change, so a host runs the
calls of one reply that touch different things side by side. The
default reads it from the annotations: a
read-only tool reads anything, any other writes anything.Source§async fn call(
&self,
context: &mut ToolContext,
args: MoveArgs,
) -> Result<String, ToolExecutionError>
async fn call( &self, context: &mut ToolContext, args: MoveArgs, ) -> Result<String, ToolExecutionError>
Execute the tool.
Auto Trait Implementations§
impl !RefUnwindSafe for Move
impl !UnwindSafe for Move
impl Freeze for Move
impl Send for Move
impl Sync for Move
impl Unpin for Move
impl UnsafeUnpin for Move
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