/trunk/Examples/test-suite/go/friends_runme.go
Go | 50 lines | 37 code | 10 blank | 3 comment | 18 complexity | e55f9e8473a639b9832755fc199640ed MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- package main
- import "./friends"
- func main() {
- a := friends.NewA(2)
- if friends.Get_val1(a).(int) != 2 {
- panic(0)
- }
- if friends.Get_val2(a) != 4 {
- panic(0)
- }
- if friends.Get_val3(a) != 6 {
- panic(0)
- }
- // nice overload working fine
- if friends.Get_val1(1, 2, 3).(int) != 1 {
- panic(0)
- }
- b := friends.NewB(3)
- // David's case
- if friends.Mix(a, b) != 5 {
- panic(0)
- }
- di := friends.NewD_d(2)
- dd := friends.NewD_d(3.3)
- // incredible template overloading working just fine
- if friends.Get_val1(di).(float64) != 2 {
- panic(0)
- }
- if friends.Get_val1(dd).(float64) != 3.3 {
- panic(0)
- }
- friends.Set(di, 4.0)
- friends.Set(dd, 1.3)
- if friends.Get_val1(di).(float64) != 4 {
- panic(0)
- }
- if friends.Get_val1(dd).(float64) != 1.3 {
- panic(0)
- }
- }