00001
00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021 00022 00023
00024
00025 #include "nel/ai/agent/agent.h"
00026 #include "nel/ai/agent/agent_object.h"
00027 #include "nel/ai/logic/boolval.h"
00028
00029 namespace NLAIAGENT
00030 {
00031 const NLAIC::CIdentType &CStringType::getType() const
00032 {
00033 return IdStringType;
00034 }
00035
00036 IObjetOp &CStringType::operator += (const IObjetOp &a)
00037 {
00038 const IVarName &b = (const IVarName &)a;
00039 *_Str += b;
00040 return *this;
00041 }
00042
00043 IObjetOp &CStringType::operator -= (const IObjetOp &a)
00044 {
00045 const IVarName &b = (const IVarName &)a;
00046 *_Str -= b;
00047 return *this;
00048 }
00049
00050
00051 IObjetOp *CStringType::operator < (IObjetOp &a) const
00052 {
00053 const IVarName &b = (const IVarName &)a;
00054 NLAILOGIC::CBoolType *x = new NLAILOGIC::CBoolType(*_Str < b);
00055 return x;
00056 }
00057
00058 IObjetOp *CStringType::operator > (IObjetOp &a) const
00059 {
00060 const IVarName &b = (const IVarName &)a;
00061 NLAILOGIC::CBoolType *x = new NLAILOGIC::CBoolType(*_Str > b);
00062 return x;
00063 }
00064
00065 IObjetOp *CStringType::operator <= (IObjetOp &a) const
00066 {
00067 const IVarName &b = (const IVarName &)a;
00068 NLAILOGIC::CBoolType *x = new NLAILOGIC::CBoolType(!(*_Str > b));
00069 return x;
00070 }
00071
00072 IObjetOp *CStringType::operator >= (IObjetOp &a) const
00073 {
00074 const IVarName &b = (const IVarName &)a;
00075 NLAILOGIC::CBoolType *x = new NLAILOGIC::CBoolType(!(*_Str < b));
00076 return x;
00077 }
00078
00079 IObjetOp *CStringType::operator != (IObjetOp &a) const
00080 {
00081 const IVarName &b = (const IVarName &)a;
00082 NLAILOGIC::CBoolType *x = new NLAILOGIC::CBoolType(!(*_Str == b));
00083 return x;
00084 }
00085
00086 bool CStringType::operator < (const CStringType &a) const
00087 {
00088 return *_Str < *a._Str;
00089 }
00090
00091 const IObjectIA::CProcessResult &CStringType::run()
00092 {
00093 return IObjectIA::ProcessRun;
00094 }
00095
00096 }