LRDE Tiger Compiler  1.34a $Id: 7fef12e1f5fa43449d667a0eec1d837c40fc1202 $
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
translate::Access Class Reference

Wrapper around frame::Access. More...

#include <access.hh>

Collaboration diagram for translate::Access:

Public Member Functions

 Access (const Level &home, const frame::Access *access)
const Levelhome_get () const
 The Level this Access belongs to.
const frame::Accessaccess_get () const
 The underlying, SL unaware, Frame Access.
tree::rExp exp (const Level &use) const
 The use level wants to use this Access. Return a Tree expression computing this access (including all the static links manipulations to compute the location of the level/frame hosting this variable).

Private Attributes

const Levelhome_
 The Level this Access belongs to.
const frame::Accessaccess_
 The underlying, SL unaware, Frame Access.

Detailed Description

Wrapper around frame::Access.

A translate::Access is composed of a frame::Access and a pointer to the translate::Level which includes this access. This is used when we are using the static links. This is also why we don't see this in frame::Access: the frame module is not supposed to be tuned for Tiger especially, and therefore should not include Tiger related things such as static links.

Constructor & Destructor Documentation

translate::Access::Access ( const Level home,
const frame::Access access 
)
inline

Member Function Documentation

const frame::Access * translate::Access::access_get ( ) const
inline

The underlying, SL unaware, Frame Access.

References access_.

Referenced by translate::operator<<().

tree::rExp translate::Access::exp ( const Level use) const

The use level wants to use this Access. Return a Tree expression computing this access (including all the static links manipulations to compute the location of the level/frame hosting this variable).

References access_, frame::Access::exp(), translate::Level::fp(), and home_.

Referenced by translate::simple_var().

const Level & translate::Access::home_get ( ) const
inline

The Level this Access belongs to.

References home_.

Referenced by translate::operator<<().

Member Data Documentation

const frame::Access* translate::Access::access_
private

The underlying, SL unaware, Frame Access.

Referenced by access_get(), and exp().

const Level& translate::Access::home_
private

The Level this Access belongs to.

Referenced by exp(), and home_get().


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