BLACKSITE
:
216.73.217.59
:
91.108.101.54 / wf-saudi.com
:
Linux fr-int-web1425.main-hosting.eu 4.18.0-553.83.1.lve.el8.x86_64 #1 SMP Wed Nov 12 10:04:12 UTC 2025 x86_64
:
/
opt
/
golang
/
1.22.0
/
test
/
ken
/
Upload File:
files >> //opt/golang/1.22.0/test/ken/intervar.go
// run // Copyright 2009 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // Test interface assignment. package main type Iputs interface { puts (s string) string; } // --------- type Print struct { whoami int; put Iputs; } func (p *Print) dop() string { r := " print " + string(p.whoami + '0') return r + p.put.puts("abc"); } // --------- type Bio struct { whoami int; put Iputs; } func (b *Bio) puts(s string) string { r := " bio " + string(b.whoami + '0') return r + b.put.puts(s); } // --------- type File struct { whoami int; put Iputs; } func (f *File) puts(s string) string { return " file " + string(f.whoami + '0') + " -- " + s } func main() { p := new(Print); b := new(Bio); f := new(File); p.whoami = 1; p.put = b; b.whoami = 2; b.put = f; f.whoami = 3; r := p.dop(); expected := " print 1 bio 2 file 3 -- abc" if r != expected { panic(r + " != " + expected) } }