Skip to main content

ActionPlan

Struct ActionPlan 

Source
pub struct ActionPlan { /* private fields */ }
Expand description

A validated set of file operations and commands ready for execution.

Plans can only be built through validation constructors. Callers may inspect plans through accessor methods, but cannot construct or mutate planned work directly.

ActionPlan {
    context: todo!(),
    origin: todo!(),
    config_path: None,
    files: Vec::new(),
    commands: Vec::new(),
};
plan.commands = Vec::new();

Implementations§

Source§

impl ActionPlan

Source

pub const fn context(&self) -> &Worktree

Returns the runtime context used while building the plan.

Source

pub fn warnings(&self) -> &[PlanWarning]

Returns non-fatal warnings produced while building the plan.

Source

pub const fn origin(&self) -> &PlanOrigin

Returns the origin of this plan.

Source

pub fn config_path(&self) -> Option<&Path>

Returns the config file used for this plan, when it came from a manifest.

Source

pub fn files(&self) -> &[PlannedFileOperation]

Returns the planned file operations.

Source

pub fn commands(&self) -> &[PlannedCommand]

Returns the planned command operations.

Source

pub fn from_manifest( path: &Path, manifest: &Config, context: &Worktree, options: ActionPlanOptions, ) -> Result<Self>

Builds a validated action plan from a parsed treeboot manifest.

This does not apply file operations or execute commands. It normalizes paths that may not exist yet, rejects invalid declarative behavior, and marks optional missing-source file operations as skipped.

§Errors

Returns an error if manifest validation fails.

Source

pub fn from_file_operations( context: &Worktree, origin: PlanOrigin, files: &[FileOperation], options: ActionPlanOptions, ) -> Result<Self>

Builds a validated action plan from explicit file operations.

This is intended for manual commands and other callers that already have a discovered worktree context and operation list.

§Errors

Returns an error if file operation validation fails.

Trait Implementations§

Source§

impl Clone for ActionPlan

Source§

fn clone(&self) -> ActionPlan

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ActionPlan

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for ActionPlan

Source§

impl PartialEq for ActionPlan

Source§

fn eq(&self, other: &ActionPlan) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for ActionPlan

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.