expression.cpp File Reference

#include <cassert>
#include <algorithm>
#include <stdexcept>
#include "utap/builder.h"
#include "utap/system.h"
#include "utap/expression.h"

Functions

 expression_t::expression_t ()
 expression_t::expression_t (kind_t kind, const position_t &pos)
 expression_t::expression_t (const expression_t &e)
expression_t expression_t::clone () const
expression_t expression_t::subst (symbol_t symbol, expression_t expr) const
 expression_t::~expression_t ()
kind_t expression_t::getKind () const
const position_texpression_t::getPosition () const
size_t expression_t::getSize () const
type_t expression_t::getType () const
void expression_t::setType (type_t type)
int32_t expression_t::getValue () const
int32_t expression_t::getIndex () const
synchronisation_t expression_t::getSync () const
expression_texpression_t::operator[] (uint32_t i)
const expression_t expression_t::operator[] (uint32_t i) const
expression_texpression_t::get (uint32_t i)
const expression_texpression_t::get (uint32_t i) const
bool expression_t::empty () const
bool expression_t::equal (const expression_t &e) const
 Two expressions are identical iff all the sub expressions are identical and if the kind, value and symbol of the root are identical.
expression_texpression_t::operator= (const expression_t &e)
symbol_t expression_t::getSymbol ()
 Returns the symbol of a variable reference.
const symbol_t expression_t::getSymbol () const
void expression_t::getSymbols (std::set< symbol_t > &symbols) const
bool expression_t::isReferenceTo (const std::set< symbol_t > &symbols) const
 Returns true if expr might be a reference to a symbol in the set.
bool expression_t::changesVariable (const std::set< symbol_t > &symbols) const
bool expression_t::changesAnyVariable () const
bool expression_t::dependsOn (const std::set< symbol_t > &symbols) const
int expression_t::getPrecedence () const
int expression_t::getPrecedence (kind_t kind)
static void ensure (char *&str, char *&end, int &size, int len)
static void append (char *&str, char *&end, int &size, const char *s)
static void append (char *&str, char *&end, int &size, char c)
void expression_t::toString (bool old, char *&str, char *&end, int &size) const
bool expression_t::operator< (const expression_t e) const
bool expression_t::operator== (const expression_t e) const
std::string expression_t::toString (bool old) const
 Returns a string representation of the expression.
void expression_t::collectPossibleWrites (set< symbol_t > &symbols) const
void expression_t::collectPossibleReads (set< symbol_t > &symbols) const
expression_t expression_t::createConstant (int32_t value, position_t pos)
expression_t expression_t::createIdentifier (symbol_t symbol, position_t pos)
expression_t expression_t::createNary (kind_t kind, const vector< expression_t > &sub, position_t pos, type_t type)
expression_t expression_t::createUnary (kind_t kind, expression_t sub, position_t pos, type_t type)
expression_t expression_t::createBinary (kind_t kind, expression_t left, expression_t right, position_t pos, type_t type)
expression_t expression_t::createTernary (kind_t kind, expression_t e1, expression_t e2, expression_t e3, position_t pos, type_t type)
expression_t expression_t::createDot (expression_t e, int32_t idx, position_t pos, type_t type)
expression_t expression_t::createSync (expression_t e, synchronisation_t s, position_t pos)
expression_t expression_t::createDeadlock (position_t pos)
ostream & operator<< (ostream &o, const expression_t &e)

Function Documentation

static void append ( char *&  str,
char *&  end,
int &  size,
char  c 
) [static]

static void append ( char *&  str,
char *&  end,
int &  size,
const char *  s 
) [static]

static void ensure ( char *&  str,
char *&  end,
int &  size,
int  len 
) [static]

ostream& operator<< ( ostream &  o,
const expression_t e 
)


Generated on Thu Feb 22 14:46:52 2007 for libutap by  doxygen 1.4.7