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

Raw TaQL parse tree node defining a binary operator. More...

`#include <TaQLNodeDer.h>`

## Public Types

enum | Type { B_PLUS , B_MINUS , B_TIMES , B_DIVIDE , B_MODULO , B_POWER , B_EQ , B_NE , B_GT , B_GE , B_LT , B_LE , B_OR , B_AND , B_IN , B_INDEX , B_DIVIDETRUNC , B_EQREGEX , B_NEREGEX , B_BITAND , B_BITXOR , B_BITOR }
| Do not change the values of this enum, as objects might be persistent. More...

## Public Member Functions

| TaQLBinaryNodeRep (Type type, const TaQLNode &left, const TaQLNode &right)
virtual TaQLNodeResult | visit (TaQLNodeVisitor &) const override
| Visit a node for tree traversal.
virtual void | show (std::ostream &os) const override
| Print the object in an ostream.
virtual void | save (AipsIO &aio) const override
| Save the object.
Public Member Functions inherited from casacore::TaQLNodeRep
| TaQLNodeRep (int nodeType)
| Constructor for derived classes specifying the type.
virtual | ~TaQLNodeRep ()
| TaQLNodeRep (const TaQLNodeRep &)=delete
| Letter objects cannot be copied.
TaQLNodeRep & | operator= (const TaQLNodeRep &)=delete
char | nodeType () const
| Get the node type of the derived class.
const TaQLStyle & | style () const
| Get the TaQL style.
String | addEscape (const String &str) const
| Add escape characters to a table name where needed.

## Static Public Member Functions

static TaQLNode | restore (AipsIO &aio)
static TaQLBinaryNodeRep * | handleRegex (const TaQLNode &left, const TaQLRegexNode &regex)
| Handle a comparison wih a regex.
Static Public Member Functions inherited from casacore::TaQLNodeRep
static String | checkDataType (const String &)
| Check the data type string and return its standard form.

## Public Attributes

Type | itsType
TaQLNode | itsLeft
TaQLNode | itsRight

## Detailed Description

Raw TaQL parse tree node defining a binary operator.

### Intended use:

Internal

### Review Status

Test programs:
  tTaQLNode

### Prerequisite

- TaQLNodeRep

### Synopsis

This class is a TaQLNodeRep holding a binary operator and operands. All standard mathematical (including % and ^), relational, bit, and logical operators are supported. Furthermore operator IN and the INDEX operator (for indexing in an array) are supported.

Definition at line 189 of file TaQLNodeDer.h.

## Member Enumeration Documentation

## Type

enum casacore::TaQLBinaryNodeRep::Type

Do not change the values of this enum, as objects might be persistent.

Enumerator
B_PLUS |
B_MINUS |
B_TIMES |
B_DIVIDE |
B_MODULO |
B_POWER |
B_EQ |
B_NE |
B_GT |
B_GE |
B_LT |
B_LE |
B_OR |
B_AND |
B_IN |
B_INDEX |
B_DIVIDETRUNC |
B_EQREGEX |
B_NEREGEX |
B_BITAND |
B_BITXOR |
B_BITOR |

Definition at line 193 of file TaQLNodeDer.h.

## Constructor & Destructor Documentation

## TaQLBinaryNodeRep()

casacore::TaQLBinaryNodeRep::TaQLBinaryNodeRep | ( | Type | type,
|  | const TaQLNode & | left,
|  | const TaQLNode & | right )

Referenced by handleRegex().

## Member Function Documentation

## handleRegex()

TaQLBinaryNodeRep * casacore::TaQLBinaryNodeRep::handleRegex | ( | const TaQLNode & | left,
|  | const TaQLRegexNode & | regex )

static

Handle a comparison wih a regex.

The operator (~ or !~) is extracted from the regex.

References casacore::regex(), and TaQLBinaryNodeRep().

## restore()

TaQLNode casacore::TaQLBinaryNodeRep::restore | ( | AipsIO & | aio | ) |

static

## save()

virtual void casacore::TaQLBinaryNodeRep::save | ( | AipsIO & | aio | ) | const

override virtual

Save the object.

Implements casacore::TaQLNodeRep.

## show()

virtual void casacore::TaQLBinaryNodeRep::show | ( | std::ostream & | os | ) | const

override virtual

Print the object in an ostream.

Implements casacore::TaQLNodeRep.

## visit()

virtual TaQLNodeResult casacore::TaQLBinaryNodeRep::visit | ( | TaQLNodeVisitor & |  | ) | const

override virtual

Visit a node for tree traversal.

Implements casacore::TaQLNodeRep.

## Member Data Documentation

## itsLeft

TaQLNode casacore::TaQLBinaryNodeRep::itsLeft

Definition at line 226 of file TaQLNodeDer.h.

## itsRight

TaQLNode casacore::TaQLBinaryNodeRep::itsRight

Definition at line 227 of file TaQLNodeDer.h.

## itsType

Type casacore::TaQLBinaryNodeRep::itsType

Definition at line 225 of file TaQLNodeDer.h.

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

- tables/TaQL/TaQLNodeDer.h