lestes::lang::cplus::sem::ss_breakable_stmt Class Reference

Base class for breakable statements. More...

#include <ss_statement.g.hh>

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

Inheritance graph
[legend]
List of all members.

Public Member Functions

ptr< ss_compound_stmtbody_get () const
 The method body_get returns the value of the field ss_breakable_stmt::body.
void body_set (const ptr< ss_compound_stmt > &)
 The method body_set sets the field ss_breakable_stmt::body to the given value.
ptr< ss_expressioncondition_get () const
 The method condition_get returns the value of the field ss_breakable_stmt::condition.
void condition_set (const ptr< ss_expression > &)
 The method condition_set sets the field ss_breakable_stmt::condition to the given value.
virtual void accept_ss_statement_visitor (ptr< ss_statement_visitor > v) override
virtual ptr< reflection_listreflection_get () const
 for purposes of dumping
virtual ptr< field_list_listfield_values_get () const
 for purposes of dumping

Protected Member Functions

 ss_breakable_stmt (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels, ptr< ss_compound_stmt > a__ss_statement__parent, ptr< ss_sp > a__ss_statement__psp, ptr< ss_sp > a__ss_statement__nsp, ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points, ptr< ss_compound_stmt > a__ss_breakable_stmt__body, ptr< ss_expression > a__ss_breakable_stmt__condition)
 Generated constructor for class ss_breakable_stmt.
virtual void gc_mark ()
 Marking routine for class ss_breakable_stmt.

Private Attributes

srp< ss_compound_stmtbody
srp< ss_expressioncondition

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Base class for breakable statements.


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_breakable_stmt::ss_breakable_stmt ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ::lestes::std::list< srp< ss_label > > >  a__ss_statement__labels,
ptr< ss_compound_stmt a__ss_statement__parent,
ptr< ss_sp a__ss_statement__psp,
ptr< ss_sp a__ss_statement__nsp,
ptr< ::lestes::std::list< srp< ss_sp > > >  a__ss_statement__sequence_points,
ptr< ss_compound_stmt a__ss_breakable_stmt__body,
ptr< ss_expression a__ss_breakable_stmt__condition 
) [protected]

Generated constructor for class ss_breakable_stmt.

Generated constructor for class ss_breakable_stmt.

Author:
lsg


Member Function Documentation

ptr< ss_compound_stmt > lestes::lang::cplus::sem::ss_breakable_stmt::body_get (  )  const

The method body_get returns the value of the field ss_breakable_stmt::body.

Returns:
The value of ss_breakable_stmt::body.
Author:
lsg

void lestes::lang::cplus::sem::ss_breakable_stmt::body_set ( const ptr< ss_compound_stmt > &  x  ) 

The method body_set sets the field ss_breakable_stmt::body to the given value.

Parameters:
[in] x The new value to set ss_breakable_stmt::body to.
Author:
lsg

ptr< ss_expression > lestes::lang::cplus::sem::ss_breakable_stmt::condition_get (  )  const

The method condition_get returns the value of the field ss_breakable_stmt::condition.

Returns:
The value of ss_breakable_stmt::condition.
Author:
lsg

void lestes::lang::cplus::sem::ss_breakable_stmt::condition_set ( const ptr< ss_expression > &  x  ) 

The method condition_set sets the field ss_breakable_stmt::condition to the given value.

Parameters:
[in] x The new value to set ss_breakable_stmt::condition to.
Author:
lsg

virtual void lestes::lang::cplus::sem::ss_breakable_stmt::accept_ss_statement_visitor ( ptr< ss_statement_visitor v  )  [pure virtual]

Implements lestes::lang::cplus::sem::ss_statement.

Implemented in lestes::lang::cplus::sem::ss_switch_stmt, lestes::lang::cplus::sem::ss_iteration_stmt, lestes::lang::cplus::sem::ss_do, lestes::lang::cplus::sem::ss_while, and lestes::lang::cplus::sem::ss_for.

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

for purposes of dumping

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

Reimplemented in lestes::lang::cplus::sem::ss_switch_stmt, lestes::lang::cplus::sem::ss_iteration_stmt, lestes::lang::cplus::sem::ss_do, lestes::lang::cplus::sem::ss_while, and lestes::lang::cplus::sem::ss_for.

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

for purposes of dumping

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

Reimplemented in lestes::lang::cplus::sem::ss_switch_stmt, lestes::lang::cplus::sem::ss_iteration_stmt, lestes::lang::cplus::sem::ss_do, lestes::lang::cplus::sem::ss_while, and lestes::lang::cplus::sem::ss_for.

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

Marking routine for class ss_breakable_stmt.

Marking routine is used for garbage collection.

Author:
lsg

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

Reimplemented in lestes::lang::cplus::sem::ss_switch_stmt, lestes::lang::cplus::sem::ss_iteration_stmt, lestes::lang::cplus::sem::ss_do, lestes::lang::cplus::sem::ss_while, and lestes::lang::cplus::sem::ss_for.


Member Data Documentation

srp< ss_compound_stmt > lestes::lang::cplus::sem::ss_breakable_stmt::body [private]

Reference to additional scope wrapping just the do, for, while, and switch. This scope is used to enforce visibility of any variable declared inside the condition of the breakable.

srp< ss_expression > lestes::lang::cplus::sem::ss_breakable_stmt::condition [private]

This is of type expression, because the possible declaration is already accounted for in ss_breakable_stmt::body.

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

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

Reimplemented in lestes::lang::cplus::sem::ss_switch_stmt, lestes::lang::cplus::sem::ss_iteration_stmt, lestes::lang::cplus::sem::ss_do, lestes::lang::cplus::sem::ss_while, and lestes::lang::cplus::sem::ss_for.


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