OpenStructure
Public Member Functions | Protected Attributes | Friends
QueryImpl Class Reference

#include <query_impl.hh>

Public Member Functions

 QueryImpl (const String &query_string="")
 QueryImpl (Node *ast)
bool IsValid () const
bool IsEmpty () const
const StringGetQueryString () const
const QueryErrorDescGetErrorDescription () const
mol::QueryState CreateQueryState (const EntityHandle &h) const
mol::QueryState CreateQueryState (const EntityView &v) const

Protected Attributes

std::vector< SelStmtsel_values_
std::vector< SelStacksel_stacks_
std::vector< std::set< size_t > > indices_
std::vector< bool > inversion_stack_
std::vector< QueryImplPbracketed_expr_

Friends

class mol::QueryState

Detailed Description

query statement implementation

Definition at line 164 of file query_impl.hh.


Constructor & Destructor Documentation

QueryImpl ( const String query_string = "")

Construct new QueryImpl object.

QueryImpl ( Node ast)

Construct new QueryImpl from AST tree. Used internally to build representation of bracketed sub expressions.


Member Function Documentation

mol::QueryState CreateQueryState ( const EntityHandle h) const
mol::QueryState CreateQueryState ( const EntityView v) const
const QueryErrorDesc& GetErrorDescription ( ) const
const String& GetQueryString ( ) const

Retrieve query String.

bool IsEmpty ( ) const

Check if query was empty, ie matching all.

bool IsValid ( ) const

Find out if the query String is valid.


Friends And Related Function Documentation

friend class mol::QueryState
friend

Definition at line 166 of file query_impl.hh.


Field Documentation

std::vector<QueryImplP> bracketed_expr_
protected

Definition at line 278 of file query_impl.hh.

std::vector<std::set<size_t> > indices_
protected

Definition at line 276 of file query_impl.hh.

std::vector<bool> inversion_stack_
protected

Definition at line 277 of file query_impl.hh.

std::vector<SelStack> sel_stacks_
protected

Definition at line 275 of file query_impl.hh.

std::vector<SelStmt> sel_values_
protected

Definition at line 274 of file query_impl.hh.


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