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 311 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 354 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 324 of file ast.hh.
Call * Gecode::FlatZinc::AST::Node::getCall |
( |
void |
|
) |
[inline] |
Return function call.
Definition at line 333 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 340 of file ast.hh.
Call * Gecode::FlatZinc::AST::Node::getCall |
( |
const std::string & |
id |
) |
[inline] |
Return function call id.
Definition at line 363 of file ast.hh.
Array * Gecode::FlatZinc::AST::Node::getArray |
( |
void |
|
) |
[inline] |
Cast this node to an array node.
Definition at line 377 of file ast.hh.
Atom * Gecode::FlatZinc::AST::Node::getAtom |
( |
void |
|
) |
[inline] |
Cast this node to an Atom node.
Definition at line 384 of file ast.hh.
int Gecode::FlatZinc::AST::Node::getIntVar |
( |
void |
|
) |
[inline] |
Cast this node to an integer variable node.
Definition at line 391 of file ast.hh.
int Gecode::FlatZinc::AST::Node::getBoolVar |
( |
void |
|
) |
[inline] |
Cast this node to a Boolean variable node.
Definition at line 397 of file ast.hh.
int Gecode::FlatZinc::AST::Node::getSetVar |
( |
void |
|
) |
[inline] |
Cast this node to a set variable node.
Definition at line 403 of file ast.hh.
int Gecode::FlatZinc::AST::Node::getInt |
( |
void |
|
) |
[inline] |
Cast this node to an integer node.
Definition at line 409 of file ast.hh.
bool Gecode::FlatZinc::AST::Node::getBool |
( |
void |
|
) |
[inline] |
Cast this node to a Boolean node.
Definition at line 415 of file ast.hh.
double Gecode::FlatZinc::AST::Node::getFloat |
( |
void |
|
) |
[inline] |
Cast this node to a Float node.
Definition at line 421 of file ast.hh.
SetLit * Gecode::FlatZinc::AST::Node::getSet |
( |
void |
|
) |
[inline] |
Cast this node to a set literal node.
Definition at line 427 of file ast.hh.
std::string Gecode::FlatZinc::AST::Node::getString |
( |
void |
|
) |
[inline] |
Cast this node to a string node.
Definition at line 433 of file ast.hh.
bool Gecode::FlatZinc::AST::Node::isIntVar |
( |
void |
|
) |
[inline] |
Test if node is an integer variable node.
Definition at line 439 of file ast.hh.
bool Gecode::FlatZinc::AST::Node::isBoolVar |
( |
void |
|
) |
[inline] |
Test if node is a Boolean variable node.
Definition at line 443 of file ast.hh.
bool Gecode::FlatZinc::AST::Node::isSetVar |
( |
void |
|
) |
[inline] |
Test if node is a set variable node.
Definition at line 447 of file ast.hh.
bool Gecode::FlatZinc::AST::Node::isInt |
( |
void |
|
) |
[inline] |
Test if node is an integer node.
Definition at line 451 of file ast.hh.
bool Gecode::FlatZinc::AST::Node::isBool |
( |
void |
|
) |
[inline] |
Test if node is a Boolean node.
Definition at line 455 of file ast.hh.
bool Gecode::FlatZinc::AST::Node::isString |
( |
void |
|
) |
[inline] |
Test if node is a string node.
Definition at line 463 of file ast.hh.
bool Gecode::FlatZinc::AST::Node::isArray |
( |
void |
|
) |
[inline] |
Test if node is an array node.
Definition at line 467 of file ast.hh.
bool Gecode::FlatZinc::AST::Node::isSet |
( |
void |
|
) |
[inline] |
Test if node is a set literal node.
Definition at line 459 of file ast.hh.
bool Gecode::FlatZinc::AST::Node::isAtom |
( |
void |
|
) |
[inline] |
Test if node is an atom node.
Definition at line 471 of file ast.hh.
virtual void Gecode::FlatZinc::AST::Node::print |
( |
std::ostream & |
|
) |
[pure virtual] |
Output string representation.
Implemented in Gecode::FlatZinc::AST::BoolLit, Gecode::FlatZinc::AST::IntLit, Gecode::FlatZinc::AST::FloatLit, Gecode::FlatZinc::AST::SetLit, Gecode::FlatZinc::AST::BoolVar, Gecode::FlatZinc::AST::IntVar, Gecode::FlatZinc::AST::FloatVar, Gecode::FlatZinc::AST::SetVar, Gecode::FlatZinc::AST::Array, Gecode::FlatZinc::AST::Call, Gecode::FlatZinc::AST::ArrayAccess, Gecode::FlatZinc::AST::Atom, and Gecode::FlatZinc::AST::String.
The documentation for this class was generated from the following file: