Lumiera 0.pre.04~rc.1
»edit your freedom«
Loading...
Searching...
No Matches
QueryHandler< TY > Class Template Referenceabstract

#include "common/config-rules.hpp"

Description

template<class TY>
class lumiera::query::QueryHandler< TY >

the "front side" interface: the Steam-Layer code can use this QueryHandler to retrieve instances of the type TY fulfilling the given Query.

To start with, we use a mock implementation. (this code works and is already used 2/2008)

Todo:
retrofit this to install and use a QueryResolver
See also
lumiera::query::LookupPreconfigured
lumiera::query::MockTable

Definition at line 154 of file config-rules.hpp.

Public Member Functions

virtual bool resolve (P< TY > &solution, Query< TY > const &q)=0
 try to find or create an object of type TY fulfilling the given query.
 

Protected Member Functions

virtual ~QueryHandler ()
 

Constructor & Destructor Documentation

◆ ~QueryHandler()

template<class TY >
virtual ~QueryHandler ( )
inlineprotectedvirtual

Definition at line 157 of file config-rules.hpp.

Member Function Documentation

◆ resolve()

template<class TY >
virtual bool resolve ( P< TY > &  solution,
Query< TY > const &  q 
)
pure virtual

try to find or create an object of type TY fulfilling the given query.

Parameters
solutionobject fulfilling the query. Will be bound or unified (in case it's already bound) with the first solution.
qany goals to be fulfilled by the solution.
Returns
false if resolution failed. In this case, solution ptr is empty.

Referenced by DefsManagerImpl_test::create(), DefsManager::create(), DefsManager::define(), StructFactory::operator()(), steam::mobject::_mapping::resolveQuery(), and DefsManager::search().

+ Here is the caller graph for this function:
+ Collaboration diagram for QueryHandler< TY >:

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