pub struct Plan { /* private fields */ }Expand description
A sequence of steps derived from an Intent’s analyzed content.
A Plan is a pure planning artifact — it defines what to do, not
how to execute. It is step ③ in the end-to-end flow. A
Run then references the Plan via plan to
execute it. See module documentation for revision chain, context
range, and recursive decomposition details.
Implementations§
Source§impl Plan
impl Plan
Sourcepub fn new(created_by: ActorRef) -> Result<Self, String>
pub fn new(created_by: ActorRef) -> Result<Self, String>
Create a new initial plan (no predecessor).
Sourcepub fn new_revision(&self, created_by: ActorRef) -> Result<Self, String>
pub fn new_revision(&self, created_by: ActorRef) -> Result<Self, String>
Create a revised plan that links back to this one.
pub fn header(&self) -> &Header
pub fn previous(&self) -> Option<Uuid>
pub fn steps(&self) -> &[PlanStep]
pub fn add_step(&mut self, step: PlanStep)
pub fn set_previous(&mut self, previous: Option<Uuid>)
Sourcepub fn pipeline(&self) -> Option<Uuid>
pub fn pipeline(&self) -> Option<Uuid>
Returns the pipeline that served as context basis for this plan.
Sourcepub fn set_pipeline(&mut self, pipeline: Option<Uuid>)
pub fn set_pipeline(&mut self, pipeline: Option<Uuid>)
Sets the pipeline that serves as the context basis for this plan.
Sourcepub fn fwindow(&self) -> Option<(u32, u32)>
pub fn fwindow(&self) -> Option<(u32, u32)>
Returns the frame window (start, end) — the half-open range
[start..end) of pipeline frames visible when this plan was created.
Sourcepub fn set_fwindow(&mut self, fwindow: Option<(u32, u32)>)
pub fn set_fwindow(&mut self, fwindow: Option<(u32, u32)>)
Sets the frame window (start, end) — the half-open range
[start..end) of pipeline frames visible when this plan was created.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Plan
impl<'de> Deserialize<'de> for Plan
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl ObjectTrait for Plan
impl ObjectTrait for Plan
Source§fn from_bytes(data: &[u8], _hash: ObjectHash) -> Result<Self, GitError>where
Self: Sized,
fn from_bytes(data: &[u8], _hash: ObjectHash) -> Result<Self, GitError>where
Self: Sized,
Source§fn get_type(&self) -> ObjectType
fn get_type(&self) -> ObjectType
fn get_size(&self) -> usize
fn to_data(&self) -> Result<Vec<u8>, GitError>
Source§fn from_buf_read<R: BufRead>(read: &mut ReadBoxed<R>, size: usize) -> Selfwhere
Self: Sized,
fn from_buf_read<R: BufRead>(read: &mut ReadBoxed<R>, size: usize) -> Selfwhere
Self: Sized,
ReadBoxed<BufRead>.
the input size,is only for new a vec with directive space allocation
the input data stream and output object should be plain base object .Source§fn object_hash(&self) -> Result<ObjectHash, GitError>
fn object_hash(&self) -> Result<ObjectHash, GitError>
impl Eq for Plan
impl StructuralPartialEq for Plan
Auto Trait Implementations§
impl Freeze for Plan
impl RefUnwindSafe for Plan
impl Send for Plan
impl Sync for Plan
impl Unpin for Plan
impl UnsafeUnpin for Plan
impl UnwindSafe for Plan
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> FileLoadStore for Twhere
T: Serialize + for<'a> Deserialize<'a>,
impl<T> FileLoadStore for Twhere
T: Serialize + for<'a> Deserialize<'a>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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