typename std::enable_if<std::is_copy_assignable<U>::value, void>::type setAsLuaTableImpl(C* object, sol::table value) const { std::vector<U> vector; value.for_each([&](const sol::object& indexObject, const sol::object& element) { if(!indexObject.is<int>()) { std::cout << "The lua table used to set a std::vector<T> contains a not numeric key !" << std::endl; return; } unsigned int index = indexObject.as<int>(); //Resize the vector if needed if(vector.size() < index) vector.resize(index); //Set the value vector[index-1] = element.as<U>(); }); setMemberValue(object, vector); }
void ErrorTraceHelper::setMemberValue (const char* name, ACE_CString& value) { setMemberValue(name, value.c_str()); }