|
libdap
Updated for version 3.20.8
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.