casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Static Public Member Functions | Protected Attributes
casa::TableExprNodeMulti Class Reference

Abstract base class for a node having multiple child nodes. More...

#include <ExprNodeRep.h>

Inheritance diagram for casa::TableExprNodeMulti:
casa::TableExprNodeRep casa::TableExprFuncNode casa::TableExprNodeIndex casa::TableExprUDFNode casa::TableExprConeNode

List of all members.

Public Member Functions

 TableExprNodeMulti (NodeDataType, ValueType, OperType, const TableExprNodeRep &source)
 Constructor.
virtual ~TableExprNodeMulti ()
 Destructor.
virtual void show (ostream &, uInt indent) const
 Show the expression tree.
const PtrBlock
< TableExprNodeRep * > & 
getChildren () const
 Get the child nodes.

Static Public Member Functions

static uInt checkNumOfArg (uInt low, uInt high, const PtrBlock< TableExprNodeRep * > &nodes)
 Check number of arguments low <= number_of_args <= high It throws an exception if wrong number of arguments.
static NodeDataType checkDT (Block< Int > &dtypeOper, NodeDataType dtIn, NodeDataType dtOut, const PtrBlock< TableExprNodeRep * > &nodes)
 Check datatype of nodes and return output type.

Protected Attributes

PtrBlock< TableExprNodeRep * > operands_p

Detailed Description

Abstract base class for a node having multiple child nodes.

Intended use:

Internal

Review Status

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

Prerequisite

Etymology

TableExprNodeMulti is a node in the table expression tree which can have MULTIple child nodes.

Synopsis

TableExprNodeMulti is the abstract base class for all nodes in a table expression tree using multiple operands. It is used as the base class for the node classes representing functions, sets, indices, etc..

Motivation

This class contains the common functionality for the classes representing a node with multiple operands.

Definition at line 604 of file ExprNodeRep.h.


Constructor & Destructor Documentation

Constructor.

Destructor.


Member Function Documentation

static NodeDataType casa::TableExprNodeMulti::checkDT ( Block< Int > &  dtypeOper,
NodeDataType  dtIn,
NodeDataType  dtOut,
const PtrBlock< TableExprNodeRep * > &  nodes 
) [static]

Check datatype of nodes and return output type.

It also sets the expected data type of the operands (from dtIn).

static uInt casa::TableExprNodeMulti::checkNumOfArg ( uInt  low,
uInt  high,
const PtrBlock< TableExprNodeRep * > &  nodes 
) [static]

Check number of arguments low <= number_of_args <= high It throws an exception if wrong number of arguments.

Get the child nodes.

Definition at line 624 of file ExprNodeRep.h.

References operands_p.

virtual void casa::TableExprNodeMulti::show ( ostream &  ,
uInt  indent 
) const [virtual]

Show the expression tree.

Reimplemented from casa::TableExprNodeRep.


Member Data Documentation


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