git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12108 626c5289-ae23-0410-ae9c-e8d60b6d4f22
39 lines
593 B
Go
39 lines
593 B
Go
package main
|
|
|
|
import . "./director_string"
|
|
|
|
type B struct { // From A
|
|
abi A
|
|
smem string
|
|
}
|
|
|
|
func NewB(s string) A {
|
|
p := &B{nil, ""}
|
|
ret := NewDirectorA(p, s)
|
|
p.abi = ret
|
|
return ret
|
|
}
|
|
|
|
func (p *B) Get_first() string {
|
|
return DirectorAGet_first(p.abi) + " world!"
|
|
}
|
|
|
|
func (p *B) Process_text(s string) {
|
|
DirectorAProcess_text(p.abi, s)
|
|
p.smem = "hello"
|
|
}
|
|
|
|
func main() {
|
|
b := NewB("hello")
|
|
|
|
b.Get(0)
|
|
if b.Get_first() != "hello world!" {
|
|
panic(b.Get_first())
|
|
}
|
|
|
|
b.Call_process_func()
|
|
|
|
if b.DirectorInterface().(*B).smem != "hello" {
|
|
panic(b.DirectorInterface().(*B).smem)
|
|
}
|
|
}
|