#pragma once #include #include #include #include #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wunused-parameter" #pragma GCC diagnostic ignored "-Wshadow" #include #pragma GCC diagnostic pop using namespace mbgl::style; using namespace mbgl::style::expression; namespace node_mbgl { v8::Local toJS(const Value&); class NodeExpression : public Nan::ObjectWrap { public: static void Init(v8::Local); private: NodeExpression(std::unique_ptr expression_) : expression(std::move(expression_)) {}; static void New(const Nan::FunctionCallbackInfo&); static void Parse(const Nan::FunctionCallbackInfo&); static void Evaluate(const Nan::FunctionCallbackInfo&); static void GetType(const Nan::FunctionCallbackInfo&); static void IsFeatureConstant(const Nan::FunctionCallbackInfo&); static void IsZoomConstant(const Nan::FunctionCallbackInfo&); static Nan::Persistent constructor; std::unique_ptr expression; }; } // namespace node_mbgl