Generated on Mon May 10 06:46:55 2010 for Gecode by doxygen 1.6.3

Gecode::FlatZinc::AST::Node Class Reference

A node in a FlatZinc abstract syntax tree. More...

#include <ast.hh>

List of all members.

Public Member Functions

virtual ~Node (void)
 Destructor.
void append (Node *n)
 Append n to an array node.
bool hasAtom (const std::string &id)
 Test if node has atom with id.
bool isInt (int &i)
 Test if node is int, if yes set i to the value.
bool isCall (const std::string &id)
 Test if node is function call with id.
Call * getCall (void)
 Return function call.
bool hasCall (const std::string &id)
 Test if node is function call or array containing function call id.
Call * getCall (const std::string &id)
 Return function call id.
Array * getArray (void)
 Cast this node to an array node.
Atom * getAtom (void)
 Cast this node to an Atom node.
int getIntVar (void)
 Cast this node to an integer variable node.
int getBoolVar (void)
 Cast this node to a Boolean variable node.
int getSetVar (void)
 Cast this node to a set variable node.
int getInt (void)
 Cast this node to an integer node.
bool getBool (void)
 Cast this node to a Boolean node.
double getFloat (void)
 Cast this node to a Float node.
SetLit * getSet (void)
 Cast this node to a set literal node.
std::string getString (void)
 Cast this node to a string node.
bool isIntVar (void)
 Test if node is an integer variable node.
bool isBoolVar (void)
 Test if node is a Boolean variable node.
bool isSetVar (void)
 Test if node is a set variable node.
bool isInt (void)
 Test if node is an integer node.
bool isBool (void)
 Test if node is a Boolean node.
bool isString (void)
 Test if node is a string node.
bool isArray (void)
 Test if node is an array node.
bool isSet (void)
 Test if node is a set literal node.
bool isAtom (void)
 Test if node is an atom node.
virtual void print (std::ostream &)=0
 Output string representation.

Detailed Description

A node in a FlatZinc abstract syntax tree.

Definition at line 71 of file ast.hh.


Constructor & Destructor Documentation

Gecode::FlatZinc::AST::Node::~Node ( void   )  [inline, virtual]

Destructor.

Definition at line 300 of file ast.hh.


Member Function Documentation

void Gecode::FlatZinc::AST::Node::append ( Node *  n  )  [inline]

Append n to an array node.

Definition at line 303 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::hasAtom ( const std::string &  id  )  [inline]

Test if node has atom with id.

Definition at line 313 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::isInt ( int &  i  )  [inline]

Test if node is int, if yes set i to the value.

Definition at line 356 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::isCall ( const std::string &  id  )  [inline]

Test if node is function call with id.

Definition at line 326 of file ast.hh.

Call * Gecode::FlatZinc::AST::Node::getCall ( void   )  [inline]

Return function call.

Definition at line 335 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::hasCall ( const std::string &  id  )  [inline]

Test if node is function call or array containing function call id.

Definition at line 342 of file ast.hh.

Call * Gecode::FlatZinc::AST::Node::getCall ( const std::string &  id  )  [inline]

Return function call id.

Definition at line 365 of file ast.hh.

Array * Gecode::FlatZinc::AST::Node::getArray ( void   )  [inline]

Cast this node to an array node.

Definition at line 379 of file ast.hh.

Atom * Gecode::FlatZinc::AST::Node::getAtom ( void   )  [inline]

Cast this node to an Atom node.

Definition at line 386 of file ast.hh.

int Gecode::FlatZinc::AST::Node::getIntVar ( void   )  [inline]

Cast this node to an integer variable node.

Definition at line 393 of file ast.hh.

int Gecode::FlatZinc::AST::Node::getBoolVar ( void   )  [inline]

Cast this node to a Boolean variable node.

Definition at line 399 of file ast.hh.

int Gecode::FlatZinc::AST::Node::getSetVar ( void   )  [inline]

Cast this node to a set variable node.

Definition at line 405 of file ast.hh.

int Gecode::FlatZinc::AST::Node::getInt ( void   )  [inline]

Cast this node to an integer node.

Definition at line 411 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::getBool ( void   )  [inline]

Cast this node to a Boolean node.

Definition at line 417 of file ast.hh.

double Gecode::FlatZinc::AST::Node::getFloat ( void   )  [inline]

Cast this node to a Float node.

Definition at line 423 of file ast.hh.

SetLit * Gecode::FlatZinc::AST::Node::getSet ( void   )  [inline]

Cast this node to a set literal node.

Definition at line 429 of file ast.hh.

std::string Gecode::FlatZinc::AST::Node::getString ( void   )  [inline]

Cast this node to a string node.

Definition at line 435 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::isIntVar ( void   )  [inline]

Test if node is an integer variable node.

Definition at line 441 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::isBoolVar ( void   )  [inline]

Test if node is a Boolean variable node.

Definition at line 445 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::isSetVar ( void   )  [inline]

Test if node is a set variable node.

Definition at line 449 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::isInt ( void   )  [inline]

Test if node is an integer node.

Definition at line 453 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::isBool ( void   )  [inline]

Test if node is a Boolean node.

Definition at line 457 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::isString ( void   )  [inline]

Test if node is a string node.

Definition at line 465 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::isArray ( void   )  [inline]

Test if node is an array node.

Definition at line 469 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::isSet ( void   )  [inline]

Test if node is a set literal node.

Definition at line 461 of file ast.hh.

bool Gecode::FlatZinc::AST::Node::isAtom ( void   )  [inline]

Test if node is an atom node.

Definition at line 473 of file ast.hh.


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