00001 // This file is automatically generated, do not edit. 00002 00003 #ifndef lestes__lang__cplus__sem__li_by_name_in_single_scope_g_hh__included 00004 #define lestes__lang__cplus__sem__li_by_name_in_single_scope_g_hh__included 00005 00006 #include <lestes/common.hh> 00007 #include <lestes/lang/cplus/sem/lu_typedef.hh> 00008 #include <lestes/lang/cplus/sem/ss_enums.g.hh> 00009 00010 #include <lestes/std/objectize_macros.hh> 00011 package(lestes); 00012 package(std); 00013 class object; 00014 end_package(std); 00015 end_package(lestes); 00016 00017 package(lestes); 00018 package(std); 00019 class source_location; 00020 end_package(std); 00021 end_package(lestes); 00022 00023 package(lestes); 00024 package(lang); 00025 package(cplus); 00026 package(sem); 00027 class ss_decl_name; 00028 end_package(sem); 00029 end_package(cplus); 00030 end_package(lang); 00031 end_package(lestes); 00032 00033 package(lestes); 00034 package(lang); 00035 package(cplus); 00036 package(sem); 00037 class ss_decl_seq; 00038 end_package(sem); 00039 end_package(cplus); 00040 end_package(lang); 00041 end_package(lestes); 00042 00043 package(lestes); 00044 package(lang); 00045 package(cplus); 00046 package(sem); 00047 class ss_structure_declaration; 00048 end_package(sem); 00049 end_package(cplus); 00050 end_package(lang); 00051 end_package(lestes); 00052 00053 package(lestes); 00054 package(lang); 00055 package(cplus); 00056 package(sem); 00057 00058 00059 class li_by_name_in_single_scope; 00060 00061 00062 /*! \brief Lookup of name in single scope. 00063 00064 Searches a single scope for all entities of a given name, resolving using declarations. 00065 */ 00066 class li_by_name_in_single_scope : public ::lestes::std::object { 00067 public: 00068 //! Searches for given name in a single scope. 00069 ptr< declaration_set_type > process(ptr< ::lestes::lang::cplus::sem::ss_decl_name > name, ptr< ::lestes::lang::cplus::sem::ss_decl_seq > scope); 00070 00071 //! Searches for given name in a single scope. 00072 ptr< declaration_set_type > process_preserve_usings(ptr< ::lestes::lang::cplus::sem::ss_decl_name > name, ptr< ::lestes::lang::cplus::sem::ss_decl_seq > scope); 00073 00074 00075 //! Generated instance() method for singleton class li_by_name_in_single_scope. 00076 static ptr< li_by_name_in_single_scope > instance (); 00077 00078 00079 00080 //! for purposes of dumping 00081 virtual ptr<reflection_list> reflection_get() const; 00082 //! for purposes of dumping 00083 virtual ptr<field_list_list> field_values_get() const; 00084 00085 protected: 00086 //! Generated constructor for class li_by_name_in_single_scope. 00087 li_by_name_in_single_scope ( 00088 ); 00089 00090 //! Marking routine for class li_by_name_in_single_scope. 00091 virtual void gc_mark(); 00092 00093 private: 00094 static ptr<reflection_list> reflection; 00095 static ptr<li_by_name_in_single_scope> the_instance; 00096 00097 }; // li_by_name_in_single_scope 00098 00099 00100 end_package(sem); 00101 end_package(cplus); 00102 end_package(lang); 00103 end_package(lestes); 00104 00105 #endif // lestes__lang__cplus__sem__li_by_name_in_single_scope_g_hh__included
1.5.1-20070107