class
FunctionNORM
Base classes
- class FunctionExpression
Public static functions
- static auto arity() -> int
- static auto help() -> const char*
-
static auto number(double) -> std::
shared_ptr <SQLExpression>
Constructors, destructors, conversion operators
-
FunctionNORM(const std::
string &, const expression::Expressions &) - FunctionNORM(const FunctionNORM&)
- ~FunctionNORM()
Public functions
-
auto clone() const -> std::
shared_ptr <SQLExpression> override -
void print(std::
ostream & s) const override - void preprepare(SQLSelect&) override
- void updateType(SQLSelect& sql) override
- auto isConstant() const -> bool override
-
auto simplify(bool&) -> std::
shared_ptr <SQLExpression> override -
auto reshift(int minColumnShift) const -> std::
shared_ptr <SQLExpression> override -
auto args() -> expression::
Expressions & - void eval(double* out, bool& missing) const virtual
-
auto evalAsString(bool& missing) const -> std::
string virtual -
auto andSplit(expression::
Expressions &) -> bool virtual - auto isNumber() const -> bool virtual
-
void title(const std::
string &) virtual -
auto title() const -> std::
string virtual - void output(SQLOutput&) const virtual
-
void expandStars(const std::
vector <std::reference_wrapper <const SQLTable>>&, expression::Expressions &) virtual - auto isBitfield() const -> bool virtual
- auto bitfieldDef() const -> BitfieldDef
- auto hasMissingValue() const -> bool virtual
- auto missingValue() const -> double
- auto shared_from_this(T... args) -> T
- auto weak_from_this(T... args) -> T
Private functions
-
auto type() const -> const eckit::
sql:: * overridetype:: SQLType - void prepare(SQLSelect&) override
- void cleanup(SQLSelect&) override
- void partialResult() override
- auto eval(bool& missing) const -> double override
- auto isAggregate() const -> bool override
Function documentation
static std::shared_ptr <SQLExpression> eckit::sql::expression::function::FunctionNORM:: number(double)
void eckit::sql::expression::function::FunctionNORM:: print(std::ostream & s) const override
void eckit::sql::expression::function::FunctionNORM:: preprepare(SQLSelect&) override
pre-prepare ideally wouldn't exist. To enable a two-pass prepare of SQL columns for SQLSelect, this is here.
void eckit::sql::expression::function::FunctionNORM:: updateType(SQLSelect& sql) override
bool eckit::sql::expression::function::FunctionNORM:: isConstant() const override
std::shared_ptr <SQLExpression> eckit::sql::expression::function::FunctionNORM:: simplify(bool&) override
std::shared_ptr <SQLExpression> eckit::sql::expression::function::FunctionNORM:: reshift(int minColumnShift) const override
expression::Expressions & eckit::sql::expression::function::FunctionNORM:: args()
std::string eckit::sql::expression::function::FunctionNORM:: evalAsString(bool& missing) const virtual
bool eckit::sql::expression::function::FunctionNORM:: andSplit(expression::Expressions &) virtual
void eckit::sql::expression::function::FunctionNORM:: title(const std::string &) virtual
std::string eckit::sql::expression::function::FunctionNORM:: title() const virtual
void eckit::sql::expression::function::FunctionNORM:: expandStars(const std::vector <std::reference_wrapper <const SQLTable>>&,
expression::Expressions &) virtual
bool eckit::sql::expression::function::FunctionNORM:: isBitfield() const virtual
BitfieldDef eckit::sql::expression::function::FunctionNORM:: bitfieldDef() const
bool eckit::sql::expression::function::FunctionNORM:: hasMissingValue() const virtual
double eckit::sql::expression::function::FunctionNORM:: missingValue() const