diff --git a/exercises/07-rot13/go.go b/exercises/07-rot13/go.go new file mode 100644 index 0000000..ad48d67 --- /dev/null +++ b/exercises/07-rot13/go.go @@ -0,0 +1,27 @@ +package main + +import ( + "io" + "os" + "strings" +) + +type rot13Reader struct { + r io.Reader +} + +func (r rot13Reader) Read(p []byte) (n int, err error) { + if len(p) == 0 { + return 0, nil + } + if r.i >= len(r.s) { + return 0, io.EOF + } + return +} + +func main() { + s := strings.NewReader("Lbh penpxrq gur pbqr!") + r := rot13Reader{s} + io.Copy(os.Stdout, &r) +}