libdap
Updated for version 3.20.6
libdap4 is an implementation of OPeNDAP's DAP protocol.
|
#include <D4FunctionEvaluator.h>
Public Member Functions | |
D4FunctionEvaluator (DMR *dmr, ServerFunctionsList *sf_list) | |
DMR * | dmr () const |
void | error (const libdap::location &l, const std::string &m) |
void | eval (DMR *dmr) |
unsigned long long | get_arg_length_hint () const |
template<typename t > | |
std::vector< t > * | init_arg_list (t val) |
template<typename T > | |
std::vector< T > * | init_arg_list (T val) |
bool | parse (const std::string &expr) |
D4RValueList * | result () const |
void | set_arg_length_hint (unsigned long long alh) |
void | set_dmr (DMR *dmr) |
void | set_result (D4RValueList *rv_list) |
void | set_sf_list (ServerFunctionsList *sf_list) |
void | set_trace_parsing (bool tp) |
void | set_trace_scanning (bool ts) |
ServerFunctionsList * | sf_list () const |
bool | trace_parsing () const |
bool | trace_scanning () const |
Friends | |
class | D4FunctionParser |
Driver for the DAP4 Functional expression parser.
Definition at line 48 of file D4FunctionEvaluator.h.
void libdap::D4FunctionEvaluator::eval | ( | DMR * | function_result | ) |
Evaluate the recently parsed function expression and put the resulting rvalues (which return values packaged in libdap BaseType objects) into the top-level Group of the DMR passed as a param here.
dmr | Store the results here |
Throws | Error if the evaluation fails. |
Definition at line 109 of file D4FunctionEvaluator.cc.
bool libdap::D4FunctionEvaluator::parse | ( | const std::string & | expr | ) |
Parse the DAP4 function expression.
Calling this method with a DAP4 function expression builds a D4RvalueList that can then be evaluated. The list of rvalues can be accessed or evaluated (using the result() or eval() methods). Note that the result is a list of rvalues because the input can be zero or more function expressions.
expr | The function expression. |
Definition at line 66 of file D4FunctionEvaluator.cc.
|
inline |
Get the result of parsing the function(s)
Definition at line 127 of file D4FunctionEvaluator.h.