AEDistinct Class Reference

A class that models a DISTINCT operation. More...

Inherits Simba::SQLEngine::AEUnaryRelationalExpr.

List of all members.

Public Member Functions

virtual void AcceptVisitor (AENodeVisitor &in_visitor)
 Calls the correct method on the visitor.
 AEDistinct (const AEDistinct &in_other)
 Copy constructor.
 AEDistinct (AutoPtr< AERelationalExpr > in_operand)
 Constructor.
virtual AEDistinctClone () const
 Creates a clone of this node object.
virtual const AEDistinctGetAsDistinct () const
 Gets the object as an AEDistinct object.
virtual AEDistinctGetAsDistinct ()
 Gets the object as an AEDistinct object.
virtual Simba::DSI::IColumnGetColumn (simba_uint16 in_columnNum)
 Gets the column metadata for the given column.
virtual simba_uint16 GetColumnCount ()
 Returns the number of columns in this query operation.
virtual simba_wstring GetLogString () const
 Returns a string name for this node for the purpose of logging.
virtual AENodeType GetNodeType () const
 Returns an integer that uniquely identifies the node class. See the definition of AENodeType for values defined.
virtual ~AEDistinct ()
 Destructor.

Detailed Description

A class that models a DISTINCT operation.

Since the standard relational algebra is defined on sets, there is no need for such an operation. All elements in a set, by definition, are unique. This relational operation is typical denoted by: d(R).

This class is designed to represent the operation imposed by a <set quantifier> := DISTINCT flag.

This relational operation does not change the metadata of the relational expression that it operates on.

Will always have one child (GetChildCount() returns 1):


Constructor & Destructor Documentation

AEDistinct ( AutoPtr< AERelationalExpr in_operand  ) 

Constructor.

Parameters:
in_operand the operand for this relational expression
AEDistinct ( const AEDistinct in_other  ) 

Copy constructor.

To support "cloning". See Clone() method.

Parameters:
in_other The other node to create copy from.
virtual ~AEDistinct (  )  [virtual]

Destructor.


Member Function Documentation

virtual void AcceptVisitor ( AENodeVisitor in_visitor  )  [virtual]

Calls the correct method on the visitor.

Parameters:
in_visitor The visiting object.

Implements AENode.

virtual AEDistinct* Clone (  )  const [virtual]

Creates a clone of this node object.

Returns:
A clone of this node object. (OWN)

Implements AEUnaryRelationalExpr.

virtual const AEDistinct* GetAsDistinct (  )  const [virtual]

Gets the object as an AEDistinct object.

Overrides the method defined in AERelationalExpr.

Returns:
this object as an AEDistinct object. (NOT OWN)

Reimplemented from AERelationalExpr.

virtual AEDistinct* GetAsDistinct (  )  [virtual]

Gets the object as an AEDistinct object.

Overrides the method defined in AERelationalExpr.

Returns:
this object as an AEDistinct object. (NOT OWN)

Reimplemented from AERelationalExpr.

virtual Simba::DSI::IColumn* GetColumn ( simba_uint16  in_columnNum  )  [virtual]

Gets the column metadata for the given column.

Parameters:
in_columnNum The zero-base column index.
Exceptions:
SEInvalidArgumentException when the given column number is invalid
AEInvalidAetException when the operands is NULL
Returns:
the column metadata for the given column. (NOT OWN)

Implements AEQueryOperation.

virtual simba_uint16 GetColumnCount (  )  [virtual]

Returns the number of columns in this query operation.

Exceptions:
AEInvalidAetException when the operands is NULL
Returns:
The number of columns in this query operation.

Implements AEQueryOperation.

virtual simba_wstring GetLogString (  )  const [virtual]

Returns a string name for this node for the purpose of logging.

Returns:
A string representation of this node for logging purposes.

Implements AENode.

virtual AENodeType GetNodeType (  )  const [virtual]

Returns an integer that uniquely identifies the node class. See the definition of AENodeType for values defined.

Returns:
The ID that uniquely identifies this type of nodes.

Implements AENode.


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

Generated on Wed May 17 14:21:16 2017 for SimbaEngine 10.1.3.1011 by simba