#include "ebisp/expr.h"
#include "ebisp/scope.h"
#include "game.h"
-#include "broadcast_lisp.h"
struct EvalResult
unknown_target(Gc *gc, const char *source, const char *target)
{
trace_assert(game);
- Broadcast *broadcast = nth_alloc(sizeof(Broadcast));
+ Broadcast *broadcast = nth_calloc(1, sizeof(Broadcast));
if (broadcast == NULL) {
return NULL;
}
return unknown_target(gc, "game", target);
}
-struct EvalResult broadcast_load_library(Broadcast *broadcast,
- Gc *gc,
- struct Scope *scope)
+void broadcast_load_library(Broadcast *broadcast,
+ Gc *gc,
+ struct Scope *scope)
{
trace_assert(gc);
trace_assert(scope);
trace_assert(broadcast);
- set_scope_value(gc, scope, SYMBOL(gc, "send-native"), NATIVE(gc, send, broadcast));
-
- struct EvalResult result = eval_block(gc, scope, broadcast_lisp_library(gc));
- if (result.is_error) {
- return result;
- }
-
- return eval_success(NIL(gc));
+ set_scope_value(gc, scope, SYMBOL(gc, "send"), NATIVE(gc, send, broadcast));
}