From 8b5370313dcc00a45ea5c3e8b4c497bc00fd8e13 Mon Sep 17 00:00:00 2001 From: Ben Longbons Date: Tue, 11 Jun 2013 21:55:13 -0700 Subject: Allegedly remove all manual memory management --- src/map/magic-expr.hpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'src/map/magic-expr.hpp') diff --git a/src/map/magic-expr.hpp b/src/map/magic-expr.hpp index 419c833..7f3e1e1 100644 --- a/src/map/magic-expr.hpp +++ b/src/map/magic-expr.hpp @@ -21,14 +21,14 @@ typedef struct fun const char *name; const char *signature; char ret_ty; - int(*fun)(env_t *env, int args_nr, val_t *result, val_t *args); + int (*fun)(dumb_ptr env, val_t *result, const_array arga); } fun_t; typedef struct op { const char *name; const char *signature; - int(*op)(env_t *env, int args_nr, val_t *args); + int (*op)(dumb_ptr env, const_array arga); } op_t; /** @@ -36,40 +36,40 @@ typedef struct op * @param name The name to look up * @return A function of that name, or NULL, and a function index */ -fun_t *magic_get_fun(const char *name, int *index); +fun_t *magic_get_fun(const std::string& name, int *index); /** * Retrieves an operation by name * @param name The name to look up * @return An operation of that name, or NULL, and a function index */ -op_t *magic_get_op(char *name, int *index); +op_t *magic_get_op(const std::string& name, int *index); /** * Evaluates an expression and stores the result in `dest' */ -void magic_eval(env_t *env, val_t *dest, expr_t *expr); +void magic_eval(dumb_ptr env, val_t *dest, dumb_ptr expr); /** * Evaluates an expression and coerces the result into an integer */ -int magic_eval_int(env_t *env, expr_t *expr); +int magic_eval_int(dumb_ptr env, dumb_ptr expr); /** * Evaluates an expression and coerces the result into a string */ -char *magic_eval_str(env_t *env, expr_t *expr); +std::string magic_eval_str(dumb_ptr env, dumb_ptr expr); -expr_t *magic_new_expr(EXPR ty); +dumb_ptr magic_new_expr(EXPR ty); void magic_clear_var(val_t *v); void magic_copy_var(val_t *dest, val_t *src); -void magic_random_location(location_t *dest, area_t *area); +void magic_random_location(location_t *dest, dumb_ptr area); // ret -1: not a string, ret 1: no such item, ret 0: OK -int magic_find_item(val_t *args, int index, struct item *item, int *stackable); +int magic_find_item(const_array args, int index, struct item *item, int *stackable); #define GET_ARG_ITEM(index, dest, stackable) \ switch (magic_find_item(args, index, &dest, &stackable)) \ @@ -79,6 +79,6 @@ int magic_find_item(val_t *args, int index, struct item *item, int *stackable); default: break; \ } -int magic_location_in_area(int m, int x, int y, area_t *area); +int magic_location_in_area(map_local *m, int x, int y, dumb_ptr area); #endif // MAGIC_EXPR_HPP -- cgit v1.2.3-60-g2f50