MapLibre Native Core
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
mbgl::style::expression::Let Class Reference

#include <let.hpp>

Inheritance diagram for mbgl::style::expression::Let:
mbgl::style::expression::Expression

Public Types

using Bindings = std::map< std::string, std::shared_ptr< Expression > >
 

Public Member Functions

 Let (Bindings bindings_, std::unique_ptr< Expression > result_)
 
EvaluationResult evaluate (const EvaluationContext &params) const override
 
void eachChild (const std::function< void(const Expression &)> &) const override
 
bool operator== (const Expression &e) const override
 
std::vector< std::optional< Value > > possibleOutputs () const override
 
ExpressiongetResult () const
 
mbgl::Value serialize () const override
 
std::string getOperator () const override
 
- Public Member Functions inherited from mbgl::style::expression::Expression
 Expression (Kind kind_, type::Type type_)
 
virtual ~Expression ()=default
 
bool operator!= (const Expression &rhs) const
 
Kind getKind () const
 
type::Type getType () const
 
EvaluationResult evaluate (std::optional< float > zoom, const Feature &feature, std::optional< double > colorRampParameter) const
 
EvaluationResult evaluate (std::optional< float > zoom, const Feature &feature, std::optional< double > colorRampParameter, const std::set< std::string > &availableImages) const
 
EvaluationResult evaluate (std::optional< float > zoom, const Feature &feature, std::optional< double > colorRampParameter, const std::set< std::string > &availableImages, const CanonicalTileID &canonical) const
 
EvaluationResult evaluate (std::optional< mbgl::Value > accumulated, const Feature &feature) const
 

Static Public Member Functions

static ParseResult parse (const mbgl::style::conversion::Convertible &, ParsingContext &)
 

Additional Inherited Members

- Static Protected Member Functions inherited from mbgl::style::expression::Expression
template<typename T >
static bool childrenEqual (const T &lhs, const T &rhs)
 
static bool childEqual (const std::unique_ptr< Expression > &lhs, const std::unique_ptr< Expression > &rhs)
 
template<typename T >
static bool childEqual (const std::pair< T, std::unique_ptr< Expression >> &lhs, const std::pair< T, std::unique_ptr< Expression >> &rhs)
 
template<typename T >
static bool childEqual (const std::pair< T, std::shared_ptr< Expression >> &lhs, const std::pair< T, std::shared_ptr< Expression >> &rhs)
 
static bool childEqual (const std::pair< std::unique_ptr< Expression >, std::unique_ptr< Expression >> &lhs, const std::pair< std::unique_ptr< Expression >, std::unique_ptr< Expression >> &rhs)
 

Detailed Description

Definition at line 15 of file let.hpp.

Member Typedef Documentation

◆ Bindings

using mbgl::style::expression::Let::Bindings = std::map<std::string, std::shared_ptr<Expression> >

Definition at line 17 of file let.hpp.

Constructor & Destructor Documentation

◆ Let()

mbgl::style::expression::Let::Let ( Bindings  bindings_,
std::unique_ptr< Expression result_ 
)
inline

Definition at line 19 of file let.hpp.

Member Function Documentation

◆ eachChild()

void mbgl::style::expression::Let::eachChild ( const std::function< void(const Expression &)> &  ) const
overridevirtual

◆ evaluate()

EvaluationResult mbgl::style::expression::Let::evaluate ( const EvaluationContext params) const
overridevirtual

◆ getOperator()

std::string mbgl::style::expression::Let::getOperator ( ) const
inlineoverridevirtual

Implements mbgl::style::expression::Expression.

Definition at line 45 of file let.hpp.

◆ getResult()

Expression* mbgl::style::expression::Let::getResult ( ) const
inline

Definition at line 40 of file let.hpp.

◆ operator==()

bool mbgl::style::expression::Let::operator== ( const Expression e) const
inlineoverridevirtual

Implements mbgl::style::expression::Expression.

Definition at line 30 of file let.hpp.

◆ parse()

static ParseResult mbgl::style::expression::Let::parse ( const mbgl::style::conversion::Convertible ,
ParsingContext  
)
static

◆ possibleOutputs()

std::vector<std::optional<Value> > mbgl::style::expression::Let::possibleOutputs ( ) const
overridevirtual

Statically analyze the expression, attempting to enumerate possible outputs. Returns an array of values plus the sentinel null optional value, used to indicate that the complete set of outputs is statically undecidable.

Implements mbgl::style::expression::Expression.

◆ serialize()

mbgl::Value mbgl::style::expression::Let::serialize ( ) const
overridevirtual

The documentation for this class was generated from the following file: