comma::FunctionCallExpr Class Reference

#include <Expr.h>

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

List of all members.

Public Member Functions

 FunctionCallExpr (SubroutineRef *connective, Expr **positionalArgs, unsigned numPositional, KeywordSelector **keyedArgs, unsigned numKeys)
 FunctionCallExpr (FunctionDecl *connective, Location loc, Expr **positionalArgs, unsigned numPositional, KeywordSelector **keyedArgs, unsigned numKeys)
 FunctionCallExpr (SubroutineRef *connective)
 FunctionCallExpr (FunctionDecl *connective, Location loc)
Location getLocation () const
void resolveConnective (FunctionDecl *connective)
 Resolved the connective for this call.

Static Public Member Functions

static bool classof (const FunctionCallExpr *node)
 Support isa and dyn_cast.
static bool classof (const Ast *node)



typedef SubroutineRef::fun_iterator fun_iterator
typedef
SubroutineRef::const_fun_iterator 
const_fun_iterator
FunctionDeclgetConnective ()
const FunctionDeclgetConnective () const
const FunctionDeclgetConnective (unsigned i) const
FunctionDeclgetConnective (unsigned i)
fun_iterator begin_functions ()
fun_iterator end_functions ()
const_fun_iterator begin_functions () const
const_fun_iterator end_functions () const

Detailed Description

Definition at line 189 of file Expr.h.


Member Typedef Documentation

Iterators over the set of function declarations serving as connectives for this function call expression.

Definition at line 259 of file Expr.h.

Iterators over the set of function declarations serving as connectives for this function call expression.

Definition at line 251 of file Expr.h.


Constructor & Destructor Documentation

FunctionCallExpr::FunctionCallExpr ( SubroutineRef connective,
Expr **  positionalArgs,
unsigned  numPositional,
KeywordSelector **  keyedArgs,
unsigned  numKeys 
)

Creates a function call expression using the given SubroutineRef as a connective. The resulting FunctionCallExpr takes ownership of connective, and infers its location from same.

The given SubroutineRef must reference a set of FunctionDecl's. If more than one declaration is associated with the ref, then the function call is said to be ambiguous.

Definition at line 162 of file Expr.cpp.

FunctionCallExpr::FunctionCallExpr ( FunctionDecl connective,
Location  loc,
Expr **  positionalArgs,
unsigned  numPositional,
KeywordSelector **  keyedArgs,
unsigned  numKeys 
)

Creates a resolved function call expression over the given function declaration.

Definition at line 171 of file Expr.cpp.

FunctionCallExpr::FunctionCallExpr ( SubroutineRef connective  ) 

Create a nullary function call expression using the given SubroutineRef as connective.

Definition at line 180 of file Expr.cpp.

FunctionCallExpr::FunctionCallExpr ( FunctionDecl connective,
Location  loc 
)

Create a nullary function call expression using the given FunctionDecl as connective.

Definition at line 187 of file Expr.cpp.


Member Function Documentation

const_fun_iterator comma::FunctionCallExpr::begin_functions (  )  const [inline]

Iterators over the set of function declarations serving as connectives for this function call expression.

Definition at line 260 of file Expr.h.

fun_iterator comma::FunctionCallExpr::begin_functions (  )  [inline]

Iterators over the set of function declarations serving as connectives for this function call expression.

Definition at line 252 of file Expr.h.

static bool comma::FunctionCallExpr::classof ( const Ast node  )  [inline, static]

Reimplemented from comma::Expr.

Definition at line 270 of file Expr.h.

static bool comma::FunctionCallExpr::classof ( const FunctionCallExpr node  )  [inline, static]

Support isa and dyn_cast.

Reimplemented from comma::Expr.

Definition at line 269 of file Expr.h.

const_fun_iterator comma::FunctionCallExpr::end_functions (  )  const [inline]

Iterators over the set of function declarations serving as connectives for this function call expression.

Definition at line 263 of file Expr.h.

fun_iterator comma::FunctionCallExpr::end_functions (  )  [inline]

Iterators over the set of function declarations serving as connectives for this function call expression.

Definition at line 255 of file Expr.h.

FunctionDecl* comma::FunctionCallExpr::getConnective ( unsigned  i  )  [inline]

Iterators over the set of function declarations serving as connectives for this function call expression.

Reimplemented from comma::SubroutineCall.

Definition at line 243 of file Expr.h.

const FunctionDecl* comma::FunctionCallExpr::getConnective ( unsigned  i  )  const [inline]

Returns the i'th connective associated with this call. The returned node is either an EnumLiteral or a regular FunctionDecl.

Reimplemented from comma::SubroutineCall.

Definition at line 240 of file Expr.h.

const FunctionDecl* comma::FunctionCallExpr::getConnective (  )  const [inline]

Iterators over the set of function declarations serving as connectives for this function call expression.

Reimplemented from comma::SubroutineCall.

Definition at line 229 of file Expr.h.

FunctionDecl* comma::FunctionCallExpr::getConnective (  )  [inline]

If this call is unambiguous, returns the unique function declaration serving as the connective for this call.

Reimplemented from comma::SubroutineCall.

Definition at line 225 of file Expr.h.

Location comma::FunctionCallExpr::getLocation (  )  const [inline, virtual]

Returns the location of this function call.

Implementation required by SubroutineCall.

Reimplemented from comma::Expr.

Definition at line 220 of file Expr.h.

void FunctionCallExpr::resolveConnective ( FunctionDecl connective  ) 

Resolved the connective for this call.

Definition at line 202 of file Expr.cpp.


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

Generated on 1 Feb 2010 for Comma by  doxygen 1.6.1