All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
te::da::In Class Referenceabstract

A class that represents the IN operator. More...

#include <In.h>

Inheritance diagram for te::da::In:
te::da::Function te::da::Expression te::common::BaseVisitable< QueryVisitor >

Public Types

typedef R ReturnType
 
typedef QueryVisitor VisitorType
 

Public Member Functions

virtual ReturnType accept (VisitorType &guest) const =0
 It call the visit method from the guest object. More...
 
void add (Expression *arg)
 It adds the argument to the function list of arguments. More...
 
Expressionclone () const
 It creates a new copy of this expression. More...
 
ExpressiongetArg (std::size_t i) const
 It returns the i-th function argument. More...
 
const std::string & getName () const
 It returns the function name. More...
 
std::size_t getNumArgs () const
 It returns the number of arguments informed to the function. More...
 
PropertyNamegetPropertyName () const
 It returns the property name. More...
 
TE_DEFINE_VISITABLE In (PropertyName *p)
 Constructor. More...
 
 In (const PropertyName &p)
 Constructor. More...
 
 In (const std::string &name)
 Constructor. More...
 
 In (const In &rhs)
 Copy constructor. More...
 
Inoperator= (const In &rhs)
 
Expressionoperator[] (std::size_t i) const
 It returns the i-th function argument. More...
 
void setPropertyName (PropertyName *p)
 It sets the property name. More...
 
 ~In ()
 Destructor. More...
 

Protected Attributes

std::vector< Expression * > m_args
 The list of arguments. More...
 

Private Attributes

std::auto_ptr< PropertyNamem_name
 The property name. More...
 

Detailed Description

A class that represents the IN operator.

See also
Expression

Definition at line 52 of file In.h.

Member Typedef Documentation

typedef R te::common::BaseVisitable< QueryVisitor , R >::ReturnType
inherited

Definition at line 58 of file BaseVisitable.h.

Definition at line 57 of file BaseVisitable.h.

Constructor & Destructor Documentation

te::da::In::In ( PropertyName p)

Constructor.

Parameters
nameThe property name.
Note
The In will take the ownership of the given property.

Definition at line 35 of file In.cpp.

te::da::In::In ( const PropertyName p)

Constructor.

Parameters
nameThe property name.

Definition at line 41 of file In.cpp.

References te::da::PropertyName::clone(), and m_name.

te::da::In::In ( const std::string &  name)

Constructor.

Parameters
nameThe property name.

Definition at line 48 of file In.cpp.

References m_name.

te::da::In::In ( const In rhs)

Copy constructor.

Definition at line 55 of file In.cpp.

References m_name.

te::da::In::~In ( )

Destructor.

Definition at line 62 of file In.cpp.

Member Function Documentation

virtual ReturnType te::common::BaseVisitable< QueryVisitor , R >::accept ( VisitorType guest) const
pure virtualinherited

It call the visit method from the guest object.

Parameters
guestThe guest or visitor.
Returns
Any valid value define by the template type R.
void te::da::Function::add ( Expression arg)
inherited

It adds the argument to the function list of arguments.

Parameters
argThe argument to be added.
Note
The Function will take the ownership of the given argument.

Definition at line 79 of file Function.cpp.

Referenced by te::map::QueryEncoder::getExpression(), te::da::ObjectIdSet::getExpressionByInClause(), te::da::ObjectIdSet::setExpressionByInClause(), and te::map::QueryEncoder::visit().

te::da::Expression * te::da::In::clone ( ) const
virtual

It creates a new copy of this expression.

Reimplemented from te::da::Function.

Definition at line 77 of file In.cpp.

te::da::Expression * te::da::Function::getArg ( std::size_t  i) const
inherited

It returns the i-th function argument.

Parameters
iThe argument position.
Returns
The it-th function argument.

Definition at line 67 of file Function.cpp.

Referenced by te::da::SpatialRestrictionVisitor::getGeometryRestriction(), te::da::SpatialRestrictionVisitor::getPropertyName(), te::da::SpatialRestrictionVisitor::isFromEnvelope(), and te::serialize::xml::Save().

te::da::PropertyName * te::da::In::getPropertyName ( ) const

It returns the property name.

Returns
The property name.

Definition at line 82 of file In.cpp.

Referenced by te::da::SQLVisitor::visit().

te::da::In & te::da::In::operator= ( const In rhs)

Assignment operator.

Definition at line 66 of file In.cpp.

References m_name, and te::da::Function::operator=().

te::da::Expression * te::da::Function::operator[] ( std::size_t  i) const
inherited

It returns the i-th function argument.

Parameters
iThe argument position.
Returns
The it-th function argument.

Definition at line 73 of file Function.cpp.

void te::da::In::setPropertyName ( PropertyName p)

It sets the property name.

Parameters
nameThe property name.

Definition at line 87 of file In.cpp.

Member Data Documentation

std::auto_ptr<PropertyName> te::da::In::m_name
private

The property name.

Definition at line 109 of file In.h.

Referenced by In(), and operator=().


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