forked from WeaselGames/godot_luaAPI
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathluaTuple.cpp
More file actions
63 lines (50 loc) · 1.52 KB
/
Copy pathluaTuple.cpp
File metadata and controls
63 lines (50 loc) · 1.52 KB
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
#include "luaTuple.h"
void LuaTuple::_bind_methods() {
ClassDB::bind_static_method("LuaTuple", D_METHOD("from_array", "Array"), &LuaTuple::fromArray);
ClassDB::bind_method(D_METHOD("push_back", "var"), &LuaTuple::pushBack);
ClassDB::bind_method(D_METHOD("push_front", "var"), &LuaTuple::pushFront);
ClassDB::bind_method(D_METHOD("set_value", "Index", "var"), &LuaTuple::set);
ClassDB::bind_method(D_METHOD("clear"), &LuaTuple::clear);
ClassDB::bind_method(D_METHOD("is_empty"), &LuaTuple::isEmpty);
ClassDB::bind_method(D_METHOD("size"), &LuaTuple::size);
ClassDB::bind_method(D_METHOD("pop_back"), &LuaTuple::popBack);
ClassDB::bind_method(D_METHOD("pop_front"), &LuaTuple::popFront);
ClassDB::bind_method(D_METHOD("get_value", "Index"), &LuaTuple::get);
ClassDB::bind_method(D_METHOD("to_array"), &LuaTuple::toArray);
}
Ref<LuaTuple> LuaTuple::fromArray(Array elms) {
Ref<LuaTuple> tuple;
tuple.instantiate();
tuple->elements = elms;
return tuple;
}
void LuaTuple::pushBack(Variant var) {
elements.push_back(var);
}
void LuaTuple::pushFront(Variant var) {
elements.push_front(var);
}
void LuaTuple::set(int i, Variant var) {
elements[i] = var;
}
void LuaTuple::clear() {
elements.clear();
}
bool LuaTuple::isEmpty() {
return elements.is_empty();
}
int LuaTuple::size() {
return elements.size();
}
Variant LuaTuple::popBack() {
return elements.pop_back();
}
Variant LuaTuple::popFront() {
return elements.pop_front();
}
Variant LuaTuple::get(int i) {
return elements[i];
}
Array LuaTuple::toArray() {
return elements;
}