mirror of https://github.com/swig/swig
58 lines
1.1 KiB
Go
58 lines
1.1 KiB
Go
// Note: This example assumes that namespaces are flattened
|
|
package main
|
|
|
|
import "swigtests/cpp_namespace"
|
|
|
|
func main() {
|
|
n := cpp_namespace.Fact(4)
|
|
if n != 24 {
|
|
panic("Bad return value!")
|
|
}
|
|
|
|
if cpp_namespace.GetFoo() != 42 {
|
|
panic("Bad variable value!")
|
|
}
|
|
|
|
t := cpp_namespace.NewTest()
|
|
if t.Method() != "Test::method" {
|
|
panic("Bad method return value!")
|
|
}
|
|
|
|
if cpp_namespace.Do_method(t) != "Test::method" {
|
|
panic("Bad return value!")
|
|
}
|
|
|
|
if cpp_namespace.Do_method2(t) != "Test::method" {
|
|
panic("Bad return value!")
|
|
}
|
|
|
|
cpp_namespace.Weird("hello", 4)
|
|
|
|
cpp_namespace.DeleteTest(t)
|
|
|
|
t2 := cpp_namespace.NewTest2()
|
|
t3 := cpp_namespace.NewTest3()
|
|
t4 := cpp_namespace.NewTest4()
|
|
t5 := cpp_namespace.NewTest5()
|
|
|
|
if cpp_namespace.Foo3(42) != 42 {
|
|
panic("Bad return value!")
|
|
}
|
|
|
|
if cpp_namespace.Do_method3(t2, 40) != "Test2::method" {
|
|
panic("Bad return value!")
|
|
}
|
|
|
|
if cpp_namespace.Do_method3(t3, 40) != "Test3::method" {
|
|
panic("Bad return value!")
|
|
}
|
|
|
|
if cpp_namespace.Do_method3(t4, 40) != "Test4::method" {
|
|
panic("Bad return value!")
|
|
}
|
|
|
|
if cpp_namespace.Do_method3(t5, 40) != "Test5::method" {
|
|
panic("Bad return value!")
|
|
}
|
|
}
|