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

nci/suif/suif2b/osuif/cpp_osuif/cpp_passes/transforms/cpp_symbol_walkers.h

Go to the documentation of this file.
00001 #ifndef CPP_PASSES__CPP_SYMBOL_WALKERS_H
00002 #define CPP_PASSES__CPP_SYMBOL_WALKERS_H
00003 
00004 #include <common/suif_copyright.h>
00005 #include "suifnodes/suif.h"
00006 
00007 #include "transforms/symbol_walkers.h"
00008 
00009 
00010 class CombinedPassForCpp : public Pass
00011 {
00012   public:
00013     Module* clone() const {return (Module*)this;}
00014 
00015     void do_file_set_block( FileSetBlock* file_set_block );
00016 
00017     CombinedPassForCpp(SuifEnv *env) : Pass(env,"rename_colliding_symbols_for_cpp") {}
00018 };
00019 
00020 class CppCollisionAvoider : public CollisionAvoider
00021 {
00022   public:
00023     CppCollisionAvoider(SuifEnv *env,
00024                          BasicSymbolTable *the_external_symbol_table,
00025                          FileSetBlock* file_set_block)
00026                 : CollisionAvoider(env,
00027                                    the_external_symbol_table,
00028                                    NULL,
00029                                    (file_set_block->get_file_block(0))->get_source_file_name(),
00030                                    false) {}
00031 
00032      ApplyStatus operator () (SuifObject *x);
00033 
00034   protected:
00035     bool ConstructorSymbol( SuifObject * );
00036 
00037 };
00038 
00039 #endif

Generated at Mon Jul 31 13:42:23 2000 for NCI SUIF by doxygen 1.1.2 written by Dimitri van Heesch, © 1997-2000