pub struct DroidTarget;Trait Implementations§
Source§impl Target for DroidTarget
impl Target for DroidTarget
fn name(&self) -> &'static str
fn display_name(&self) -> &'static str
Source§fn shell_tool_name(&self) -> &'static str
fn shell_tool_name(&self) -> &'static str
The harness’s SHELL tool — the only tool this hook should decide about. Droid’s is
Execute, Gemini’s run_shell_command; most are Bash. Defaults to Bash, the common
case.fn detect_paths(&self, home: &Path) -> Vec<PathBuf>
fn install(&self, home: &Path) -> Result<InstallOutcome, String>
fn hook_format(&self) -> Option<&dyn HookFormat>
Source§fn hook_format_for(&self, _stdin: &str) -> Option<&dyn HookFormat>
fn hook_format_for(&self, _stdin: &str) -> Option<&dyn HookFormat>
The format that answers THIS envelope. Most harnesses send one hook event, so it is
hook_format. Codex sends PreToolUse and PermissionRequest to the same command and
expects a different answer to each, so it picks by the event the envelope names.Source§fn hook_formats(&self) -> Vec<&dyn HookFormat>
fn hook_formats(&self) -> Vec<&dyn HookFormat>
Every format
hook_format_for can return, so the contract guards that need no envelope walk
all of them and a second event’s format cannot ship unchecked. The foreign-tool guard is
driven by sample_envelope and reaches only the format that envelope routes to; Codex’s
PermissionRequest tool filter has its own test in codex.rs.Auto Trait Implementations§
impl Freeze for DroidTarget
impl RefUnwindSafe for DroidTarget
impl Send for DroidTarget
impl Sync for DroidTarget
impl Unpin for DroidTarget
impl UnsafeUnpin for DroidTarget
impl UnwindSafe for DroidTarget
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