Struct zmbt::dsl::SignatureBinary¶
template <Keyword K>
ClassList > zmbt > dsl > SignatureBinary
Binary expression. More...
#include <expression_api_signatures.hpp>
Inherits the following classes: zmbt::dsl::SignatureBase
Public Types inherited from zmbt::Expression¶
See zmbt::Expression
Type | Name |
---|---|
typedef dsl::Keyword | Keyword |
typedef boost::json::value | V |
Public Functions¶
Type | Name |
---|---|
Expression | operator() (Expression const & param) const Make parametrized expression. |
Expression | operator() (std::initializer_list< Expression > param) const Make parametrized expression with initializer list. |
Public Functions inherited from zmbt::dsl::SignatureBase¶
Type | Name |
---|---|
SignatureBase () |
Public Functions inherited from zmbt::Expression¶
See zmbt::Expression
Type | Name |
---|---|
Expression (std::initializer_list< boost::json::value_ref > items) |
|
Expression (boost::json::value const & expr) |
|
Expression (Keyword const & keyword, boost::json::value const & params) |
|
Expression (Keyword const & keyword) |
|
Expression () |
|
Expression (T const & sample) |
|
Expression (Expression const & o) |
|
Expression (Expression && o) |
|
boost::json::value | eval (boost::json::value const & x=nullptr, EvalContext const & ctx={}) const Evaluate expression. |
bool | has_params () const |
bool | is (Keyword const kwrd) const |
bool | is_const () const |
bool | is_literal () const |
bool | is_noop () const |
Keyword | keyword () const |
bool | match (boost::json::value const & observed, SignalOperatorHandler const & op={}) const |
bool | operator!= (Expression const & o) const |
Expression & | operator= (Expression const & o) |
Expression & | operator= (Expression && o) |
bool | operator== (Expression const & o) const |
boost::json::value const & | params () const |
boost::json::value const & | serialize () const |
boost::json::value const & | subexpr () const |
boost::json::value const & | underlying () const |
~Expression () = default |
Public Static Functions inherited from zmbt::Expression¶
See zmbt::Expression
Type | Name |
---|---|
Expression | constAsEq (boost::json::value const & underlying) |
Expression | literalAsEq (boost::json::value const & underlying) |
Detailed Description¶
Template parameters:
K
keyword
Syntactic forms¶
Syntatic forms over operator *
:
*
*
*
The second form is used in place of first for expressions that have default value defined, see documentation for specific expression.
In the third form the expression parameter is used as the right-hand side operand.
Public Functions Documentation¶
function operator() [1/2]¶
Make parametrized expression.
function operator() [2/2]¶
Make parametrized expression with initializer list.
inline Expression zmbt::dsl::SignatureBinary::operator() (
std::initializer_list< Expression > param
) const
Interpret {x} as single-element array instead of using default boost::json::value ctor
The documentation for this class was generated from the following file zmbt-framework/zmbt-framework/backends/cxx/include/zmbt/model/expression_api_signatures.hpp