as_class_key_to_ss_access_specifier.g.cc

Go to the documentation of this file.
00001 // This file is automatically generated, do not edit.
00002 
00003 #include <lestes/lang/cplus/sem/as_decl.g.hh>
00004 
00005 #include <lestes/std/list.hh>
00006 #include <lestes/std/pair.hh>
00007 #include <lestes/std/reflect.hh>
00008 
00009 #include <lestes/lang/cplus/sem/as_class_key_to_ss_access_specifier.g.hh>
00010 
00011 package(lestes);
00012 package(lang);
00013 package(cplus);
00014 package(sem);
00015 
00016 
00017 // ------------- Class as_class_key_to_ss_access_specifier follows. -------------
00018 
00019 /*!
00020    \returns The value of as_class_key_to_ss_access_specifier::access_specifier.
00021    \author lsg
00022  */
00023 ss_access_specifier::type as_class_key_to_ss_access_specifier::access_specifier_get() const
00024 {
00025         return access_specifier;
00026 }
00027 
00028 /*!
00029    \param[in] x The new value to set as_class_key_to_ss_access_specifier::access_specifier to.
00030    \author lsg
00031  */
00032 void as_class_key_to_ss_access_specifier::access_specifier_set(ss_access_specifier::type x)
00033 {
00034         as_class_key_to_ss_access_specifier::access_specifier = x;
00035 }
00036 
00037 /*!
00038    This factory method for class as_class_key_to_ss_access_specifier takes values of all fields as arguments.
00039    \author lsg
00040  */
00041 ptr< as_class_key_to_ss_access_specifier > as_class_key_to_ss_access_specifier::create(ss_access_specifier::type a__as_class_key_to_ss_access_specifier__access_specifier)
00042 {
00043         return ptr< as_class_key_to_ss_access_specifier > ( new as_class_key_to_ss_access_specifier(a__as_class_key_to_ss_access_specifier__access_specifier) );
00044 }
00045 
00046 /*!
00047    This factory method for class as_class_key_to_ss_access_specifier uses initializers.
00048    \author lsg
00049  */
00050 ptr< as_class_key_to_ss_access_specifier > as_class_key_to_ss_access_specifier::create()
00051 {
00052         return ptr< as_class_key_to_ss_access_specifier > ( new as_class_key_to_ss_access_specifier(ss_access_specifier::ACCESS_PUBLIC) );
00053 }
00054 
00055 /*!
00056    Generated constructor for class as_class_key_to_ss_access_specifier.
00057    \author lsg
00058  */
00059 as_class_key_to_ss_access_specifier::as_class_key_to_ss_access_specifier (ss_access_specifier::type a__as_class_key_to_ss_access_specifier__access_specifier)
00060         : as_class_key_visitor(), access_specifier(a__as_class_key_to_ss_access_specifier__access_specifier)
00061 {}
00062 
00063 ptr< object::reflection_list > as_class_key_to_ss_access_specifier::reflection_get() const
00064 {
00065         if (!reflection) {
00066                 typedef class_reflection::field_metadata md;
00067                 typedef class_reflection::field_metadata_list mdlist;
00068                 ptr<mdlist> mdl = mdlist::create();
00069                 mdl->push_back( md::create( "access_specifier", "ss_access_specifier::type" ) );
00070                 reflection = reflection_list::create( as_class_key_visitor::reflection_get() );
00071                 reflection->push_back( class_reflection::create( "as_class_key_to_ss_access_specifier", mdl ) );
00072         }
00073         return reflection;
00074 }
00075 
00076 ptr< object::field_list_list > as_class_key_to_ss_access_specifier::field_values_get() const
00077 {
00078         ptr < field_list_list > result = as_class_key_visitor::field_values_get();
00079         result->push_back( value_list::create() );
00080         result->back()->push_back( objectize< ss_access_specifier::type > ::create( this->access_specifier ) );
00081         return result;
00082 }
00083 
00084 ss_access_specifier::type as_class_key_to_ss_access_specifier::process( const ptr< ::lestes::lang::cplus::sem::as_class_key > & o )
00085 {
00086         lassert2( o, "Cannot visit NULL object." );
00087         o->accept_as_class_key_visitor( ptr< as_class_key_visitor >(this) );
00088         return access_specifier_get();
00089 }
00090 
00091 
00092 /*!
00093    Marking routine is used for garbage collection.
00094    \author lsg
00095  */
00096 void as_class_key_to_ss_access_specifier::gc_mark()
00097 {
00098         as_class_key_visitor::gc_mark();
00099 }
00100 
00101 // End of class as_class_key_to_ss_access_specifier.
00102 
00103 
00104 // static data members follow 
00105 ptr<object::reflection_list> as_class_key_to_ss_access_specifier::reflection = reflection;
00106 
00107 end_package(sem);
00108 end_package(cplus);
00109 end_package(lang);
00110 end_package(lestes);
00111 

Generated on Mon Feb 12 18:22:12 2007 for lestes by doxygen 1.5.1-20070107