/
global.cc
108 lines (90 loc) · 1.39 KB
/
global.cc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#include <natus-internal.hh>
Class::~Class()
{
}
Class::Hooks
Class::getHooks()
{
return Class::HookNone;
}
Value
Class::del(Value& obj, Value& idx)
{
return NULL;
}
Value
Class::get(Value& obj, Value& idx)
{
return NULL;
}
Value
Class::set(Value& obj, Value& idx, Value& val)
{
return NULL;
}
Value
Class::enumerate(Value& obj)
{
return NULL;
}
Value
Class::call(Value& obj, Value& ths, Value& arg)
{
return NULL;
}
Value::Value()
{
internal = NULL;
}
Value::Value(natusValue *value, bool steal)
{
if (!steal)
natus_incref(value);
internal = value;
}
Value::Value(const Value& value)
{
internal = natus_incref(value.internal);
}
Value::~Value()
{
natus_decref(internal);
internal = NULL;
}
Value&
Value::operator=(const Value& value)
{
natus_decref(internal);
internal = natus_incref(value.internal);
return *this;
}
Value
Value::newGlobal(const Value global)
{
return natus_new_global_shared(global.internal);
}
Value
Value::newGlobal(const char *name_or_path)
{
return natus_new_global(name_or_path);
}
Value
Value::getGlobal() const
{
return natus_incref(natus_get_global(internal));
}
const char*
Value::getEngineName() const
{
return natus_get_engine_name(internal);
}
bool
Value::borrowContext(void **context, void **value) const
{
return natus_borrow_context(internal, context, value);
}
natusValue*
Value::borrowCValue() const
{
return internal;
}