Classes | Namespaces | Enumerations | Functions | Variables
qExpr.h File Reference

Define the query expression. More...

#include "util.h"
#include "array_t.h"

Go to the source code of this file.

Classes

class  ibis::compRange
 The class compRange stores computed ranges. More...
class  ibis::deprecatedJoin
 A join is defined by two names and a numerical expression. More...
class  ibis::math::barrel
 A barrel to hold a list of variables. More...
class  ibis::math::bediener
 An operator. Bediener is German for operator. More...
class  ibis::math::literal
 A string literal. More...
class  ibis::math::number
 A number. More...
class  ibis::math::stdFunction1
 One-argument standard functions. More...
class  ibis::math::stdFunction2
 Two-argument standard functions. More...
class  ibis::math::term
 The abstract base class for arithmetic terms. More...
class  ibis::math::variable
 A variable. More...
class  ibis::qAnyAny
 A user specifies this type of query expression with the following syntax,. More...
class  ibis::qContinuousRange
 Simple range condition. More...
class  ibis::qDiscreteRange
 A discrete range expression. More...
class  ibis::qExpr
 The top level query expression object. More...
struct  ibis::qExpr::TTN
 A data structure including a query expression and the list of table names mentioned in the expression. More...
struct  ibis::qExpr::weight
 A functor to be used by the function reorder. More...
class  ibis::qIntHod
 This query expression has similar meaning as ibis::qDiscreteRange, however, it stores the values as signed 64-bit integers. More...
class  ibis::qLike
 Representing the operator 'LIKE'. More...
class  ibis::qMultiString
 The column contains one of the values in a list. More...
class  ibis::qRange
 A class to represent simple range conditions. More...
class  ibis::qString
 The class qString encapsulates information for comparing string values. More...
class  ibis::qUIntHod
 This query expression has similar meaning as ibis::qDiscreteRange, however, it stores the values as unsigned 64-bit integers. More...

Namespaces

namespace  ibis
 

The current implementation of FastBit is code named IBIS; most data structures and functions are in the name space ibis.


namespace  ibis::math
 

A namespace for arithmetic expressions.


namespace  std
 

STL namespace.


Enumerations

enum  ibis::math::OPERADOR {
  UNKNOWN = 0, BITOR, BITAND, PLUS,
  MINUS, MULTIPLY, DIVIDE, REMAINDER,
  NEGATE, POWER
}
 All supported arithmetic operators. More...
enum  ibis::math::STDFUN1 {
  ACOS = 0, ASIN, ATAN, CEIL,
  COS, COSH, EXP, FABS,
  FLOOR, FREXP, LOG10, LOG,
  MODF, ROUND, SIN, SINH,
  SQRT, TAN, TANH
}
 Standard 1-argument and 2-argument functions.
enum  STDFUN2 {
  ATAN2 = 0, FMOD, LDEXP, ROUND2,
  POW
}
enum  ibis::math::TERM_TYPE {
  UNDEF_TERM, VARIABLE, NUMBER, STRING,
  OPERATOR, STDFUNCTION1, STDFUNCTION2, CUSTOMFUNCTION1,
  CUSTOMFUNCTION2
}
 Types of terms allowed in the mathematical expressions.

Functions

ostream & std::operator<< (ostream &, const ibis::qExpr &)
 Wrap the function print as operator<<.
ostream & std::operator<< (ostream &, const ibis::qExpr::COMPARE &)
 Print a comparison operator.

Variables

const char * ibis::math::operator_name []
 String form of the operators.
bool ibis::math::preserveInputExpressions = false
 Whether to keep arithmetic expression as user inputed them.
const char * ibis::math::stdfun1_name []
 String form of the one-argument standard functions.
const char * ibis::math::stdfun2_name [] = {"atan2", "fmod", "ldexp", "pow"}
 String form of the two-argument standard functions.

Detailed Description

Define the query expression.

Make It A Bit Faster
Contact us
Disclaimers
FastBit source code
FastBit mailing list archive