scram::mef::NaryExpression< T, 1 >
Unary expression. More...
#include <expression.h>
Inherits from scram::mef::ExpressionFormula< NaryExpression< T, 1 > >, scram::mef::Expression, boost::noncopyable
Public Functions
| Name | |
|---|---|
| NaryExpression(Expression * expression) | |
| virtual void | Validate() const override<br>Validates the expression. |
| virtual Interval | interval() override |
| template <typename F > <br>double | Compute(F && eval)<br>Computes the expression value with a given argument value extractor. |
Additional inherited members
Public Functions inherited from scram::mef::ExpressionFormula< NaryExpression< T, 1 > >
| Name | |
|---|---|
| virtual double | value()<br>Computes the expression with argument expression default values. |
| Expression(std::vector< Expression * > args ={})<br>Constructor for use by derived classes to register their arguments. |
Public Functions inherited from scram::mef::Expression
| Name | |
|---|---|
| Expression(std::vector< Expression * > args ={})<br>Constructor for use by derived classes to register their arguments. | |
| virtual | ~Expression() =default |
| const std::vector< Expression * > & | args() const |
| virtual double | value() =0 |
| virtual bool | IsDeviate()<br>Determines if the value of the expression contains deviate expressions. |
| double | Sample() |
| void | Reset()<br>This routine resets the sampling to get new values. |
Protected Functions inherited from scram::mef::Expression
| Name | |
|---|---|
| void | AddArg(Expression * arg)<br>Registers an additional argument expression. |
Detailed Description
cpp
template <typename T >
class scram::mef::NaryExpression< T, 1 >;Unary expression.
Public Functions Documentation
function NaryExpression
cpp
inline explicit NaryExpression(
Expression * expression
)Parameters:
- expression The single argument.
function Validate
cpp
inline virtual void Validate() const overrideValidates the expression.
Exceptions:
- DomainError The argument value domains are invalid.
- ValidityError The arguments are invalid for setup.
Reimplements: scram::mef::Expression::Validate
This late validation is due to parameters that are defined late.
function interval
cpp
inline virtual Interval interval() overrideReturn: The domain interval for validation purposes only.
Reimplements: scram::mef::Expression::interval
function Compute
cpp
template <typename F >
inline double Compute(
F && eval
)Computes the expression value with a given argument value extractor.
Updated on 2026-01-09 at 21:59:12 +0000
