00001 #ifndef DECLARATION_H_
00002 #define DECLARATION_H_
00003
00004 #include "node.h"
00005 #include <assert.h>
00006
00007 namespace il
00008 {
00012 class declaration : public il::node
00013 {
00014 friend class boost::serialization::access;
00015
00016 template<class Archive>
00017 void serialize(Archive & ar, const unsigned int version)
00018 {
00019 ar & boost::serialization::base_object<il::node>(*this);
00020 }
00021
00022 public:
00023 declaration();
00024 virtual ~declaration();
00025 virtual bool is_fun_decl() = 0;
00026 virtual bool is_var_decl() = 0;
00027 virtual void print()=0;
00028 };
00029
00030 }
00031
00032 #endif