Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

mangle.h

Go to the documentation of this file.
00001 // AUTOMATICALLY GENERATED -- DO NOT EDIT!         -*- c++ -*-
00002 
00003 #ifndef mangle_h
00004 #define mangle_h
00005 
00006 #include <string>
00007 #include <deque>
00008 #include "hash-aux.h"
00009 
00010 //
00011 // INTERFACE definition follows 
00012 //
00013 
00014 
00015 class Abstract_scope;
00016 class Ptree;
00017 
00029 class Mangle
00030 {
00031   typedef std::hash_map<void*,std::string> Bind_map;
00032   typedef std::deque<std::string> Scopes;
00033 
00034   Scopes          _scope;
00035   Bind_map        _map;
00036   std::string     _current_scope;
00037   Abstract_scope* _env;
00038 
00039 public:  
00040   Mangle();
00041   
00042   void enter_scope(const std::string& scopename, char symprefix);
00043   
00044   void leave_scope();
00045   
00046   std::string& insert(/*const*/ Ptree& name,
00047   char symprefix);
00048   
00049   bool lookup_global_name(/*const*/ Ptree& name,
00050   std::string* out_global_name);
00051 
00052 private:  
00053   std::string current_scope();
00054 };
00055 
00056 #endif // mangle_h

Generated on Mon Feb 10 17:32:50 2003 for VFiasco Semantics Compiler by doxygen1.2.15