2015-08-06 22:24:15 -07:00
|
|
|
#include <string.h>
|
|
|
|
|
|
2015-08-13 09:09:27 -07:00
|
|
|
#include "value.h"
|
2015-08-06 22:24:15 -07:00
|
|
|
|
|
|
|
|
static WrenValue* value;
|
|
|
|
|
|
|
|
|
|
static void setValue(WrenVM* vm)
|
|
|
|
|
{
|
2015-12-16 10:22:42 -08:00
|
|
|
value = wrenGetSlotValue(vm, 1);
|
2015-08-06 22:24:15 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void getValue(WrenVM* vm)
|
|
|
|
|
{
|
2015-12-16 13:00:13 -08:00
|
|
|
wrenSetSlotValue(vm, 0, value);
|
2015-08-06 22:24:15 -07:00
|
|
|
wrenReleaseValue(vm, value);
|
|
|
|
|
}
|
|
|
|
|
|
2015-08-15 12:07:53 -07:00
|
|
|
WrenForeignMethodFn valueBindMethod(const char* signature)
|
2015-08-06 22:24:15 -07:00
|
|
|
{
|
2015-12-15 16:02:13 -08:00
|
|
|
if (strcmp(signature, "static Value.value=(_)") == 0) return setValue;
|
|
|
|
|
if (strcmp(signature, "static Value.value") == 0) return getValue;
|
2015-08-06 22:24:15 -07:00
|
|
|
|
|
|
|
|
return NULL;
|
|
|
|
|
}
|