diff options
author | chai <chaifix@163.com> | 2021-11-08 01:17:11 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2021-11-08 01:17:11 +0800 |
commit | efce5b6bd5c9d4f8214a71e0f7a7c35751710a4c (patch) | |
tree | 0789475ded5c377667165a3ddb047ca6703bcf33 /ThirdParty/toluapp/src/tests/tclass.pkg | |
parent | ed78df90944bbe6b7de7308bda2bf3a7f1bc3de6 (diff) |
+ tolua
+ lpeg
Diffstat (limited to 'ThirdParty/toluapp/src/tests/tclass.pkg')
-rw-r--r-- | ThirdParty/toluapp/src/tests/tclass.pkg | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/ThirdParty/toluapp/src/tests/tclass.pkg b/ThirdParty/toluapp/src/tests/tclass.pkg new file mode 100644 index 0000000..614245c --- /dev/null +++ b/ThirdParty/toluapp/src/tests/tclass.pkg @@ -0,0 +1,97 @@ +$#include "tclass.h" + +$Test::Tst_A* Test::Tst_A::last; +$Test::Tst_B* Test::Tst_B::last; +$Test::Tst_C* Test::Tst_C::last; + + +$renaming ^Tst_ @ + +namespace Test { + +class Tst_Dummy; + +class Tst_A +{ + static Tst_A* last; + Tst_A (); + virtual char* a (); + class Tst_AA + { + Tst_AA () {} + ~Tst_AA () {} + char* aa () { return "AA"; } + }; + class Tst_BB : public Tst_AA + { + Tst_BB () {} + ~Tst_BB () {} + Tst_AA* Base () { return this; } + }; + + tolua_property int number; +}; + +class Tst_E { +public: + typedef enum{ + ONE, + TWO, + } Pete; + Pete pete; + + float get_t<float>(); + + void get_pete(Pete p); + + Tst_E& operator+(const Tst_E& rvalue); + + void pars(int a=0xa, int b=GetNumber(GetNumber(1,2))); + void get_pointer(void* a=NULL); + + void set_ptr(void* p_ptr) { + printf("this is %p, ptr is %p\n", this, p_ptr); + ptr = p_ptr; + }; + void* get_ptr() {return ptr;}; + + Tst_A a; + Tst_E(int); + //~Tst_E(); +}; + + +class Tst_B : public Tst_A +{ + static Tst_B* last; + Tst_B (); + virtual char* b (); + static Tst_A* create(); + static void* create_void() {return new Tst_B;}; +}; + +class Tst_C@luaC : public Tst_B +{ + static Tst_C* last; + Tst_C (int n); + ~Tst_C (); + virtual char* c (); +}; + +Tst_A::Tst_AA* Tst_create_aa (); +bool Tst_is_aa (Tst_A::Tst_AA* obj); + +class Tst_Outside { + + + tolua_outside void outside_func@outside(lua_State* ls); + + static tolua_outside void outside_func@outside_static(Tst_Outside* instance, lua_State* ls); + + Tst_Outside() {}; +}; + + +}; // end of namespace + + |