pub struct Goal {
pub name: Token,
pub loc: FileLocation,
pub active: Reference<Token, ComponentTarget>,
pub passive: Reference<Token, ComponentTarget>,
pub auxiliary: AuxiliaryVerb,
pub verb: Reference<(Token, Token), VerbDefinitionTarget>,
pub flows: Vec<Reference<Subject, VariableTarget>>,
pub subclauses: DesignClauses,
pub stringency: Stringency,
}
Expand description
Goal requirement or constraint.
Fields§
§name: Token
Goal’s name or label.
loc: FileLocation
Complete goal’s textual location.
active: Reference<Token, ComponentTarget>
Goal’s active component.
passive: Reference<Token, ComponentTarget>
Goal’s passive component.
auxiliary: AuxiliaryVerb
Goal’s auxiliary verb.
verb: Reference<(Token, Token), VerbDefinitionTarget>
Goal’s verb and preposition.
flows: Vec<Reference<Subject, VariableTarget>>
Goal’s variables that should be passed along as flows.
subclauses: DesignClauses
Goal’s subclauses (should be AND-concatenated).
stringency: Stringency
Whether this is a requirement or a constraint.
Trait Implementations§
Source§impl<'a> FetchTarget<'a, Goal> for GoalTarget
impl<'a> FetchTarget<'a, Goal> for GoalTarget
Source§fn fetch_values(
&self,
spec: &'a Specification,
) -> Result<&'a [Goal], TargetError<Self>>
fn fetch_values( &self, spec: &'a Specification, ) -> Result<&'a [Goal], TargetError<Self>>
Fetch the map reference containing the targeted item.
Source§fn fetch_values_mut(
&self,
spec: &'a mut Specification,
) -> Result<&'a mut [Goal], TargetError<Self>>
fn fetch_values_mut( &self, spec: &'a mut Specification, ) -> Result<&'a mut [Goal], TargetError<Self>>
Fetch the mutable map reference containing the targeted item.
Source§fn fetch(&self, spec: &'a Specification) -> Result<&'a V, TargetError<Self>>
fn fetch(&self, spec: &'a Specification) -> Result<&'a V, TargetError<Self>>
Fetch a reference to the target from the specification.
Source§fn fetch_mut(
&self,
spec: &'a mut Specification,
) -> Result<&'a mut V, TargetError<Self>>
fn fetch_mut( &self, spec: &'a mut Specification, ) -> Result<&'a mut V, TargetError<Self>>
Fetch a mutable reference to the target from the specification.
impl StructuralPartialEq for Goal
Auto Trait Implementations§
impl Freeze for Goal
impl RefUnwindSafe for Goal
impl !Send for Goal
impl !Sync for Goal
impl Unpin for Goal
impl UnwindSafe for Goal
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