ddc
Public Member Functions | Public Attributes | List of all members
CQNear Class Reference

#include <Query.h>

Inheritance diagram for CQNear:
Inheritance graph
[legend]
Collaboration diagram for CQNear:
Collaboration graph
[legend]

Public Member Functions

 CQNear (BYTE dist=1, CQuery *dtr1=NULL, CQuery *dtr2=NULL, CQuery *dtr3=NULL)
 
virtual ~CQNear ()
 destructor deletes daughter nodes More...
 
virtual void ClearNode ()
 deletes associated daughter nodes (avoiding double-free) More...
 
virtual void Clear (bool deep=true)
 clear query contents. if deep is true, propagates operation to daughters More...
 
virtual ddcObjectList Children () const
 get a list of direct non-NULL CQuery direct daughters of this node More...
 
virtual void DisownChildren ()
 "disown" any direct child nodes, preventing their destruction if the current object is deleted More...
 
virtual BYTE GetMatchId () const
 get match-id: dtr3 > dtr2 > dtr1 More...
 
virtual BYTE SetMatchId (BYTE matchId)
 Set match-id, returns new value; override propagates matchId to daughers. More...
 
virtual bool Compile (CQueryCompiler *compiler)
 Compile() method implicitly compiles daughter nodes. More...
 
virtual string toString ()
 DEBUG: return a canonical string form for this query (default just returns m_Label) More...
 
virtual string jsonClass ()
 
virtual string jsonData ()
 
- Public Member Functions inherited from CQNegatable
 CQNegatable (const string &label=string(""), bool negated=false)
 Default constructor. More...
 
 CQNegatable (bool negated)
 
virtual ~CQNegatable ()
 
virtual bool Negate (void)
 toggle negation flag; returns new value More...
 
virtual bool Negated ()
 override returns current value of m_Negated More...
 
virtual string NegString (const std::string &s)
 string creation utility More...
 
- Public Member Functions inherited from CQuery
 CQuery (const string &label=string(""))
 Default constructor. More...
 
virtual ~CQuery (void)
 
virtual bool CheckSatisfiable (CQueryCompiler *compiler)
 
virtual bool CompileOptions (CQueryCompiler *compiler=NULL)
 
virtual void Evaluate ()
 
virtual bool HasMatchId () const
 Returns true iff this query uses a nontrival match-id operator; default checks (this->GetMatchId() != 0) More...
 
virtual bool RootOK ()
 Is this query an admissible root of a compiled parse tree (default returns !this->Negated()) More...
 
virtual string optionsToString ()
 DEBUG: return canonical option string More...
 
virtual string optionsToJson ()
 return json format option string More...
 
virtual string toJson ()
 
void SetCompiler (CQueryCompiler *compiler)
 
virtual void ClearOptions ()
 deletes m_Options if non-NULL More...
 
virtual void SetOptions (CQueryOptions *opts)
 set global query options ; deletes any pre-existing m_Options More...
 
- Public Member Functions inherited from ddcObject
 ddcObject ()
 Default constructor. More...
 
virtual ~ddcObject ()
 virtual destructor does nothing More...
 
template<typename Visit >
ddcObjectTraverse (Visit &visit)
 
template<typename Visit >
ddcObjectTraverse (Visit &visit) const
 
template<typename Visit >
ddcObjectTraverseR (Visit &visit)
 
template<typename Visit >
ddcObjectTraverseR (Visit &visit) const
 
virtual ddcObjectList Descendants () const
 

Public Attributes

CQuerym_dtr1
 first query argument (required) More...
 
CQuerym_dtr2
 second query argument (required) More...
 
CQuerym_dtr3
 thrid query argument (NULL for none) More...
 
BYTE m_Dist
 maximum distance More...
 
- Public Attributes inherited from CQNegatable
bool m_Negated
 whether this query is negated More...
 
- Public Attributes inherited from CQuery
string m_Label
 arbitrary name for this query node (e.g. string from which it was parsed) More...
 
CQueryCompilerm_Compiler
 associated query compiler (only set on Compile()) More...
 
CQueryNodem_Node
 underlying CQueryNode (DDC-v1.x API) More...
 
CQueryOptionsm_Options
 root-level options (root queries only) More...
 
- Public Attributes inherited from ddcObject
void * m_User
 user data associated with this object (for use e.g. by perl wrappers) More...
 

Detailed Description

'NEAR' query (e.g. NEAR(a,b,2)) un-ordered proximity constraint over 2 sub-queries

Constructor & Destructor Documentation

◆ CQNear()

CQNear::CQNear ( BYTE  dist = 1,
CQuery dtr1 = NULL,
CQuery dtr2 = NULL,
CQuery dtr3 = NULL 
)
inline

◆ ~CQNear()

CQNear::~CQNear ( )
virtual

destructor deletes daughter nodes

References CQuery::Clear().

Here is the call graph for this function:

Member Function Documentation

◆ ClearNode()

void CQNear::ClearNode ( )
virtual

deletes associated daughter nodes (avoiding double-free)

Reimplemented from CQuery.

References CQuery::ClearNode(), CQuery::m_Node, CQueryNearNode::m_pChild1, CQueryNearNode::m_pChild2, and CQueryNearNode::m_pChild3.

Here is the call graph for this function:

◆ Clear()

void CQNear::Clear ( bool  deep = true)
virtual

clear query contents. if deep is true, propagates operation to daughters

Reimplemented from CQuery.

References CQuery::ClearNode(), and CQuery::ClearOptions().

Here is the call graph for this function:

◆ Children()

ddcObjectList CQNear::Children ( ) const
virtual

get a list of direct non-NULL CQuery direct daughters of this node

Reimplemented from CQuery.

References CQuery::Children().

Here is the call graph for this function:

◆ DisownChildren()

void CQNear::DisownChildren ( )
virtual

"disown" any direct child nodes, preventing their destruction if the current object is deleted

Reimplemented from CQuery.

References CQuery::DisownChildren().

Here is the call graph for this function:

◆ GetMatchId()

BYTE CQNear::GetMatchId ( ) const
virtual

get match-id: dtr3 > dtr2 > dtr1

Reimplemented from CQuery.

◆ SetMatchId()

BYTE CQNear::SetMatchId ( BYTE  matchId)
virtual

Set match-id, returns new value; override propagates matchId to daughers.

Reimplemented from CQuery.

◆ Compile()

bool CQNear::Compile ( CQueryCompiler compiler)
virtual

Compile() method implicitly compiles daughter nodes.

Reimplemented from CQNegatable.

References CQNegatable::Compile(), CQueryNearNode::Create(), errParseError, CQuery::m_Node, CQueryCompiler::m_pHolder, MaxDistanceForNear, CQuery::SetCompiler(), and CQuery::toString().

Here is the call graph for this function:

◆ toString()

string CQNear::toString ( void  )
virtual

DEBUG: return a canonical string form for this query (default just returns m_Label)

Reimplemented from CQuery.

References Format().

Here is the call graph for this function:

◆ jsonClass()

virtual string CQNear::jsonClass ( void  )
inlinevirtual

class-name for json strinfication

  • default implementation returns C++ class name

Reimplemented from CQNegatable.

References CQuery::jsonData().

Here is the call graph for this function:

◆ jsonData()

string CQNear::jsonData ( void  )
virtual

instance data for json stringification

  • default implementation returns "NODATA":1, for strict syntax compliance

Reimplemented from CQNegatable.

References Format(), and CQNegatable::jsonData().

Here is the call graph for this function:

Member Data Documentation

◆ m_dtr1

CQuery* CQNear::m_dtr1

first query argument (required)

◆ m_dtr2

CQuery* CQNear::m_dtr2

second query argument (required)

◆ m_dtr3

CQuery* CQNear::m_dtr3

thrid query argument (NULL for none)

◆ m_Dist

BYTE CQNear::m_Dist

maximum distance


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