lestes::lang::cplus::sem::ss_bind_reference Class Reference

Class for reference binding. More...

#include <ss_expr_unary_op.g.hh>

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

lestes::lang::cplus::sem::ss_unary_expr lestes::lang::cplus::sem::ss_expression 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

ptr< ss_typesrc_type_get () const
 The method src_type_get returns the value of the field ss_bind_reference::src_type.
void src_type_set (const ptr< ss_type > &)
 The method src_type_set sets the field ss_bind_reference::src_type to the given value.
virtual void accept_ss_expression_visitor (ptr< ss_expression_visitor > 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_bind_referencecreate (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_type > a__ss_expression__type, ptr< ss_sp > a__ss_expression__psp, ptr< ss_sp > a__ss_expression__nsp, ptr< ss_expression > a__ss_unary_expr__expr, ptr< ss_type > a__ss_bind_reference__src_type)
 First generated factory method for class ss_bind_reference.

Protected Member Functions

 ss_bind_reference (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_type > a__ss_expression__type, ptr< ss_sp > a__ss_expression__psp, ptr< ss_sp > a__ss_expression__nsp, ptr< ss_expression > a__ss_unary_expr__expr, ptr< ss_type > a__ss_bind_reference__src_type)
 Generated constructor for class ss_bind_reference.
virtual void gc_mark ()
 Marking routine for class ss_bind_reference.

Private Attributes

srp< ss_typesrc_type

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Class for reference binding.

This is conversion operator used to represent reference binding from lvalue to reference.

Definition at line 222 of file ss_expr_unary_op.g.hh.


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_bind_reference::ss_bind_reference ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_type a__ss_expression__type,
ptr< ss_sp a__ss_expression__psp,
ptr< ss_sp a__ss_expression__nsp,
ptr< ss_expression a__ss_unary_expr__expr,
ptr< ss_type a__ss_bind_reference__src_type 
) [protected]

Generated constructor for class ss_bind_reference.

Generated constructor for class ss_bind_reference.

Author:
lsg

Definition at line 402 of file ss_expr_unary_op.g.cc.

Referenced by create().

00408         : ss_unary_expr(a__ss_base_with_location__location,
00409                 a__ss_expression__type,
00410                 a__ss_expression__psp,
00411                 a__ss_expression__nsp,
00412                 a__ss_unary_expr__expr), src_type(checked(a__ss_bind_reference__src_type))
00413 {}


Member Function Documentation

ptr< ss_type > lestes::lang::cplus::sem::ss_bind_reference::src_type_get (  )  const

The method src_type_get returns the value of the field ss_bind_reference::src_type.

Returns:
The value of ss_bind_reference::src_type.
Author:
lsg

Definition at line 360 of file ss_expr_unary_op.g.cc.

References src_type.

00361 {
00362         return src_type;
00363 }

void lestes::lang::cplus::sem::ss_bind_reference::src_type_set ( const ptr< ss_type > &  x  ) 

The method src_type_set sets the field ss_bind_reference::src_type to the given value.

Parameters:
[in] x The new value to set ss_bind_reference::src_type to.
Author:
lsg

Definition at line 369 of file ss_expr_unary_op.g.cc.

References src_type.

00370 {
00371         ss_bind_reference::src_type = x;
00372 }

void lestes::lang::cplus::sem::ss_bind_reference::accept_ss_expression_visitor ( ptr< ss_expression_visitor v  )  [virtual]

Implements lestes::lang::cplus::sem::ss_unary_expr.

Definition at line 374 of file ss_expr_unary_op.g.cc.

00375 {
00376         return v->visit_ss_bind_reference( this );
00377 }

ptr< ss_bind_reference > lestes::lang::cplus::sem::ss_bind_reference::create ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_type a__ss_expression__type,
ptr< ss_sp a__ss_expression__psp,
ptr< ss_sp a__ss_expression__nsp,
ptr< ss_expression a__ss_unary_expr__expr,
ptr< ss_type a__ss_bind_reference__src_type 
) [static]

First generated factory method for class ss_bind_reference.

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

Author:
lsg

Definition at line 383 of file ss_expr_unary_op.g.cc.

References ss_bind_reference().

00389 {
00390         return ptr< ss_bind_reference > ( new ss_bind_reference(a__ss_base_with_location__location,
00391                 a__ss_expression__type,
00392                 a__ss_expression__psp,
00393                 a__ss_expression__nsp,
00394                 a__ss_unary_expr__expr,
00395                 a__ss_bind_reference__src_type) );
00396 }

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

for purposes of dumping

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

Definition at line 415 of file ss_expr_unary_op.g.cc.

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

00416 {
00417         if (!reflection) {
00418                 typedef class_reflection::field_metadata md;
00419                 typedef class_reflection::field_metadata_list mdlist;
00420                 ptr<mdlist> mdl = mdlist::create();
00421                 mdl->push_back( md::create( "src_type", "ss_type" ) );
00422                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
00423                 reflection->push_back( class_reflection::create( "ss_bind_reference", mdl ) );
00424         }
00425         return reflection;
00426 }

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

for purposes of dumping

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

Definition at line 428 of file ss_expr_unary_op.g.cc.

References lestes::std::list< T >::create(), and lestes::lang::cplus::sem::ss_unary_expr::field_values_get().

00429 {
00430         ptr < field_list_list > result = ss_unary_expr::field_values_get();
00431         result->push_back( value_list::create() );
00432         result->back()->push_back( this->src_type );
00433         return result;
00434 }

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

Marking routine for class ss_bind_reference.

Marking routine is used for garbage collection.

Author:
lsg

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

Definition at line 441 of file ss_expr_unary_op.g.cc.

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

00442 {
00443         ss_unary_expr::gc_mark();
00444 }


Member Data Documentation

srp< ss_type > lestes::lang::cplus::sem::ss_bind_reference::src_type [private]

Definition at line 262 of file ss_expr_unary_op.g.hh.

Referenced by src_type_get(), and src_type_set().

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

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

Definition at line 263 of file ss_expr_unary_op.g.hh.

Referenced by reflection_get().


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