Skip to content

Struct zmbt::lang::SignatureConst

template <Keyword K>

ClassList > zmbt > lang > SignatureConst

Const expression. More...

  • #include <api_signatures.hpp>

Inherits the following classes: zmbt::lang::SignatureBase

Public Types inherited from zmbt::lang::ExpressionView

See zmbt::lang::ExpressionView

Type Name
typedef lang::Keyword Keyword
typedef boost::json::value V

Public Functions inherited from zmbt::lang::SignatureBase

See zmbt::lang::SignatureBase

Type Name
SignatureBase ()

Public Functions inherited from zmbt::lang::Expression

See zmbt::lang::Expression

Type Name
Expression ()
Expression (Encoding && encoding)
Expression (Encoding const & encoding)
Expression (boost::json::value const & expr)
Expression (boost::json::value && expr)
Expression (std::initializer_list< boost::json::value_ref > items)
Expression (T sample)
Expression (Keyword const & keyword)
Expression (ExpressionView const & view)
Expression (Expression const & other)
Expression (Expression && other)
Encoding encoding () const
bool operator!= (Expression v) const
Expression & operator= (Expression const & other)
Expression & operator= (Expression && other)
bool operator== (Expression v) const
~Expression () = default

Public Functions inherited from zmbt::lang::ExpressionView

See zmbt::lang::ExpressionView

Type Name
ExpressionView ()
ExpressionView (ExpressionView const &) = default
ExpressionView (ExpressionView &&) = default
ExpressionView (EncodingView v)
ExpressionView (Encoding enc)
boost::json::array const & as_array () const
bool as_bool () const
boost::json::object const & as_object () const
boost::json::string const & as_string () const
boost::json::value const & data () const
EncodingView encoding_view () const
boost::json::value eval (boost::json::value const & x=nullptr, EvalContext ctx={}) const
Evaluate expression.
bool eval_as_predicate (ExpressionView const & x, Expression & err_sts, EvalContext ctx) const
bool eval_as_predicate (boost::json::value const & x, Expression & err_sts, EvalContext ctx) const
Expression eval_e (ExpressionView const & x, EvalContext ctx) const
Evaluate expression.
Expression eval_maybe_predicate (ExpressionView const & x, EvalContext ctx) const
bool has_subexpr () const
boost::json::array const * if_array () const
bool const * if_bool () const
boost::json::object const * if_object () const
boost::json::string const * if_string () const
bool is (Keyword const kwrd) const
bool is_boolean () const
bool is_complete_flip () const
bool is_compose () const
bool is_const () const
bool is_error () const
bool is_fork () const
bool is_infix_fork () const
bool is_infix_pipe () const
bool is_infix_tuple () const
bool is_link () const
bool is_literal () const
bool is_noop () const
bool is_null () const
bool is_preproc () const
bool is_tuple () const
bool is_valid_link () const
Keyword keyword () const
boost::json::string_view keyword_to_str () const
bool match (boost::json::value const & x, Operator const & op={}) const
Eval and cast to boolean, return false on error.
bool operator!= (ExpressionView const & o) const
ExpressionView & operator= (ExpressionView const &) = default
ExpressionView & operator= (ExpressionView &&) = default
bool operator== (ExpressionView const & o) const
std::list< std::pair< std::string, std::string > > preprocessing_parameters () const
List of [param, json ptr].
std::string prettify () const
std::ostream & prettify_to (std::ostream & os) const
void prettify_to (char(&) buff) const
void prettify_to (char * buff, std::size_t n) const
std::string serialize () const
std::list< ExpressionView > subexpressions_list () const
Subexpressions.
boost::json::value to_json () const
std::list< ExpressionView > tuple_parameters () const
virtual ~ExpressionView () = default

Public Static Functions inherited from zmbt::lang::Expression

See zmbt::lang::Expression

Type Name
Encoding encodeLiteral (boost::json::value const & params)
Encoding encodeNested (Keyword const & keyword, std::initializer_list< Expression > subexpressions)
Encoding encodeNested (Keyword const & keyword, std::vector< Expression > && subexpressions)
Encoding encodePreProc (boost::json::value const & params)
bool to_predicate_if_const (Expression & e)

Protected Attributes inherited from zmbt::lang::ExpressionView

See zmbt::lang::ExpressionView

Type Name
EncodingView encoding_view_

Detailed Description

Template parameters:

  • K keyword
Syntactic forms

Syntatic form over constant C:


The documentation for this class was generated from the following file zmbt-framework/zmbt-framework/backends/cxx/include/zmbt/expr/api_signatures.hpp