CYCLUS
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions
query_backend.h File Reference
#include <climits>
#include <list>
#include <map>
#include <set>
#include <boost/version.hpp>
#include <boost/uuid/sha1.hpp>
#include "blob.h"
#include "rec_backend.h"
#include "any.hpp"

Go to the source code of this file.

Classes

struct  cyclus::ColumnInfo
 
class  cyclus::Cond
 
class  cyclus::CondInjector
 
class  cyclus::Digest
 
class  cyclus::FullBackend
 
class  cyclus::PrefixInjector
 
class  cyclus::QueryableBackend
 
class  cyclus::QueryResult
 
class  cyclus::Sha1
 

Namespaces

 cyclus
 

Macros

#define CYCLUS_SHA1_NINT   5
 
#define CYCLUS_SHA1_SIZE   20
 
#define CYCLUS_UUID_SIZE   16
 

Typedefs

typedef std::vector< boost::spirit::hold_anycyclus::QueryRow
 

Enumerations

enum  cyclus::CmpOpCode {
  cyclus::LT = 0, cyclus::GT, cyclus::LE, cyclus::GE,
  cyclus::EQ, cyclus::NE
}
 
enum  cyclus::DbTypes {
  cyclus::BOOL = 0, cyclus::INT, cyclus::FLOAT, cyclus::DOUBLE,
  cyclus::STRING, cyclus::VL_STRING, cyclus::BLOB, cyclus::UUID,
  cyclus::VECTOR_BOOL, cyclus::VL_VECTOR_BOOL, cyclus::VECTOR_INT, cyclus::VL_VECTOR_INT,
  cyclus::VECTOR_FLOAT, cyclus::VL_VECTOR_FLOAT, cyclus::VECTOR_DOUBLE, cyclus::VL_VECTOR_DOUBLE,
  cyclus::VECTOR_STRING, cyclus::VL_VECTOR_STRING, cyclus::VECTOR_VL_STRING, cyclus::VL_VECTOR_VL_STRING,
  cyclus::VECTOR_BLOB, cyclus::VL_VECTOR_BLOB, cyclus::VECTOR_UUID, cyclus::VL_VECTOR_UUID,
  cyclus::SET_BOOL, cyclus::VL_SET_BOOL, cyclus::SET_INT, cyclus::VL_SET_INT,
  cyclus::SET_FLOAT, cyclus::VL_SET_FLOAT, cyclus::SET_DOUBLE, cyclus::VL_SET_DOUBLE,
  cyclus::SET_STRING, cyclus::VL_SET_STRING, cyclus::SET_VL_STRING, cyclus::VL_SET_VL_STRING,
  cyclus::SET_BLOB, cyclus::VL_SET_BLOB, cyclus::SET_UUID, cyclus::VL_SET_UUID,
  cyclus::LIST_BOOL, cyclus::VL_LIST_BOOL, cyclus::LIST_INT, cyclus::VL_LIST_INT,
  cyclus::LIST_FLOAT, cyclus::VL_LIST_FLOAT, cyclus::LIST_DOUBLE, cyclus::VL_LIST_DOUBLE,
  cyclus::LIST_STRING, cyclus::VL_LIST_STRING, cyclus::LIST_VL_STRING, cyclus::VL_LIST_VL_STRING,
  cyclus::LIST_BLOB, cyclus::VL_LIST_BLOB, cyclus::LIST_UUID, cyclus::VL_LIST_UUID,
  cyclus::PAIR_INT_BOOL, cyclus::PAIR_INT_INT, cyclus::PAIR_INT_FLOAT, cyclus::PAIR_INT_DOUBLE,
  cyclus::PAIR_INT_STRING, cyclus::PAIR_INT_VL_STRING, cyclus::PAIR_INT_BLOB, cyclus::PAIR_INT_UUID,
  cyclus::PAIR_STRING_BOOL, cyclus::PAIR_STRING_INT, cyclus::PAIR_STRING_FLOAT, cyclus::PAIR_STRING_DOUBLE,
  cyclus::PAIR_STRING_STRING, cyclus::PAIR_STRING_VL_STRING, cyclus::PAIR_STRING_BLOB, cyclus::PAIR_STRING_UUID,
  cyclus::PAIR_VL_STRING_BOOL, cyclus::PAIR_VL_STRING_INT, cyclus::PAIR_VL_STRING_FLOAT, cyclus::PAIR_VL_STRING_DOUBLE,
  cyclus::PAIR_VL_STRING_STRING, cyclus::PAIR_VL_STRING_VL_STRING, cyclus::PAIR_VL_STRING_BLOB, cyclus::PAIR_VL_STRING_UUID,
  cyclus::MAP_INT_BOOL, cyclus::VL_MAP_INT_BOOL, cyclus::MAP_INT_INT, cyclus::VL_MAP_INT_INT,
  cyclus::MAP_INT_FLOAT, cyclus::VL_MAP_INT_FLOAT, cyclus::MAP_INT_DOUBLE, cyclus::VL_MAP_INT_DOUBLE,
  cyclus::MAP_INT_STRING, cyclus::VL_MAP_INT_STRING, cyclus::MAP_INT_VL_STRING, cyclus::VL_MAP_INT_VL_STRING,
  cyclus::MAP_INT_BLOB, cyclus::VL_MAP_INT_BLOB, cyclus::MAP_INT_UUID, cyclus::VL_MAP_INT_UUID,
  cyclus::MAP_STRING_BOOL, cyclus::VL_MAP_STRING_BOOL, cyclus::MAP_STRING_INT, cyclus::VL_MAP_STRING_INT,
  cyclus::MAP_STRING_FLOAT, cyclus::VL_MAP_STRING_FLOAT, cyclus::MAP_STRING_DOUBLE, cyclus::VL_MAP_STRING_DOUBLE,
  cyclus::MAP_STRING_STRING, cyclus::VL_MAP_STRING_STRING, cyclus::MAP_STRING_VL_STRING, cyclus::VL_MAP_STRING_VL_STRING,
  cyclus::MAP_STRING_BLOB, cyclus::VL_MAP_STRING_BLOB, cyclus::MAP_STRING_UUID, cyclus::VL_MAP_STRING_UUID,
  cyclus::MAP_VL_STRING_BOOL, cyclus::VL_MAP_VL_STRING_BOOL, cyclus::MAP_VL_STRING_INT, cyclus::VL_MAP_VL_STRING_INT,
  cyclus::MAP_VL_STRING_FLOAT, cyclus::VL_MAP_VL_STRING_FLOAT, cyclus::MAP_VL_STRING_DOUBLE, cyclus::VL_MAP_VL_STRING_DOUBLE,
  cyclus::MAP_VL_STRING_STRING, cyclus::VL_MAP_VL_STRING_STRING, cyclus::MAP_VL_STRING_VL_STRING, cyclus::VL_MAP_VL_STRING_VL_STRING,
  cyclus::MAP_VL_STRING_BLOB, cyclus::VL_MAP_VL_STRING_BLOB, cyclus::MAP_VL_STRING_UUID, cyclus::VL_MAP_VL_STRING_UUID,
  cyclus::MAP_PAIR_INT_STRING_DOUBLE, cyclus::VL_MAP_PAIR_INT_STRING_DOUBLE, cyclus::MAP_PAIR_INT_VL_STRING_DOUBLE, cyclus::VL_MAP_PAIR_INT_VL_STRING_DOUBLE,
  cyclus::MAP_STRING_VECTOR_DOUBLE, cyclus::MAP_STRING_VL_VECTOR_DOUBLE, cyclus::VL_MAP_STRING_VECTOR_DOUBLE, cyclus::MAP_VL_STRING_VECTOR_DOUBLE,
  cyclus::MAP_VL_STRING_VL_VECTOR_DOUBLE, cyclus::VL_MAP_STRING_VL_VECTOR_DOUBLE, cyclus::VL_MAP_VL_STRING_VECTOR_DOUBLE, cyclus::VL_MAP_VL_STRING_VL_VECTOR_DOUBLE,
  cyclus::MAP_STRING_MAP_INT_DOUBLE, cyclus::MAP_STRING_VL_MAP_INT_DOUBLE, cyclus::VL_MAP_STRING_MAP_INT_DOUBLE, cyclus::MAP_VL_STRING_MAP_INT_DOUBLE,
  cyclus::MAP_VL_STRING_VL_MAP_INT_DOUBLE, cyclus::VL_MAP_STRING_VL_MAP_INT_DOUBLE, cyclus::VL_MAP_VL_STRING_MAP_INT_DOUBLE, cyclus::VL_MAP_VL_STRING_VL_MAP_INT_DOUBLE,
  cyclus::MAP_STRING_PAIR_DOUBLE_MAP_INT_DOUBLE, cyclus::VL_MAP_STRING_PAIR_DOUBLE_MAP_INT_DOUBLE, cyclus::MAP_VL_STRING_PAIR_DOUBLE_MAP_INT_DOUBLE, cyclus::MAP_STRING_PAIR_DOUBLE_VL_MAP_INT_DOUBLE,
  cyclus::VL_MAP_VL_STRING_PAIR_DOUBLE_MAP_INT_DOUBLE, cyclus::VL_MAP_STRING_PAIR_DOUBLE_VL_MAP_INT_DOUBLE, cyclus::MAP_VL_STRING_PAIR_DOUBLE_VL_MAP_INT_DOUBLE, cyclus::VL_MAP_VL_STRING_PAIR_DOUBLE_VL_MAP_INT_DOUBLE,
  cyclus::MAP_INT_MAP_STRING_DOUBLE, cyclus::MAP_INT_MAP_VL_STRING_DOUBLE, cyclus::VL_MAP_INT_MAP_STRING_DOUBLE, cyclus::VL_MAP_INT_MAP_VL_STRING_DOUBLE,
  cyclus::MAP_INT_VL_MAP_STRING_DOUBLE, cyclus::MAP_INT_VL_MAP_VL_STRING_DOUBLE, cyclus::VL_MAP_INT_VL_MAP_STRING_DOUBLE, cyclus::VL_MAP_INT_VL_MAP_VL_STRING_DOUBLE,
  cyclus::MAP_STRING_VECTOR_PAIR_INT_PAIR_STRING_STRING, cyclus::MAP_STRING_VECTOR_PAIR_INT_PAIR_STRING_VL_STRING, cyclus::MAP_STRING_VECTOR_PAIR_INT_PAIR_VL_STRING_STRING, cyclus::MAP_STRING_VECTOR_PAIR_INT_PAIR_VL_STRING_VL_STRING,
  cyclus::MAP_STRING_VL_VECTOR_PAIR_INT_PAIR_STRING_STRING, cyclus::MAP_STRING_VL_VECTOR_PAIR_INT_PAIR_STRING_VL_STRING, cyclus::MAP_STRING_VL_VECTOR_PAIR_INT_PAIR_VL_STRING_STRING, cyclus::MAP_STRING_VL_VECTOR_PAIR_INT_PAIR_VL_STRING_VL_STRING,
  cyclus::MAP_VL_STRING_VECTOR_PAIR_INT_PAIR_STRING_STRING, cyclus::MAP_VL_STRING_VECTOR_PAIR_INT_PAIR_STRING_VL_STRING, cyclus::MAP_VL_STRING_VECTOR_PAIR_INT_PAIR_VL_STRING_STRING, cyclus::MAP_VL_STRING_VECTOR_PAIR_INT_PAIR_VL_STRING_VL_STRING,
  cyclus::MAP_VL_STRING_VL_VECTOR_PAIR_INT_PAIR_STRING_STRING, cyclus::MAP_VL_STRING_VL_VECTOR_PAIR_INT_PAIR_STRING_VL_STRING, cyclus::MAP_VL_STRING_VL_VECTOR_PAIR_INT_PAIR_VL_STRING_STRING, cyclus::MAP_VL_STRING_VL_VECTOR_PAIR_INT_PAIR_VL_STRING_VL_STRING,
  cyclus::VL_MAP_STRING_VECTOR_PAIR_INT_PAIR_STRING_STRING, cyclus::VL_MAP_STRING_VECTOR_PAIR_INT_PAIR_STRING_VL_STRING, cyclus::VL_MAP_STRING_VECTOR_PAIR_INT_PAIR_VL_STRING_STRING, cyclus::VL_MAP_STRING_VECTOR_PAIR_INT_PAIR_VL_STRING_VL_STRING,
  cyclus::VL_MAP_STRING_VL_VECTOR_PAIR_INT_PAIR_STRING_STRING, cyclus::VL_MAP_STRING_VL_VECTOR_PAIR_INT_PAIR_STRING_VL_STRING, cyclus::VL_MAP_STRING_VL_VECTOR_PAIR_INT_PAIR_VL_STRING_STRING, cyclus::VL_MAP_STRING_VL_VECTOR_PAIR_INT_PAIR_VL_STRING_VL_STRING,
  cyclus::VL_MAP_VL_STRING_VECTOR_PAIR_INT_PAIR_STRING_STRING, cyclus::VL_MAP_VL_STRING_VECTOR_PAIR_INT_PAIR_STRING_VL_STRING, cyclus::VL_MAP_VL_STRING_VECTOR_PAIR_INT_PAIR_VL_STRING_STRING, cyclus::VL_MAP_VL_STRING_VECTOR_PAIR_INT_PAIR_VL_STRING_VL_STRING,
  cyclus::VL_MAP_VL_STRING_VL_VECTOR_PAIR_INT_PAIR_STRING_STRING, cyclus::VL_MAP_VL_STRING_VL_VECTOR_PAIR_INT_PAIR_STRING_VL_STRING, cyclus::VL_MAP_VL_STRING_VL_VECTOR_PAIR_INT_PAIR_VL_STRING_STRING, cyclus::VL_MAP_VL_STRING_VL_VECTOR_PAIR_INT_PAIR_VL_STRING_VL_STRING,
  cyclus::LIST_PAIR_INT_INT, cyclus::VL_LIST_PAIR_INT_INT, cyclus::MAP_STRING_PAIR_STRING_VECTOR_DOUBLE, cyclus::MAP_STRING_PAIR_STRING_VL_VECTOR_DOUBLE,
  cyclus::MAP_STRING_PAIR_VL_STRING_VECTOR_DOUBLE, cyclus::MAP_STRING_PAIR_VL_STRING_VL_VECTOR_DOUBLE, cyclus::MAP_VL_STRING_PAIR_STRING_VECTOR_DOUBLE, cyclus::MAP_VL_STRING_PAIR_VL_STRING_VECTOR_DOUBLE,
  cyclus::MAP_VL_STRING_PAIR_STRING_VL_VECTOR_DOUBLE, cyclus::MAP_VL_STRING_PAIR_VL_STRING_VL_VECTOR_DOUBLE, cyclus::VL_MAP_STRING_PAIR_STRING_VECTOR_DOUBLE, cyclus::VL_MAP_VL_STRING_PAIR_STRING_VECTOR_DOUBLE,
  cyclus::VL_MAP_STRING_PAIR_VL_STRING_VECTOR_DOUBLE, cyclus::VL_MAP_STRING_PAIR_STRING_VL_VECTOR_DOUBLE, cyclus::VL_MAP_VL_STRING_PAIR_VL_STRING_VECTOR_DOUBLE, cyclus::VL_MAP_VL_STRING_PAIR_STRING_VL_VECTOR_DOUBLE,
  cyclus::VL_MAP_STRING_PAIR_VL_STRING_VL_VECTOR_DOUBLE, cyclus::VL_MAP_VL_STRING_PAIR_VL_STRING_VL_VECTOR_DOUBLE, cyclus::MAP_STRING_MAP_STRING_INT, cyclus::MAP_STRING_MAP_VL_STRING_INT,
  cyclus::MAP_STRING_VL_MAP_STRING_INT, cyclus::MAP_STRING_VL_MAP_VL_STRING_INT, cyclus::MAP_VL_STRING_MAP_STRING_INT, cyclus::MAP_VL_STRING_VL_MAP_STRING_INT,
  cyclus::MAP_VL_STRING_MAP_VL_STRING_INT, cyclus::MAP_VL_STRING_VL_MAP_VL_STRING_INT, cyclus::VL_MAP_STRING_MAP_STRING_INT, cyclus::VL_MAP_VL_STRING_MAP_STRING_INT,
  cyclus::VL_MAP_STRING_VL_MAP_STRING_INT, cyclus::VL_MAP_STRING_MAP_VL_STRING_INT, cyclus::VL_MAP_STRING_VL_MAP_VL_STRING_INT, cyclus::VL_MAP_VL_STRING_MAP_VL_STRING_INT,
  cyclus::VL_MAP_VL_STRING_VL_MAP_STRING_INT, cyclus::VL_MAP_VL_STRING_VL_MAP_VL_STRING_INT, cyclus::VECTOR_PAIR_PAIR_DOUBLE_DOUBLE_MAP_STRING_DOUBLE, cyclus::VECTOR_PAIR_PAIR_DOUBLE_DOUBLE_MAP_VL_STRING_DOUBLE,
  cyclus::VECTOR_PAIR_PAIR_DOUBLE_DOUBLE_VL_MAP_STRING_DOUBLE, cyclus::VECTOR_PAIR_PAIR_DOUBLE_DOUBLE_VL_MAP_VL_STRING_DOUBLE, cyclus::VL_VECTOR_PAIR_PAIR_DOUBLE_DOUBLE_MAP_STRING_DOUBLE, cyclus::VL_VECTOR_PAIR_PAIR_DOUBLE_DOUBLE_MAP_VL_STRING_DOUBLE,
  cyclus::VL_VECTOR_PAIR_PAIR_DOUBLE_DOUBLE_VL_MAP_STRING_DOUBLE, cyclus::VL_VECTOR_PAIR_PAIR_DOUBLE_DOUBLE_VL_MAP_VL_STRING_DOUBLE, cyclus::PAIR_INT_PAIR_STRING_STRING, cyclus::PAIR_INT_PAIR_VL_STRING_STRING,
  cyclus::PAIR_INT_PAIR_STRING_VL_STRING, cyclus::PAIR_INT_PAIR_VL_STRING_VL_STRING, cyclus::PAIR_DOUBLE_DOUBLE, cyclus::PAIR_PAIR_DOUBLE_DOUBLE_MAP_STRING_DOUBLE,
  cyclus::PAIR_PAIR_DOUBLE_DOUBLE_MAP_VL_STRING_DOUBLE, cyclus::PAIR_PAIR_DOUBLE_DOUBLE_VL_MAP_STRING_DOUBLE, cyclus::PAIR_PAIR_DOUBLE_DOUBLE_VL_MAP_VL_STRING_DOUBLE, cyclus::MATERIAL,
  cyclus::PRODUCT, cyclus::RESOURCE_BUFF, cyclus::RES_BUF_MATERIAL, cyclus::RES_BUF_PRODUCT,
  cyclus::RES_MAP_INT_MATERIAL, cyclus::RES_MAP_INT_PRODUCT, cyclus::RES_MAP_STRING_MATERIAL, cyclus::RES_MAP_STRING_PRODUCT,
  cyclus::RES_MAP_VL_STRING_MATERIAL, cyclus::RES_MAP_VL_STRING_PRODUCT, cyclus::PAIR_DOUBLE_MAP_INT_DOUBLE, cyclus::PAIR_DOUBLE_VL_MAP_INT_DOUBLE,
  cyclus::VECTOR_PAIR_INT_PAIR_STRING_STRING, cyclus::VECTOR_PAIR_INT_PAIR_VL_STRING_STRING, cyclus::VECTOR_PAIR_INT_PAIR_STRING_VL_STRING, cyclus::VECTOR_PAIR_INT_PAIR_VL_STRING_VL_STRING,
  cyclus::VL_VECTOR_PAIR_INT_PAIR_STRING_STRING, cyclus::VL_VECTOR_PAIR_INT_PAIR_VL_STRING_STRING, cyclus::VL_VECTOR_PAIR_INT_PAIR_STRING_VL_STRING, cyclus::VL_VECTOR_PAIR_INT_PAIR_VL_STRING_VL_STRING,
  cyclus::PAIR_STRING_VECTOR_DOUBLE, cyclus::PAIR_VL_STRING_VECTOR_DOUBLE, cyclus::PAIR_STRING_VL_VECTOR_DOUBLE, cyclus::PAIR_VL_STRING_VL_VECTOR_DOUBLE,
  cyclus::MAP_PAIR_STRING_STRING_INT, cyclus::MAP_PAIR_STRING_VL_STRING_INT, cyclus::MAP_PAIR_VL_STRING_STRING_INT, cyclus::MAP_PAIR_VL_STRING_VL_STRING_INT,
  cyclus::VL_MAP_PAIR_STRING_STRING_INT, cyclus::VL_MAP_PAIR_STRING_VL_STRING_INT, cyclus::VL_MAP_PAIR_VL_STRING_STRING_INT, cyclus::VL_MAP_PAIR_VL_STRING_VL_STRING_INT,
  cyclus::MAP_STRING_MAP_STRING_DOUBLE, cyclus::MAP_STRING_MAP_VL_STRING_DOUBLE, cyclus::MAP_STRING_VL_MAP_STRING_DOUBLE, cyclus::MAP_STRING_VL_MAP_VL_STRING_DOUBLE,
  cyclus::MAP_VL_STRING_MAP_STRING_DOUBLE, cyclus::MAP_VL_STRING_VL_MAP_STRING_DOUBLE, cyclus::MAP_VL_STRING_MAP_VL_STRING_DOUBLE, cyclus::MAP_VL_STRING_VL_MAP_VL_STRING_DOUBLE,
  cyclus::VL_MAP_STRING_MAP_STRING_DOUBLE, cyclus::VL_MAP_VL_STRING_MAP_STRING_DOUBLE, cyclus::VL_MAP_STRING_VL_MAP_STRING_DOUBLE, cyclus::VL_MAP_STRING_MAP_VL_STRING_DOUBLE,
  cyclus::VL_MAP_STRING_VL_MAP_VL_STRING_DOUBLE, cyclus::VL_MAP_VL_STRING_MAP_VL_STRING_DOUBLE, cyclus::VL_MAP_VL_STRING_VL_MAP_STRING_DOUBLE, cyclus::VL_MAP_VL_STRING_VL_MAP_VL_STRING_DOUBLE
}
 

Functions

template<typename T >
bool cyclus::CmpCond (T *x, Cond *cond)
 
template<typename T >
bool cyclus::CmpConds (T *x, std::vector< Cond *> *conds)
 

Macro Definition Documentation

◆ CYCLUS_SHA1_NINT

#define CYCLUS_SHA1_NINT   5

Definition at line 22 of file query_backend.h.

◆ CYCLUS_SHA1_SIZE

#define CYCLUS_SHA1_SIZE   20

Definition at line 21 of file query_backend.h.

◆ CYCLUS_UUID_SIZE

#define CYCLUS_UUID_SIZE   16

Definition at line 20 of file query_backend.h.