pub struct WorkbenchDefinition {
pub doc: DocBlock,
pub attribute_list: AttributeList,
pub visibility: Visibility,
pub kind: Refer<WorkbenchKind>,
pub id: Identifier,
pub plan: ParameterList,
pub body: Body,
pub src_ref: SrcRef,
}
Expand description
Workbench definition, e.g sketch
, part
or op
.
Fields§
§doc: DocBlock
Documentation.
attribute_list: AttributeList
Workbench attributes.
visibility: Visibility
Visibility from outside modules.
kind: Refer<WorkbenchKind>
Workbench kind.
id: Identifier
Workbench name.
plan: ParameterList
Workbench’s building plan.
body: Body
Workbench body
src_ref: SrcRef
Workbench code reference
Implementations§
Source§impl WorkbenchDefinition
impl WorkbenchDefinition
Sourcepub fn call(
&self,
call_src_ref: SrcRef,
symbol: Symbol,
arguments: &ArgumentValueList,
context: &mut Context,
) -> EvalResult<Model>
pub fn call( &self, call_src_ref: SrcRef, symbol: Symbol, arguments: &ArgumentValueList, context: &mut Context, ) -> EvalResult<Model>
Evaluate the call of a workbench with given arguments.
args
: Arguments which will be matched with the building plan and the initializers using parameter multiplicity.context
: Current evaluation context.
Return evaluated nodes (multiple nodes might be created by parameter multiplicity).
Source§impl WorkbenchDefinition
impl WorkbenchDefinition
Sourcepub fn src_ref_head(&self) -> SrcRef
pub fn src_ref_head(&self) -> SrcRef
Return the source code reference of the head of the definition.
This excludes any attribute, visibility and body.
Trait Implementations§
Source§impl Clone for WorkbenchDefinition
impl Clone for WorkbenchDefinition
Source§fn clone(&self) -> WorkbenchDefinition
fn clone(&self) -> WorkbenchDefinition
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for WorkbenchDefinition
impl Debug for WorkbenchDefinition
Source§impl Display for WorkbenchDefinition
impl Display for WorkbenchDefinition
Source§impl Grant<WorkbenchDefinition> for Context
impl Grant<WorkbenchDefinition> for Context
Source§fn grant(&mut self, statement: &WorkbenchDefinition) -> EvalResult<()>
fn grant(&mut self, statement: &WorkbenchDefinition) -> EvalResult<()>
Check if given statement
T
is granted within the current contextSource§impl<'a> Initialized<'a> for WorkbenchDefinition
impl<'a> Initialized<'a> for WorkbenchDefinition
Source§impl SrcReferrer for WorkbenchDefinition
impl SrcReferrer for WorkbenchDefinition
Source§impl TreeDisplay for WorkbenchDefinition
impl TreeDisplay for WorkbenchDefinition
Auto Trait Implementations§
impl Freeze for WorkbenchDefinition
impl !RefUnwindSafe for WorkbenchDefinition
impl !Send for WorkbenchDefinition
impl !Sync for WorkbenchDefinition
impl Unpin for WorkbenchDefinition
impl !UnwindSafe for WorkbenchDefinition
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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 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>
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
Source§fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
Fallible version of
ToCompactString::to_compact_string()
Read moreSource§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
Converts the given value to a
CompactString
. Read more