00001
00006 #include <cstdlib>
00007 #include <iostream>
00008
00009 #include "Value.h"
00010
00011 Value::Value(void *memoryPointer, unsigned size, unsigned flag, unsigned long long cas_id) :
00012 memoryPointer(memoryPointer), size(size), flag(flag), cas_id(cas_id) {
00013 }
00014
00015 Value::Value(const std::string &s) :
00016
00017 memoryPointer((void*)s.c_str()),size(s.size() + 1) {
00018 }
00019
00020 Value::~Value() {
00021 }
00022
00023 bool Value::isNull() {
00024 return memoryPointer == NULL;
00025 }
00026
00027 std::string Value::toString() {
00028
00029 if (memoryPointer) {
00030
00031 std::string res;
00032 char * p = (char *) memoryPointer;
00033
00034 for (unsigned i = 0; i < size; ++i) {
00035 if (p[i]) {
00036 res += p[i];
00037 }
00038 }
00039
00040 return res;
00041
00042 } else {
00043
00044 return "Value is NULL";
00045
00046 }
00047 }
00048