PageRenderTime 40ms CodeModel.GetById 24ms app.highlight 14ms RepoModel.GetById 0ms app.codeStats 0ms

/tags/rel-1-3-15/SWIG/Examples/test-suite/perl5/overload_simple_runme.pl

#
Perl | 120 lines | 87 code | 32 blank | 1 comment | 50 complexity | 540800c7bcfe895343a8b797182fe2cf MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
  1use overload_simple;
  2
  3$f = new overload_simple::Foo();
  4$b = new overload_simple::Bar();
  5$v = overload_simple::malloc_void(32);
  6
  7if (overload_simple::foo(3) != "foo:int") {
  8    die("foo(int)");
  9}
 10
 11if (overload_simple::foo(3.0) != "foo:double") {
 12    die("foo(double)");
 13}
 14
 15if (overload_simple::foo("hello") != "foo:char *") {
 16    die("foo(char *)");
 17}
 18
 19if (overload_simple::foo($f) != "foo:Foo *") {
 20    die("foo(Foo *)");
 21}
 22
 23if (overload_simple::foo($b) != "foo:Bar *") {
 24    die("foo(Bar *)");
 25}
 26
 27if (overload_simple::foo($v) != "foo:void *") {
 28    die("foo(void *)");
 29}
 30
 31$s = new overload_simple::Spam();
 32
 33if ($s->foo(3) != "foo:int") {
 34    die("Spam::foo(int)");
 35}
 36
 37if ($s->foo(3.0) != "foo:double") {
 38    die("Spam::foo(double)");
 39}
 40
 41if ($s->foo("hello") != "foo:char *") {
 42    die("Spam::foo(char *)");
 43}
 44
 45if ($s->foo($f) != "foo:Foo *") {
 46    die("Spam::foo(Foo *)");
 47}
 48
 49if ($s->foo($b) != "foo:Bar *") {
 50    die("Spam::foo(Bar *)");
 51}
 52
 53if ($s->foo($v) != "foo:void *") {
 54    die("Spam::foo(void *)");
 55}
 56
 57if (overload_simple::Spam::bar(3) != "bar:int") {
 58    die("Spam::bar(int)");
 59}
 60
 61if (overload_simple::Spam::bar(3.0) != "bar:double") {
 62    die("Spam::bar(double)");
 63}
 64
 65if (overload_simple::Spam::bar("hello") != "bar:char *") {
 66    die("Spam::bar(char *)");
 67}
 68
 69if (overload_simple::Spam::bar($f) != "bar:Foo *") {
 70    die("Spam::bar(Foo *)");
 71}
 72
 73if (overload_simple::Spam::bar($b) != "bar:Bar *") {
 74    die("Spam::bar(Bar *)");
 75}
 76
 77if (overload_simple::Spam::bar($v) != "bar:void *") {
 78    die("Spam::bar(void *)");
 79}
 80
 81# Test constructors
 82
 83$s = new overload_simple::Spam();
 84if ($s->{type} != "none") {
 85    die("Spam()");
 86}
 87
 88$s = new overload_simple::Spam(3);
 89if ($s->{type} != "int") {
 90    die("Spam(int)");
 91}
 92
 93$s = new overload_simple::Spam(3.0);
 94if ($s->{type} != "double") {
 95    die("Spam(double)");
 96}
 97
 98$s = new overload_simple::Spam("hello");
 99if ($s->{type} != "char *") {
100    die("Spam(char *)");
101}
102
103$s = new overload_simple::Spam($f);
104if ($s->{type} != "Foo *") {
105    die("Spam(Foo *)");
106}
107
108$s = new overload_simple::Spam($b);
109if ($s->{type} != "Bar *") {
110    die("Spam(Bar *)");
111}
112
113$s = new overload_simple::Spam($v);
114if ($s->{type} != "void *") {
115    die("Spam(void *)");
116}
117
118
119
120