pub struct Parameter {
pub id: Identifier,
pub specified_type: Option<TypeAnnotation>,
pub default_value: Option<Expression>,
pub src_ref: SrcRef,
}Expand description
A parameter of a parameter list.
Fields§
§id: IdentifierName of the parameter
specified_type: Option<TypeAnnotation>Type of the parameter or None
default_value: Option<Expression>default value of the parameter or None
src_ref: SrcRefSource code reference
Implementations§
Source§impl Parameter
impl Parameter
Sourcepub fn new(
id: Identifier,
specified_type: Option<TypeAnnotation>,
default_value: Option<Expression>,
src_ref: SrcRef,
) -> Self
pub fn new( id: Identifier, specified_type: Option<TypeAnnotation>, default_value: Option<Expression>, src_ref: SrcRef, ) -> Self
Create new parameter
Sourcepub fn eval_default_value(&self, context: &mut EvalContext) -> EvalResult<Value>
pub fn eval_default_value(&self, context: &mut EvalContext) -> EvalResult<Value>
Evaluate default value considering specified type
If there is no default value, returns Value::None without raising an error.
Trait Implementations§
Source§impl Eval<ParameterValue> for Parameter
impl Eval<ParameterValue> for Parameter
Source§fn eval(&self, context: &mut EvalContext) -> EvalResult<ParameterValue>
fn eval(&self, context: &mut EvalContext) -> EvalResult<ParameterValue>
Evaluate Parameter into ParameterValue.
Source§impl From<&Parameter> for ParameterInfo
impl From<&Parameter> for ParameterInfo
Source§impl OrdMapValue<Identifier> for Parameter
impl OrdMapValue<Identifier> for Parameter
Source§fn key(&self) -> Option<Identifier>
fn key(&self) -> Option<Identifier>
return some unique key of this value or
NoneSource§impl Parse for Parameter
Short cut to create a ParameterList instance
impl Parse for Parameter
Short cut to create a ParameterList instance
fn parse(pair: Pair<'_>) -> ParseResult<Self>
Source§impl SrcReferrer for Parameter
impl SrcReferrer for Parameter
Source§impl TreeDisplay for Parameter
impl TreeDisplay for Parameter
Source§fn tree_print(&self, f: &mut Formatter<'_>, depth: TreeState) -> Result
fn tree_print(&self, f: &mut Formatter<'_>, depth: TreeState) -> Result
Write item into
f and use {:depth$} syntax in front of your single line
output to get proper indention.Source§fn display_tree(&self, f: &mut Formatter<'_>) -> Result
fn display_tree(&self, f: &mut Formatter<'_>) -> Result
Display as tree starting at depth
0.Source§fn debug_tree(&self, f: &mut Formatter<'_>) -> Result
fn debug_tree(&self, f: &mut Formatter<'_>) -> Result
Display as tree starting at given depth in debug mode
Auto Trait Implementations§
impl Freeze for Parameter
impl RefUnwindSafe for Parameter
impl !Send for Parameter
impl !Sync for Parameter
impl Unpin for Parameter
impl UnwindSafe for Parameter
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