atlas  0.6
Classes | Public Types | Public Member Functions | Private Attributes | List of all members
atlas::interpreter::multiple_assignment Class Reference

#include <axis.h>

Inheritance diagram for atlas::interpreter::multiple_assignment:
Inheritance graph
[legend]
Collaboration diagram for atlas::interpreter::multiple_assignment:
Collaboration graph
[legend]

Classes

struct  local_dest
 

Public Types

typedef containers::simple_list< local_destloc_list
 
typedef containers::simple_list< shared_shareglob_list
 
- Public Types inherited from atlas::interpreter::expression_base
enum  level { no_value, single_value, multi_value }
 

Public Member Functions

 multiple_assignment (const id_pat &lhs, expression_ptr &&r, loc_list &&ll, glob_list &&gl, BitMap &&bm)
 
virtual ~multiple_assignment () nothing_new_here
 
virtual void print (std::ostream &out) const
 
virtual void evaluate (level l) const
 
- Public Member Functions inherited from atlas::interpreter::expression_base
 expression_base ()
 
 expression_base (const expression_base &)=delete
 
 expression_base (expression_base &&)=delete
 
expression_baseoperator= (const expression_base &)=delete
 
expression_baseoperator= (expression_base &&)=delete
 
virtual ~expression_base ()
 
void void_eval () const
 
void eval () const
 
void multi_eval () const
 

Private Attributes

id_pat lhs
 
expression_ptr rhs
 
loc_list locals
 
glob_list globals
 
BitMap is_global
 

Member Typedef Documentation

Constructor & Destructor Documentation

atlas::interpreter::multiple_assignment::multiple_assignment ( const id_pat lhs,
expression_ptr &&  r,
loc_list &&  ll,
glob_list &&  gl,
BitMap &&  bm 
)
virtual atlas::interpreter::multiple_assignment::~multiple_assignment ( )

Member Function Documentation

void atlas::interpreter::multiple_assignment::evaluate ( level  l) const
virtual
void atlas::interpreter::multiple_assignment::print ( std::ostream &  out) const
virtual

Member Data Documentation

glob_list atlas::interpreter::multiple_assignment::globals
private
BitMap atlas::interpreter::multiple_assignment::is_global
private
id_pat atlas::interpreter::multiple_assignment::lhs
private
loc_list atlas::interpreter::multiple_assignment::locals
private
expression_ptr atlas::interpreter::multiple_assignment::rhs
private

The documentation for this class was generated from the following files: