Source file
doc/progs/interface.go
1
2
3
4
5
6
7 package main
8
9 import (
10 "bufio"
11 "bytes"
12 "io"
13 "os"
14 )
15
16 type MyInt int
17
18 var i int
19 var j MyInt
20
21
22
23
24 type Reader interface {
25 Read(p []byte) (n int, err error)
26 }
27
28
29 type Writer interface {
30 Write(p []byte) (n int, err error)
31 }
32
33
34
35 func readers() {
36 var r io.Reader
37 r = os.Stdin
38 r = bufio.NewReader(r)
39 r = new(bytes.Buffer)
40
41
42 }
43
44 func typeAssertions() (interface{}, error) {
45 var r io.Reader
46 tty, err := os.OpenFile("/dev/tty", os.O_RDWR, 0)
47 if err != nil {
48 return nil, err
49 }
50 r = tty
51
52 var w io.Writer
53 w = r.(io.Writer)
54
55 var empty interface{}
56 empty = w
57
58 return empty, nil
59 }
60
61 func main() {
62 }
63
View as plain text