Add a function to call a function by name.
This commit is contained in:
@@ -34,6 +34,18 @@ void libab_interpreter_init(libab_interpreter* intr, struct libab_s* ab);
|
||||
*/
|
||||
libab_result libab_interpreter_run(libab_interpreter* intr, libab_tree* tree,
|
||||
libab_ref* into);
|
||||
/**
|
||||
* Calls a function with the given parameters.
|
||||
* @param intr the interpreter to use to call the function.
|
||||
* @param function the function to call.
|
||||
* @param params the parameters to pass to the function.
|
||||
* @param into the reference to store the result into.
|
||||
* @return the result of the call.
|
||||
*/
|
||||
libab_result libab_interpreter_run_function(libab_interpreter* intr,
|
||||
const char* function,
|
||||
libab_ref_vec* params,
|
||||
libab_ref* into);
|
||||
/**
|
||||
* Frees the given interpreter.
|
||||
* @param intr the interpreter to free.
|
||||
|
||||
@@ -174,6 +174,17 @@ void libab_get_type_function_list(libab* ab, libab_ref* into);
|
||||
* @return the result of the computation.
|
||||
*/
|
||||
libab_result libab_run(libab* ab, const char* string, libab_ref* value);
|
||||
/**
|
||||
* Calls a function with the given name and parameters.
|
||||
* @param ab the libabacus instance to use to call the function.
|
||||
* @param function the name of the function to call.
|
||||
* @param iunto the reference into which to store the result.
|
||||
* @param param_count the number of parameters given to this function.
|
||||
* @return the result of the call.
|
||||
*/
|
||||
libab_result libab_run_function(libab* ab, const char* function,
|
||||
libab_ref* into,
|
||||
size_t param_count, ...);
|
||||
|
||||
/**
|
||||
* Releases all the resources allocated by libabacus.
|
||||
|
||||
Reference in New Issue
Block a user