2012-09-18 22:17:13 +01:00
|
|
|
#ifndef EXECUTE_H
|
|
|
|
#define EXECUTE_H
|
|
|
|
#include "bytecode.h"
|
|
|
|
|
|
|
|
|
2013-05-06 14:21:00 +01:00
|
|
|
|
2012-09-18 22:17:13 +01:00
|
|
|
struct bytecode* jq_compile(const char* str);
|
|
|
|
|
2013-05-06 14:21:00 +01:00
|
|
|
/* args must be an array of the form [{name:"foo", value:"thing"}, {name:"bar",value:3}] */
|
|
|
|
struct bytecode* jq_compile_args(const char* str, jv args);
|
|
|
|
|
2013-04-28 18:33:45 -05:00
|
|
|
typedef struct jq_state jq_state;
|
2013-05-05 23:12:10 +01:00
|
|
|
enum {JQ_DEBUG_TRACE = 1};
|
2013-04-28 18:33:45 -05:00
|
|
|
|
2013-05-05 23:12:10 +01:00
|
|
|
void jq_init(struct bytecode* bc, jv value, jq_state **, int flags);
|
2013-04-28 18:33:45 -05:00
|
|
|
jv jq_next(jq_state *);
|
|
|
|
void jq_teardown(jq_state **);
|
2012-09-18 22:17:13 +01:00
|
|
|
|
|
|
|
|
|
|
|
#endif
|