00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef _UESQL_SEARCH_CONDITION__
00027 #define _UESQL_SEARCH_CONDITION__
00028
00029 #include <mpcl/text/string.hh>
00030 #include "type.hh"
00031
00032
00034 namespace uesqlc
00035 {
00036
00038 class TSearchCondition :
00039 public IType ,
00040 public mpcl::text::TString
00041 {
00042
00043 public:
00044
00046 typedef
00047 mpcl::text::TString::size_type
00048 size_type;
00049
00050
00051 public:
00052
00053
00054
00055
00056
00057 explicit TSearchCondition (void) :
00058 IType () ,
00059 mpcl::text::TString () {}
00060
00062 TSearchCondition (const TSearchCondition& rktSEARCH_CONDITION) :
00063 IType () ,
00064 mpcl::text::TString (rktSEARCH_CONDITION) {}
00065
00066 TSearchCondition& operator = (const TSearchCondition& rktSEARCH_CONDITION)
00067 {
00068 mpcl::text::TString::operator = (rktSEARCH_CONDITION);
00069 setNull (rktSEARCH_CONDITION.isNull());
00070 return *this;
00071 }
00072
00079 void set (const char* pkcVALUE)
00080 {
00081 if ( !pkcVALUE )
00082 {
00083 erase();
00084 setNull (true);
00085 }
00086 else
00087 {
00088 assign (pkcVALUE);
00089 setNull (false);
00090 }
00091 }
00092
00097 void set (const std::string& rkyVALUE)
00098 {
00099 assign (rkyVALUE);
00100 setNull (false);
00101 }
00102
00103
00104 public:
00105
00106
00107
00108
00109
00114 mpcl::text::TString get (void) const
00115 {
00116 mpcl::text::TString yResult;
00117
00118 if ( isNull() )
00119 {
00120 yResult = "null";
00121 }
00122 else
00123 {
00124 yResult = *this;
00125 }
00126 return yResult;
00127 }
00128
00129 };
00130
00131 }
00132
00133
00134 #endif // not _UESQL_SEARCH_CONDITION__