#ifndef A8_MUTABLE_XOBJECT_H #define A8_MUTABLE_XOBJECT_H namespace a8 { class MutableXObject : public XObject { private: MutableXObject(); public: static a8::MutableXObject* NewObject(); static a8::MutableXObject* NewArray(); a8::MutableXObject& Push(a8::XValue val); a8::MutableXObject& Push(a8::MutableXObject& val); a8::MutableXObject& SetVal(const std::string& key, a8::XValue val); a8::MutableXObject& SetVal(const std::string& key, a8::XObject& val); a8::MutableXObject& SetVal(const std::string& key, a8::MutableXObject& val); }; } #endif