00001 // EmptyValue.h 00002 00003 #ifndef EMPTYVALUE_H 00004 #define EMPTYVALUE_H 00005 00006 #include "Value.h" 00007 00008 namespace Yosokumo 00009 { 00010 00011 /** 00012 * Represents no value or an unknown value. 00013 */ 00014 class EmptyValue : public Value 00015 { 00016 public: 00017 /** 00018 * Instantiate an EmptyValue. 00019 */ 00020 EmptyValue(); 00021 00022 /** 00023 * Return the value stored in this empty object. 00024 * 00025 * @return an empty value (NULL). 00026 */ 00027 void *getValue() const; 00028 00029 /** 00030 * Return the empty value as a string. 00031 * 00032 * @return the empty value as a string. 00033 */ 00034 virtual std::string toString() const; 00035 00036 }; // end class EmptyValue 00037 00038 } // end namespace Yosokumo 00039 00040 #endif // EMPTYVALUE_H 00041 00042 // end EmptyValue.h