lestes::lang::cplus::sem::ss_builtin_operator_declaration Class Reference

This class represents concieved declaration for builtin operators. More...

#include <ss_declaration.g.hh>

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

lestes::lang::cplus::sem::ss_function_declaration lestes::lang::cplus::sem::ss_befriendable_declaration lestes::lang::cplus::sem::ss_declaration_with_access_specifier lestes::lang::cplus::sem::ss_declaration lestes::intercode::ss_base_with_location lestes::intercode::ss_base lestes::intercode::intercode lestes::std::object lestes::std::mem::keystone List of all members.

Public Member Functions

virtual void accept_ss_declaration_visitor (ptr< ss_declaration_visitor > v)
virtual ulint accept_ss_decl2ulint_base (ptr< ss_decl2ulint_base > v)
virtual lstring accept_ss_decl2lstring_base (ptr< ss_decl2lstring_base > v)
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_builtin_operator_declarationcreate (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_declaration_time > a__ss_declaration__visible_since, ptr< ss_declaration_time > a__ss_declaration__decl_time, ptr< ss_decl_name > a__ss_declaration__name, ptr< ss_decl_seq > a__ss_declaration__contained_in, ptr< ss_type > a__ss_declaration__type, ptr< ss_linkage > a__ss_declaration__linkage, ss_access_specifier::type a__ss_declaration_with_access_specifier__access_specifier, ss_storage_class::type a__ss_declaration_with_access_specifier__storage_class, ptr< ::lestes::std::set< srp< ss_struct_base > > > a__ss_befriendable_declaration__friend_of, ptr< ss_decl_seq > a__ss_function_declaration__parameters, ptr< ss_compound_stmt > a__ss_function_declaration__body, ptr< ::lestes::std::map< srp< ss_id_label >, srp< ss_statement > > > a__ss_function_declaration__labels, ptr< ::lestes::std::list< srp< ss_decl_seq > > > a__ss_function_declaration__historical_parameters)
 First generated factory method for class ss_builtin_operator_declaration.
static ptr< ss_builtin_operator_declarationcreate (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_declaration_time > a__ss_declaration__visible_since, ptr< ss_declaration_time > a__ss_declaration__decl_time, ptr< ss_decl_name > a__ss_declaration__name, ptr< ss_decl_seq > a__ss_declaration__contained_in, ptr< ss_type > a__ss_declaration__type, ptr< ss_linkage > a__ss_declaration__linkage, ptr< ss_decl_seq > a__ss_function_declaration__parameters, ptr< ss_compound_stmt > a__ss_function_declaration__body)
 Second generated factory method for class ss_builtin_operator_declaration.

Protected Member Functions

 ss_builtin_operator_declaration (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_declaration_time > a__ss_declaration__visible_since, ptr< ss_declaration_time > a__ss_declaration__decl_time, ptr< ss_decl_name > a__ss_declaration__name, ptr< ss_decl_seq > a__ss_declaration__contained_in, ptr< ss_type > a__ss_declaration__type, ptr< ss_linkage > a__ss_declaration__linkage, ss_access_specifier::type a__ss_declaration_with_access_specifier__access_specifier, ss_storage_class::type a__ss_declaration_with_access_specifier__storage_class, ptr< ::lestes::std::set< srp< ss_struct_base > > > a__ss_befriendable_declaration__friend_of, ptr< ss_decl_seq > a__ss_function_declaration__parameters, ptr< ss_compound_stmt > a__ss_function_declaration__body, ptr< ::lestes::std::map< srp< ss_id_label >, srp< ss_statement > > > a__ss_function_declaration__labels, ptr< ::lestes::std::list< srp< ss_decl_seq > > > a__ss_function_declaration__historical_parameters)
 Generated constructor for class ss_builtin_operator_declaration.
virtual void gc_mark ()
 Marking routine for class ss_builtin_operator_declaration.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

This class represents concieved declaration for builtin operators.

Instances of this class are used in the overload resolution process as per [13.6]. These objects shall not be constructed elsewhere

Definition at line 1387 of file ss_declaration.g.hh.


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_builtin_operator_declaration::ss_builtin_operator_declaration ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_declaration_time a__ss_declaration__visible_since,
ptr< ss_declaration_time a__ss_declaration__decl_time,
ptr< ss_decl_name a__ss_declaration__name,
ptr< ss_decl_seq a__ss_declaration__contained_in,
ptr< ss_type a__ss_declaration__type,
ptr< ss_linkage a__ss_declaration__linkage,
ss_access_specifier::type  a__ss_declaration_with_access_specifier__access_specifier,
ss_storage_class::type  a__ss_declaration_with_access_specifier__storage_class,
ptr< ::lestes::std::set< srp< ss_struct_base > > >  a__ss_befriendable_declaration__friend_of,
ptr< ss_decl_seq a__ss_function_declaration__parameters,
ptr< ss_compound_stmt a__ss_function_declaration__body,
ptr< ::lestes::std::map< srp< ss_id_label >, srp< ss_statement > > >  a__ss_function_declaration__labels,
ptr< ::lestes::std::list< srp< ss_decl_seq > > >  a__ss_function_declaration__historical_parameters 
) [protected]

Generated constructor for class ss_builtin_operator_declaration.

Generated constructor for class ss_builtin_operator_declaration.

Author:
lsg

Definition at line 2525 of file ss_declaration.g.cc.

Referenced by create().

02539         : ss_function_declaration(a__ss_base_with_location__location,
02540                 a__ss_declaration__visible_since,
02541                 a__ss_declaration__decl_time,
02542                 a__ss_declaration__name,
02543                 a__ss_declaration__contained_in,
02544                 a__ss_declaration__type,
02545                 a__ss_declaration__linkage,
02546                 a__ss_declaration_with_access_specifier__access_specifier,
02547                 a__ss_declaration_with_access_specifier__storage_class,
02548                 a__ss_befriendable_declaration__friend_of,
02549                 a__ss_function_declaration__parameters,
02550                 a__ss_function_declaration__body,
02551                 a__ss_function_declaration__labels,
02552                 a__ss_function_declaration__historical_parameters)
02553 {}


Member Function Documentation

void lestes::lang::cplus::sem::ss_builtin_operator_declaration::accept_ss_declaration_visitor ( ptr< ss_declaration_visitor v  )  [virtual]

Reimplemented from lestes::lang::cplus::sem::ss_function_declaration.

Definition at line 2454 of file ss_declaration.g.cc.

02455 {
02456         return v->visit_ss_builtin_operator_declaration( this );
02457 }

ulint lestes::lang::cplus::sem::ss_builtin_operator_declaration::accept_ss_decl2ulint_base ( ptr< ss_decl2ulint_base v  )  [virtual]

Reimplemented from lestes::lang::cplus::sem::ss_function_declaration.

Definition at line 2459 of file ss_declaration.g.cc.

02460 {
02461         return v->visit_ss_builtin_operator_declaration( this );
02462 }

lstring lestes::lang::cplus::sem::ss_builtin_operator_declaration::accept_ss_decl2lstring_base ( ptr< ss_decl2lstring_base v  )  [virtual]

Reimplemented from lestes::lang::cplus::sem::ss_function_declaration.

Definition at line 2464 of file ss_declaration.g.cc.

02465 {
02466         return v->visit_ss_builtin_operator_declaration( this );
02467 }

ptr< ss_builtin_operator_declaration > lestes::lang::cplus::sem::ss_builtin_operator_declaration::create ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_declaration_time a__ss_declaration__visible_since,
ptr< ss_declaration_time a__ss_declaration__decl_time,
ptr< ss_decl_name a__ss_declaration__name,
ptr< ss_decl_seq a__ss_declaration__contained_in,
ptr< ss_type a__ss_declaration__type,
ptr< ss_linkage a__ss_declaration__linkage,
ss_access_specifier::type  a__ss_declaration_with_access_specifier__access_specifier,
ss_storage_class::type  a__ss_declaration_with_access_specifier__storage_class,
ptr< ::lestes::std::set< srp< ss_struct_base > > >  a__ss_befriendable_declaration__friend_of,
ptr< ss_decl_seq a__ss_function_declaration__parameters,
ptr< ss_compound_stmt a__ss_function_declaration__body,
ptr< ::lestes::std::map< srp< ss_id_label >, srp< ss_statement > > >  a__ss_function_declaration__labels,
ptr< ::lestes::std::list< srp< ss_decl_seq > > >  a__ss_function_declaration__historical_parameters 
) [static]

First generated factory method for class ss_builtin_operator_declaration.

This factory method for class ss_builtin_operator_declaration takes values of all fields as arguments.

Author:
lsg

Reimplemented from lestes::lang::cplus::sem::ss_function_declaration.

Definition at line 2473 of file ss_declaration.g.cc.

References ss_builtin_operator_declaration().

02487 {
02488         return ptr< ss_builtin_operator_declaration > ( new ss_builtin_operator_declaration(a__ss_base_with_location__location,
02489                 a__ss_declaration__visible_since,
02490                 a__ss_declaration__decl_time,
02491                 a__ss_declaration__name,
02492                 a__ss_declaration__contained_in,
02493                 a__ss_declaration__type,
02494                 a__ss_declaration__linkage,
02495                 a__ss_declaration_with_access_specifier__access_specifier,
02496                 a__ss_declaration_with_access_specifier__storage_class,
02497                 a__ss_befriendable_declaration__friend_of,
02498                 a__ss_function_declaration__parameters,
02499                 a__ss_function_declaration__body,
02500                 a__ss_function_declaration__labels,
02501                 a__ss_function_declaration__historical_parameters) );
02502 }

ptr< ss_builtin_operator_declaration > lestes::lang::cplus::sem::ss_builtin_operator_declaration::create ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_declaration_time a__ss_declaration__visible_since,
ptr< ss_declaration_time a__ss_declaration__decl_time,
ptr< ss_decl_name a__ss_declaration__name,
ptr< ss_decl_seq a__ss_declaration__contained_in,
ptr< ss_type a__ss_declaration__type,
ptr< ss_linkage a__ss_declaration__linkage,
ptr< ss_decl_seq a__ss_function_declaration__parameters,
ptr< ss_compound_stmt a__ss_function_declaration__body 
) [static]

Second generated factory method for class ss_builtin_operator_declaration.

This factory method for class ss_builtin_operator_declaration uses initializers.

Author:
lsg

Reimplemented from lestes::lang::cplus::sem::ss_function_declaration.

Definition at line 2508 of file ss_declaration.g.cc.

References lestes::lang::cplus::sem::ss_access_specifier::ACCESS_PUBLIC, lestes::intercode::intercode::create(), ss_builtin_operator_declaration(), and lestes::lang::cplus::sem::ss_storage_class::ST_NONE.

02517 {
02518         return ptr< ss_builtin_operator_declaration > ( new ss_builtin_operator_declaration(a__ss_base_with_location__location, a__ss_declaration__visible_since, a__ss_declaration__decl_time, a__ss_declaration__name, a__ss_declaration__contained_in, a__ss_declaration__type, a__ss_declaration__linkage, ss_access_specifier::ACCESS_PUBLIC, ss_storage_class::ST_NONE, ::lestes::std::set< srp< ss_struct_base > > ::create(), a__ss_function_declaration__parameters, a__ss_function_declaration__body, ::lestes::std::map< srp< ss_id_label >, srp< ss_statement > > ::create(), ::lestes::std::list< srp< ss_decl_seq > > ::create()) );
02519 }

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

for purposes of dumping

Reimplemented from lestes::lang::cplus::sem::ss_function_declaration.

Definition at line 2555 of file ss_declaration.g.cc.

References lestes::std::list< T >::create(), reflection, and lestes::lang::cplus::sem::ss_function_declaration::reflection_get().

02556 {
02557         if (!reflection) {
02558                 typedef class_reflection::field_metadata md;
02559                 typedef class_reflection::field_metadata_list mdlist;
02560                 ptr<mdlist> mdl = mdlist::create();
02561                 reflection = reflection_list::create( ss_function_declaration::reflection_get() );
02562                 reflection->push_back( class_reflection::create( "ss_builtin_operator_declaration", mdl ) );
02563         }
02564         return reflection;
02565 }

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

for purposes of dumping

Reimplemented from lestes::lang::cplus::sem::ss_function_declaration.

Definition at line 2567 of file ss_declaration.g.cc.

References lestes::lang::cplus::sem::ss_function_declaration::field_values_get().

02568 {
02569         ptr < field_list_list > result = ss_function_declaration::field_values_get();
02570         return result;
02571 }

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

Marking routine for class ss_builtin_operator_declaration.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::lang::cplus::sem::ss_function_declaration.

Definition at line 2578 of file ss_declaration.g.cc.

References lestes::lang::cplus::sem::ss_function_declaration::gc_mark().

02579 {
02580         ss_function_declaration::gc_mark();
02581 }


Member Data Documentation

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

Reimplemented from lestes::lang::cplus::sem::ss_function_declaration.

Definition at line 1451 of file ss_declaration.g.hh.

Referenced by reflection_get().


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