lestes::lang::cplus::sem::ss_destructor_finder Class Reference

Finds a proper destructor for a given class. More...

#include <ss_finders.g.hh>

Inheritance diagram for lestes::lang::cplus::sem::ss_destructor_finder:

lestes::std::object lestes::std::mem::keystone lestes::lang::cplus::sem::ss_destructor_find List of all members.

Public Member Functions

virtual ptr< ss_function_declarationfind_default_destructor (ptr< ss_struct_base >) override
virtual ptr< reflection_listreflection_get () const
 for purposes of dumping
virtual ptr< field_list_listfield_values_get () const
 for purposes of dumping

Static Public Member Functions

static ptr< ss_destructor_findersingleton_instance_get ()
 The method singleton_instance_get returns the value of the field ss_destructor_finder::singleton_instance.
static void singleton_instance_set (const ptr< ss_destructor_finder > &)
 The method singleton_instance_set sets the field ss_destructor_finder::singleton_instance to the given value.
static ptr< ss_destructor_finderinstance ()

Protected Member Functions

 ss_destructor_finder ()
 Generated constructor for class ss_destructor_finder.
virtual void gc_mark ()
 Marking routine for class ss_destructor_finder.

Static Private Attributes

static ptr< ss_destructor_findersingleton_instance = NULL
static ptr< reflection_listreflection = reflection

Detailed Description

Finds a proper destructor for a given class.

Definition at line 108 of file ss_finders.g.hh.


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_destructor_finder::ss_destructor_finder (  )  [protected]

Generated constructor for class ss_destructor_finder.

Generated constructor for class ss_destructor_finder.

Author:
lsg

Definition at line 151 of file ss_finders.g.cc.

00152         : object()
00153 {}


Member Function Documentation

ptr< ss_destructor_finder > lestes::lang::cplus::sem::ss_destructor_finder::singleton_instance_get (  )  [static]

The method singleton_instance_get returns the value of the field ss_destructor_finder::singleton_instance.

Returns:
The value of ss_destructor_finder::singleton_instance.
Author:
lsg

Definition at line 133 of file ss_finders.g.cc.

References singleton_instance.

Referenced by instance().

00134 {
00135         return singleton_instance;
00136 }

void lestes::lang::cplus::sem::ss_destructor_finder::singleton_instance_set ( const ptr< ss_destructor_finder > &  x  )  [static]

The method singleton_instance_set sets the field ss_destructor_finder::singleton_instance to the given value.

Parameters:
[in] x The new value to set ss_destructor_finder::singleton_instance to.
Author:
lsg

Definition at line 142 of file ss_finders.g.cc.

References singleton_instance.

Referenced by instance().

00143 {
00144         ss_destructor_finder::singleton_instance = x;
00145 }

ptr< ss_destructor_finder > lestes::lang::cplus::sem::ss_destructor_finder::instance (  )  [static]

Definition at line 44 of file ss_finders.cc.

References lestes::lang::cplus::sem::ss_destructor_find::create(), singleton_instance_get(), and singleton_instance_set().

Referenced by lestes::lang::cplus::sem::ss_type2destructor::visit_ss_class().

00044                                                          {
00045         if ( !singleton_instance_get() ) {
00046                 singleton_instance_set(ss_destructor_find::create());
00047         }
00048         return singleton_instance_get();
00049 
00050 }

virtual ptr< ss_function_declaration > lestes::lang::cplus::sem::ss_destructor_finder::find_default_destructor ( ptr< ss_struct_base  )  [pure virtual]

Implemented in lestes::lang::cplus::sem::ss_destructor_find.

ptr< object::reflection_list > lestes::lang::cplus::sem::ss_destructor_finder::reflection_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::std::object.

Reimplemented in lestes::lang::cplus::sem::ss_destructor_find.

Definition at line 155 of file ss_finders.g.cc.

References lestes::std::list< T >::create(), reflection, and lestes::std::object::reflection_get().

Referenced by lestes::lang::cplus::sem::ss_destructor_find::reflection_get().

00156 {
00157         if (!reflection) {
00158                 typedef class_reflection::field_metadata md;
00159                 typedef class_reflection::field_metadata_list mdlist;
00160                 ptr<mdlist> mdl = mdlist::create();
00161                 mdl->push_back( md::create( "singleton_instance", "ss_destructor_finder" ) );
00162                 reflection = reflection_list::create( ::lestes::std::object::reflection_get() );
00163                 reflection->push_back( class_reflection::create( "ss_destructor_finder", mdl ) );
00164         }
00165         return reflection;
00166 }

ptr< object::field_list_list > lestes::lang::cplus::sem::ss_destructor_finder::field_values_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::std::object.

Reimplemented in lestes::lang::cplus::sem::ss_destructor_find.

Definition at line 168 of file ss_finders.g.cc.

References lestes::std::list< T >::create(), and lestes::std::object::field_values_get().

Referenced by lestes::lang::cplus::sem::ss_destructor_find::field_values_get().

00169 {
00170         ptr < field_list_list > result = ::lestes::std::object::field_values_get();
00171         result->push_back( value_list::create() );
00172         result->back()->push_back( this->singleton_instance );
00173         return result;
00174 }

void lestes::lang::cplus::sem::ss_destructor_finder::gc_mark ( void   )  [protected, virtual]

Marking routine for class ss_destructor_finder.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::std::mem::keystone.

Reimplemented in lestes::lang::cplus::sem::ss_destructor_find.

Definition at line 181 of file ss_finders.g.cc.

References lestes::std::mem::keystone::gc_mark().

Referenced by lestes::lang::cplus::sem::ss_destructor_find::gc_mark().

00182 {
00183 	::lestes::std::object::gc_mark();
00184 }


Member Data Documentation

ptr< ss_destructor_finder > lestes::lang::cplus::sem::ss_destructor_finder::singleton_instance = NULL [static, private]

Definition at line 136 of file ss_finders.g.hh.

Referenced by singleton_instance_get(), and singleton_instance_set().

ptr< object::reflection_list > lestes::lang::cplus::sem::ss_destructor_finder::reflection = reflection [static, private]

Reimplemented from lestes::std::object.

Reimplemented in lestes::lang::cplus::sem::ss_destructor_find.

Definition at line 137 of file ss_finders.g.hh.

Referenced by reflection_get().


The documentation for this class was generated from the following files:
Generated on Mon Feb 12 18:25:23 2007 for lestes by doxygen 1.5.1-20070107