#include #include #include #include #include namespace mbgl { namespace style { namespace expression { using namespace mbgl::style::conversion; bool isExpression(const Convertible& value) { const ExpressionRegistry& registry = getExpressionRegistry(); if (!isArray(value) || arrayLength(value) == 0) return false; optional name = toString(arrayMember(value, 0)); if (!name) return false; return (registry.find(*name) != registry.end()) || (CompoundExpressionRegistry::definitions.find(*name) != CompoundExpressionRegistry::definitions.end()); } } // namespace expression } // namespace style } // namespace mbgl