00001 #ifndef OBJECT_H_INCLUDED_
00002 #define OBJECT_H_INCLUDED_
00003
00004 #include "definition.h"
00005 #include "rose.h"
00006
00007 namespace risc {
00008
00009 class Object: public Definition {
00010
00011 public:
00012
00016 explicit Object(SgVariableDefinition *ast_node, Type type);
00017
00022 SgVariableDefinition *get_ast_node();
00023
00027 bool is_array();
00028
00033 virtual std::string get_name();
00034
00035
00040 SgVariableSymbol* get_symbol();
00041
00042 bool is_reference();
00043
00044 bool is_pointer();
00045
00046 private:
00047
00051 Object(const Object &o);
00052 };
00053
00054
00055 }
00056
00057
00058 #endif
00059
00060