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  }