lestes::md::types::tm_dt_struct_base Class Reference

Struct data type. More...

#include <tm_data_type_base.g.hh>

Inheritance diagram for lestes::md::types::tm_dt_struct_base:

Inheritance graph
[legend]
List of all members.

Public Member Functions

ptr< ::lestes::std::list<
srp< tm_dt_struct_member_base > > > 
members_get () const
 The method members_get returns the value of the field tm_dt_struct_base::members.
void members_set (const ptr< ::lestes::std::list< srp< tm_dt_struct_member_base > > > &)
 The method members_set sets the field tm_dt_struct_base::members to the given value.
virtual tm_data_type_base::kind_type kind_get ()
 Returns kind of the data type represented by this instance.
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

 tm_dt_struct_base (tm_data_type_base::id_type a__tm_data_type_base__id, format_type a__tm_data_type_base__format, ulint a__tm_data_type_base__bitwidth, ulint a__tm_data_type_base__alignment, ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg, lstring a__tm_data_type_base__asm_output, lstring a__tm_data_type_base__asm_decl, ptr< ::lestes::std::list< srp< tm_dt_struct_member_base > > > a__tm_dt_struct_base__members)
 Generated constructor for class tm_dt_struct_base.
virtual void gc_mark ()
 Marking routine for class tm_dt_struct_base.

Private Attributes

srp< ::lestes::std::list<
srp< tm_dt_struct_member_base > > > 
members
 List of struct's fields.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Struct data type.

Struct contains data fields. Each field is of its own datatype. Info about its size, offset and its higher-level declaration is stored with each field. This additional info is used to e.g. compute its placement within the struct.

Concrete implementation is target machine-dependent and it is placed in /target/machine/${TARGET_CPU}/lestes/backend/target/ directory.


Constructor & Destructor Documentation

lestes::md::types::tm_dt_struct_base::tm_dt_struct_base ( tm_data_type_base::id_type  a__tm_data_type_base__id,
format_type  a__tm_data_type_base__format,
ulint  a__tm_data_type_base__bitwidth,
ulint  a__tm_data_type_base__alignment,
ptr< ::lestes::md::registers::tm_register_base a__tm_data_type_base__return_reg,
lstring  a__tm_data_type_base__asm_output,
lstring  a__tm_data_type_base__asm_decl,
ptr< ::lestes::std::list< srp< tm_dt_struct_member_base > > >  a__tm_dt_struct_base__members 
) [protected]

Generated constructor for class tm_dt_struct_base.

Generated constructor for class tm_dt_struct_base.

Author:
lsg


Member Function Documentation

ptr<::lestes::std::list< srp< tm_dt_struct_member_base > > > lestes::md::types::tm_dt_struct_base::members_get (  )  const

The method members_get returns the value of the field tm_dt_struct_base::members.

Returns:
The value of tm_dt_struct_base::members.
Author:
lsg

void lestes::md::types::tm_dt_struct_base::members_set ( const ptr< ::lestes::std::list< srp< tm_dt_struct_member_base > > > &  x  ) 

The method members_set sets the field tm_dt_struct_base::members to the given value.

Parameters:
[in] x The new value to set tm_dt_struct_base::members to.
Author:
lsg

tm_data_type_base::kind_type lestes::md::types::tm_dt_struct_base::kind_get (  )  [virtual]

Returns kind of the data type represented by this instance.

Returns kind of the data type.

Returns:
Data type kind.

Implements lestes::md::types::tm_data_type_base.

ptr< object::reflection_list > lestes::md::types::tm_dt_struct_base::reflection_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::md::types::tm_data_type_base.

Reimplemented in lestes::md::types::tm_dt_struct.

ptr< object::field_list_list > lestes::md::types::tm_dt_struct_base::field_values_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::md::types::tm_data_type_base.

Reimplemented in lestes::md::types::tm_dt_struct.

void lestes::md::types::tm_dt_struct_base::gc_mark ( void   )  [protected, virtual]

Marking routine for class tm_dt_struct_base.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::md::types::tm_data_type_base.

Reimplemented in lestes::md::types::tm_dt_struct.


Member Data Documentation

srp< ::lestes::std::list< srp< tm_dt_struct_member_base > > > lestes::md::types::tm_dt_struct_base::members [private]

List of struct's fields.

ptr< object::reflection_list > lestes::md::types::tm_dt_struct_base::reflection = reflection [static, private]

Reimplemented from lestes::md::types::tm_data_type_base.

Reimplemented in lestes::md::types::tm_dt_struct.


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