summaryrefslogtreecommitdiffstats
path: root/source/squirrelbindings/SquirrelArray.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--source/squirrelbindings/SquirrelArray.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/source/squirrelbindings/SquirrelArray.h b/source/squirrelbindings/SquirrelArray.h
new file mode 100644
index 000000000..0c2e34f7f
--- /dev/null
+++ b/source/squirrelbindings/SquirrelArray.h
@@ -0,0 +1,36 @@
+#pragma once
+#include <string>
+
+template <typename T>
+class SquirrelArray
+{
+public:
+ SquirrelArray()
+ {
+ }
+
+ unsigned int Size()
+ {
+ return m_Values.size();
+ }
+
+ T Get(unsigned int a_Index)
+ {
+ if(m_Values.size() < a_Index)
+ {
+ return T();
+ }
+ return m_Values.at(a_Index);
+ }
+
+ void Add(T a_Value)
+ {
+ m_Values.push_back(a_Value);
+ }
+
+protected:
+ std::vector<T> m_Values;
+
+};
+
+class SquirrelStringArray : public SquirrelArray<std::string> { }; \ No newline at end of file