X-Git-Url: https://git.draconx.ca/gitweb/gob-dx.git/blobdiff_plain/dd11885aadcfaafae2d6268c381b0aac94cbc149..486240dc4c5d57b0afaddba60d87fe375112bed5:/src/test.gob diff --git a/src/test.gob b/src/test.gob index 98d8614..be3f543 100644 --- a/src/test.gob +++ b/src/test.gob @@ -7,6 +7,7 @@ requires 0.93.0 %headertop{ /* this should go on the very top of the header */ + %} %ht{ /* this should go on the very top of the header as well */ @@ -37,13 +38,25 @@ static void jjjj(void); %} %h{ +enum _gob__enum_t { + BUDLIKY, BUDLIKY2 +}; + +struct _gob__struct_t { + int i, x, y, z; +}; +union _gob__union_t { + int i, x, y, z; +}; void bubu(void); %} %header{ /* this should be in the header, just under bubu prototype */ +#define TEST_ARRAY 5 %} class Gtk:Weird:Button from Gtk:Button { + public int test_array[TEST_ARRAY]; public int i; argument INT i set { self->i = ARG; } get { ARG = self->i; } ; @@ -58,6 +71,9 @@ class Gtk:Weird:Button from Gtk:Button { destroywith gtk_object_unref; argument POINTER testingobj objectlink; + classwide int foo = 20; + argument INT foo link; + public Gtk:Object * testingobj2 destroy { if(VAR) @@ -102,7 +118,7 @@ class Gtk:Weird:Button from Gtk:Button { return ret; } - private int blah(self, Gtk:Widget * wid (check null type), + private int _blah(self, Gtk:Widget * wid (check null type), int h (check > 0)) onerror -1 { gtk_container_add(GTK_CONTAINER(self),wid); @@ -124,7 +140,7 @@ class Gtk:Weird:Button from Gtk:Button { signal last INT (POINTER, INT) int bleh(self, Gtk:Widget * wid (check null type), int h (check > 0)) { - return blah(self,wid,h); + return _blah(self,wid,h); } /** * gtk_weird_button_bleh2: @@ -136,7 +152,7 @@ class Gtk:Weird:Button from Gtk:Button { * * Returns: new object */ signal last INT (POINTER, INT) - int bleh2(self, Gtk:Widget * wid (check null type), + int bleh2(self, const Gtk:Widget * wid (check null type), int h (check > 0)) { /* testing multiple marshaller support */ return 0; @@ -180,6 +196,14 @@ class Gtk:Weird:Button from Gtk:Button { { return 25; } + public int consttest2(self, gchar const *text, ...) + { + return 25; + } + public int consttest3(self, Gtk:Widget const *wid (check null type)) + { + return 25; + } signal private first NONE (NONE) void googlegoogle(self) { @@ -190,8 +214,9 @@ class Gtk:Weird:Button from Gtk:Button { void googlegoogle2(self) { int array[5][8][9]={{{0}}}; + Self *foo = self; puts("TEST2"); - testprivvirtual(self,array); + testprivvirtual(foo, array); } private signal first NONE (NONE) void googlegoogle3(self) @@ -210,12 +235,12 @@ class Gtk:Weird:Button from Gtk:Button { googlegoogle(self); } private virtual - void testprivvirtual2(self, int some_array[5][8][9]) + void testprivvirtual2(self, const int some_array[5][8][9]) { /* nothing here */ } public virtual - void testpublicvirtual(self, int some_array[5][8][9]) + void testpublicvirtual(self, int const some_array[5][8][9]) { /* nothing here */ } @@ -256,6 +281,14 @@ class Gtk:Weird:Button from Gtk:Button { remove(Gtk:Container * self (check null type), Gtk:Widget * wid (check null type)); + override(Gtk:Object) + void + destroy(Gtk:Object * self (check null type)) + { + /* foo bar */ + PARENT_HANDLER(self); + } + protected int foobar(self) { /* just an empty function */ @@ -285,6 +318,26 @@ class Gtk:Weird:Button from Gtk:Button { { return FALSE; } + + /* testing types */ + public int t1; + public long int t2; + public int long t3; + public int long const t4; + public const int long t5; + public const char * const t6; + public char const * const t7; + public enum _gob__enum_t const * const t8; + public union _gob__union_t t9; + public union _gob__union_t * const * const * t10; + public struct _gob__struct_t * const * const * t11; + public const struct _gob__struct_t * const * const * t13; + public const enum _gob__enum_t * const * const * t14; + public enum _gob__enum_t t15; + public gchar const t16; + public const gchar * const t17; + public const gchar t18; + /* testing empty statements */ ; ;