github.com/neugram/ng@v0.0.0-20180309130942-d472ff93d872/eval/testdata/typeassert.ng (about) 1 import ( 2 "io" 3 "bytes" 4 ) 5 6 func isBuffer(r io.Reader) bool { 7 _, ok := r.(*bytes.Buffer) 8 return ok 9 } 10 11 b1 := isBuffer(new(bytes.Buffer)) 12 b2 := isBuffer(new(bytes.Reader)) 13 14 r := io.Reader(new(bytes.Buffer)) 15 buf := r.(*bytes.Buffer) 16 buf.Write([]byte("bufval")) 17 18 b3 := buf.String() == "bufval" 19 20 if b1 && !b2 && b3 { 21 print("OK") 22 }