diff options
author | Elias Fleckenstein <eliasfleckenstein@web.de> | 2021-12-30 16:53:37 +0100 |
---|---|---|
committer | Elias Fleckenstein <eliasfleckenstein@web.de> | 2021-12-30 16:53:37 +0100 |
commit | 4c52777ca9e52edd0bff76168d886de9757ea457 (patch) | |
tree | 385c548fbae43f4b4764a1c32d5babe60c84aa4d /api/vm.h | |
parent | 058d954e80f83c26deb209008f11d87a5b59418e (diff) | |
download | uwu-lang-4c52777ca9e52edd0bff76168d886de9757ea457.tar.xz |
Add :ref module and refactor type handling
Diffstat (limited to 'api/vm.h')
-rw-r--r-- | api/vm.h | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -13,9 +13,9 @@ typedef enum typedef struct { - void *(*copy )(void *data); - void (*delete)(void *data); - char *(*print )(void *data); + void *(*clone)(void *data); + void (*delet)(void *data); + char *(*print)(void *data); } UwUVMType; typedef struct @@ -71,11 +71,11 @@ typedef struct size_t num_libraries; } UwUVMProgram; -void uwuvm_free_value(UwUVMValue value); -void uwuvm_free_args(UwUVMArgs *args); -UwUVMValue uwuvm_copy_value(UwUVMValue value); +UwUVMValue uwuvm_clone_value(UwUVMValue value); +void uwuvm_delet_value(UwUVMValue value); +char *uwuvm_print_value(UwUVMValue value); UwUVMValue uwuvm_get_arg(UwUVMArgs *args, size_t i); UwUVMValue uwuvm_evaluate_expression(UwUVMExpression *expression, UwUVMArgs *args); -UwUVMValue uwuvm_run_function(UwUVMFunction *function, UwUVMArgs args); +UwUVMValue uwuvm_call_function(UwUVMFunction *function, size_t num_args, UwUVMExpression *unevaluated_args, UwUVMArgs *super_args); #endif |