Skip to main content

InitOperation

Struct InitOperation 

Source
pub struct InitOperation<P, M = (), I = ()> { /* private fields */ }

Implementations§

Source§

impl<P> InitOperation<P, (), ()>
where P: ProjectProvider,

Source

pub fn new(project_provider: P) -> Self

Source§

impl<P, M, I> InitOperation<P, M, I>
where P: ProjectProvider,

Source

pub fn with_manifest_writer<M2>(self, writer: M2) -> InitOperation<P, M2, I>

Source

pub fn with_interaction_provider<I2>( self, provider: I2, ) -> InitOperation<P, M, I2>

Source§

impl<P, M, I> InitOperation<P, M, I>

Source

pub fn prepare(&self, start_path: &Path, input: &InitInput) -> Result<InitPlan>

Prepares an initialization plan by collecting all configuration without performing any file system operations.

§Errors

Returns an error if the project cannot be discovered or configuration cannot be built (e.g., interactive prompts fail).

Source

pub fn execute_plan( &self, start_path: &Path, plan: &InitPlan, ) -> Result<InitOutput>

Executes the init operation using a pre-built plan.

§Errors

Returns an error if the changeset directory cannot be created or configuration cannot be written.

Source

pub fn execute( &self, start_path: &Path, input: &InitInput, ) -> Result<InitOutput>

Executes the full init operation (prepare + execute).

§Errors

Returns an error if the project cannot be discovered, the changeset directory cannot be created, or configuration cannot be written.

Source§

impl<P> InitOperation<P, (), ()>
where P: ProjectProvider,

Source

pub fn prepare_simple(&self, start_path: &Path) -> Result<InitPlan>

Prepares a simple initialization plan without configuration.

§Errors

Returns an error if the project cannot be discovered.

Source

pub fn execute_simple_plan( &self, start_path: &Path, plan: &InitPlan, ) -> Result<InitOutput>

Executes the simple init operation using a pre-built plan.

§Errors

Returns an error if the changeset directory cannot be created.

Source

pub fn execute_simple(&self, start_path: &Path) -> Result<InitOutput>

Simple execute method for backward compatibility when no manifest writer or interaction provider is configured.

§Errors

Returns an error if the project cannot be discovered or the changeset directory cannot be created.

Auto Trait Implementations§

§

impl<P, M, I> Freeze for InitOperation<P, M, I>
where P: Freeze, M: Freeze, I: Freeze,

§

impl<P, M, I> RefUnwindSafe for InitOperation<P, M, I>

§

impl<P, M, I> Send for InitOperation<P, M, I>
where P: Send, M: Send, I: Send,

§

impl<P, M, I> Sync for InitOperation<P, M, I>
where P: Sync, M: Sync, I: Sync,

§

impl<P, M, I> Unpin for InitOperation<P, M, I>
where P: Unpin, M: Unpin, I: Unpin,

§

impl<P, M, I> UnsafeUnpin for InitOperation<P, M, I>

§

impl<P, M, I> UnwindSafe for InitOperation<P, M, I>
where P: UnwindSafe, M: UnwindSafe, I: UnwindSafe,

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> 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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. 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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V