#pragma once #include "APIHelp.h" class NativeStdString : public ScriptClass { private: std::string* mStr; public: explicit NativeStdString(const Local& scriptObj, std::string* ptr); explicit NativeStdString(std::string* ptr); static std::string* extract(Local v); static Local newNativeStdString(std::string* ptr); static NativeStdString* constructor(const Arguments& args); void* get() { return mStr; } void set(std::string* ptr) { mStr = ptr; }; Local getNpos(); Local clear(); Local size(); Local length(); Local capacity(); Local empty(); Local front(); Local back(); Local pop_back(); Local shrink_to_fit(); Local at(const Arguments& args); Local append(const Arguments& args); Local push_back(const Arguments& args); Local assign(const Arguments& args); Local insert(const Arguments& args); Local erase(const Arguments& args); Local find(const Arguments& args); Local rfind(const Arguments& args); Local substr(const Arguments& args); Local compare(const Arguments& args); Local reserve(const Arguments& args); Local resize(const Arguments& args); Local toString(); Local asPointer(); Local clone(); Local destroy(); }; extern ClassDefine NativeStdStringBuilder;