Loading...
Searching...
No Matches
casacore::TableExprNodeUtil Namespace Reference
tables package (libcasa_tables) » TaQL_module » TaQL_module_internal_classes

More...

## Functions

void | checkAggrFuncs (TableExprNodeRep *node)
| Throw an exception if an aggregate function is used in the expression node or its children.
std::vector< TableExprNodeRep * > | getAggrNodes (TableExprNodeRep *node)
| Get the aggregate function nodes used in the node and its children.
std::vector< TableExprNodeRep * > | getColumnNodes (TableExprNodeRep *node)
| Get the column nodes used in the node and its children.
std::vector< Table > | getNodeTables (TableExprNodeRep *node, Bool properMain)
| Get the (unique) tables used in the node and its children.
rownr_t | getCheckNRow (const std::vector< Table > &)
| Get the nr of rows in the tables used.

## Detailed Description

Class to handle a Regex or StringDistance.

### Intended use:

Internal

### Review Status

Reviewed By:
  UNKNOWN
Date Reviewed:
  before2004/08/25

### Prerequisite

- Regex
- StringDistance

### Synopsis

A StringDistance (Levensthein distance) in TaQL is given in the same way as a Regex. This class is needed to have a single object in the parse tree objects containing them (in class TableExprNodeConstRegex).

## Function Documentation

## checkAggrFuncs()

void casacore::TableExprNodeUtil::checkAggrFuncs | ( | TableExprNodeRep * | node | ) |

Throw an exception if an aggregate function is used in the expression node or its children.

## getAggrNodes()

std::vector< TableExprNodeRep * > casacore::TableExprNodeUtil::getAggrNodes | ( | TableExprNodeRep * | node | ) |

Get the aggregate function nodes used in the node and its children.

## getCheckNRow()

rownr_t casacore::TableExprNodeUtil::getCheckNRow | ( | const std::vector< Table > & |  | ) |

Get the nr of rows in the tables used.

An exception is thrown if the tables differ in the nr of rows.

## getColumnNodes()

std::vector< TableExprNodeRep * > casacore::TableExprNodeUtil::getColumnNodes | ( | TableExprNodeRep * | node | ) |

Get the column nodes used in the node and its children.

## getNodeTables()

std::vector< Table > casacore::TableExprNodeUtil::getNodeTables | ( | TableExprNodeRep * | node,
|  | Bool | properMain )

Get the (unique) tables used in the node and its children.

If properMain only proper main tables (i.e., tables specified in the FROM clause) are returned.