Sha256: 791989d52c7ab9a7c2e1e40f661071e6a8b1ca3812d27c490d6be75f8c5f46bd
Contents?: true
Size: 1.62 KB
Versions: 13
Compression:
Stored size: 1.62 KB
Contents
#ifndef __convert_string_h__ #define __convert_string_h__ #include "v8.h" #include <string> /** * StringDest is a data type conversion destination that converts * any argument into a string. It should have all methods listed * in data_conversion.txt so it can be used as a template argument * for a conversion source class. */ class StringDest { public: StringDest(); ~StringDest(); std::string pushString(const std::string& value) { return value; } #ifdef FIGURED_OUT_INT_ISSUES const char* pushInt(int32_t value) { char buffer[64]; std::sprintf(buffer, "%d", value); convertedValue = buffer; return convertedValue.c_str(); } #endif std::string pushInt(int64_t value) { char buffer[64]; std::sprintf(buffer, "%lld", value); std::string convertedValue(buffer); return convertedValue; } std::string pushDouble(double value) { char buffer[64]; std::sprintf(buffer, "%g", value); std::string convertedValue(buffer); return convertedValue; } std::string pushBool(bool value) { std::string convertedValue(value ? TRUE : FALSE); return convertedValue; } std::string pushNull() { printf("I bet we aren't even getting here<br/>"); return ""; // this kind of sucks } std::string pushUndefined() { return "undefined"; // this too } private: /** * constant "true" used for pushBool */ static const std::string TRUE; /** * constant "false" used for pushBool */ static const std::string FALSE; }; #endif
Version data entries
13 entries across 13 versions & 1 rubygems