cnode/True.h
00001 /*
00002  * True.h
00003  *
00004  *  Created on: Jan 22, 2009
00005  *      Author: tdillig
00006  */
00007 
00008 #ifndef TRUE_H_
00009 #define TRUE_H_
00010 
00011 
00012 
00013 
00014 #include "CNode.h"
00015 
00016 class True: public CNode {
00017         friend class CNode;
00018         friend class boost::serialization::access;
00019         template<class Archive>
00020         void save(Archive & ar, const unsigned int version) const
00021         {
00022                 ar & boost::serialization::base_object<CNode>(*this);
00023         }
00024         template<class Archive>
00025         void load(Archive & ar, const unsigned int version)
00026         {
00027                 ar & boost::serialization::base_object<CNode>(*this);
00028                 hash_c = ~0;
00029 
00030         }
00031         BOOST_SERIALIZATION_SPLIT_MEMBER()
00032 protected:
00033         True();
00034         virtual ~True();
00035 public:
00036         static CNode* make();
00037         virtual bool operator==(const CNode& other);
00038         virtual string to_string();
00039         virtual CNode* substitute(map<Term*, Term*>& subs);
00040 };
00041 
00042 
00043 
00044 #endif /* TRUE_H_ */