comma::SRDeclStencil Class Reference

A stencil to represent a subroutine declaration. More...

#include <Stencil.h>

Inheritance diagram for comma::SRDeclStencil:
Inheritance graph
[legend]
Collaboration diagram for comma::SRDeclStencil:
Collaboration graph
[legend]

List of all members.

Public Types

enum  StencilKind { UNKNOWN_Stencil, FUNCTION_Stencil, PROCEDURE_Stencil }
typedef llvm::SmallVector
< ParamValueDecl *, 8 > 
ParamVec
 Container used to hold the subroutine parameters.

Public Member Functions

 SRDeclStencil ()
void init (IdentifierInfo *name, Location loc, StencilKind kind)
void reset ()
 Reset this stencil to its default state.
bool denotesProcedure () const
 Returns true if this stencil denotes a subroutine.
bool denotesFunction () const
 Returns true if this stencil denotes a function.
void addParameter (ParamValueDecl *param)
 Adds a parameter declaration to this stencil.
unsigned numParameters () const
 Returns the number of parameters associated with this stencil.
ParamValueDecl * getParameter (unsigned i)
 Returns the i'th parameter asscoiated with this stencil.
ParamVec & getParams ()
 Returns a direct reference to the vector of parameters.
const ParamVec & getParams () const
void setReturnType (TypeDecl *retTy)
TypeDecl * getReturnType ()



typedef ParamVec::iterator param_iterator
 Iterators over the parameters.
param_iterator begin_params ()
 Iterators over the parameters.
param_iterator end_params ()
 Iterators over the parameters.

Detailed Description

A stencil to represent a subroutine declaration.

Definition at line 157 of file Stencil.h.


Member Typedef Documentation

typedef ParamVec::iterator comma::SRDeclStencil::param_iterator

Iterators over the parameters.

Definition at line 207 of file Stencil.h.

typedef llvm::SmallVector<ParamValueDecl*, 8> comma::SRDeclStencil::ParamVec

Container used to hold the subroutine parameters.

Definition at line 199 of file Stencil.h.


Member Enumeration Documentation

Enumerator:
UNKNOWN_Stencil 

An uninitialized stencil.

FUNCTION_Stencil 

A function stencil.

PROCEDURE_Stencil 

A procedure stencil.

Definition at line 162 of file Stencil.h.


Constructor & Destructor Documentation

comma::SRDeclStencil::SRDeclStencil (  )  [inline]

Definition at line 160 of file Stencil.h.


Member Function Documentation

void comma::SRDeclStencil::addParameter ( ParamValueDecl *  param  )  [inline]

Adds a parameter declaration to this stencil.

Definition at line 187 of file Stencil.h.

param_iterator comma::SRDeclStencil::begin_params (  )  [inline]

Iterators over the parameters.

Definition at line 208 of file Stencil.h.

bool comma::SRDeclStencil::denotesFunction (  )  const [inline]

Returns true if this stencil denotes a function.

Definition at line 184 of file Stencil.h.

bool comma::SRDeclStencil::denotesProcedure (  )  const [inline]

Returns true if this stencil denotes a subroutine.

Definition at line 181 of file Stencil.h.

param_iterator comma::SRDeclStencil::end_params (  )  [inline]

Iterators over the parameters.

Definition at line 209 of file Stencil.h.

ParamValueDecl* comma::SRDeclStencil::getParameter ( unsigned  i  )  [inline]

Returns the i'th parameter asscoiated with this stencil.

Definition at line 193 of file Stencil.h.

const ParamVec& comma::SRDeclStencil::getParams (  )  const [inline]

Definition at line 203 of file Stencil.h.

ParamVec& comma::SRDeclStencil::getParams (  )  [inline]

Returns a direct reference to the vector of parameters.

Definition at line 202 of file Stencil.h.

TypeDecl* comma::SRDeclStencil::getReturnType (  )  [inline]

Returns the return type of this stencil, or null if no return type info has been associated.

Definition at line 222 of file Stencil.h.

void comma::SRDeclStencil::init ( IdentifierInfo *  name,
Location  loc,
StencilKind  kind 
) [inline]

Definition at line 168 of file Stencil.h.

unsigned comma::SRDeclStencil::numParameters (  )  const [inline]

Returns the number of parameters associated with this stencil.

Definition at line 190 of file Stencil.h.

void comma::SRDeclStencil::reset (  )  [inline, virtual]

Reset this stencil to its default state.

Reimplemented from comma::ASTStencil.

Definition at line 173 of file Stencil.h.

void comma::SRDeclStencil::setReturnType ( TypeDecl *  retTy  )  [inline]

Sets the return type for this stencil. The stencil must have been initialized as a function stencil.

Definition at line 214 of file Stencil.h.


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

Generated on 1 Feb 2010 for Comma by  doxygen 1.6.1