12 namespace expression {
16 using Args = std::vector<std::unique_ptr<Expression>>;
19 args(
std::move(args_))
38 return args.at(i).get();
EvaluationResult evaluate(const EvaluationContext ¶ms) const override
void eachChild(const std::function< void(const Expression &)> &visit) const override
Coalesce(const type::Type &type_, Args args_)
bool operator==(const Expression &e) const override
Expression * getChild(std::size_t i) const
std::string getOperator() const override
std::vector< std::optional< Value > > possibleOutputs() const override
std::size_t getLength() const
std::vector< std::unique_ptr< Expression > > Args
static ParseResult parse(const mbgl::style::conversion::Convertible &value, ParsingContext &ctx)
std::unique_ptr< Expression > string(std::unique_ptr< Expression >, std::unique_ptr< Expression > def=nullptr)
variant< NullType, NumberType, BooleanType, StringType, ColorType, ObjectType, ValueType, mapbox::util::recursive_wrapper< Array >, CollatorType, FormattedType, ErrorType, ImageType > Type
std::optional< std::unique_ptr< Expression > > ParseResult