Array.hpp 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. #ifndef ARRAY_H
  2. #define ARRAY_H
  3. #include <godot/array.h>
  4. #include "String.hpp"
  5. namespace godot {
  6. class Variant;
  7. class PoolByteArray;
  8. class PoolIntArray;
  9. class PoolRealArray;
  10. class PoolStringArray;
  11. class PoolVector2Array;
  12. class PoolVector3Array;
  13. class PoolColorArray;
  14. class Object;
  15. class Array {
  16. godot_array _godot_array;
  17. public:
  18. Array();
  19. Array(const PoolByteArray& a);
  20. Array(const PoolIntArray& a);
  21. Array(const PoolRealArray& a);
  22. Array(const PoolStringArray& a);
  23. Array(const PoolVector2Array& a);
  24. Array(const PoolVector3Array& a);
  25. Array(const PoolColorArray& a);
  26. Variant& operator [](const int idx);
  27. Variant operator [](const int idx) const;
  28. void append(const Variant& v);
  29. void clear();
  30. int count(const Variant& v);
  31. bool empty() const;
  32. void erase(const Variant& v);
  33. Variant front() const;
  34. Variant back() const;
  35. int find(const Variant& what, const int from = 0);
  36. int find_last(const Variant& what);
  37. bool has(const Variant& what) const;
  38. uint32_t hash() const;
  39. void insert(const int pos, const Variant& value);
  40. void invert();
  41. bool is_shared() const;
  42. Variant pop_back();
  43. Variant pop_front();
  44. void push_back(const Variant& v);
  45. void push_front(const Variant& v);
  46. void remove(const int idx);
  47. int size() const;
  48. void resize(const int size);
  49. int rfind(const Variant& what, const int from = -1);
  50. void sort();
  51. void sort_custom(Object *obj, const String& func);
  52. ~Array();
  53. };
  54. }
  55. #endif // ARRAY_H