diff options
author | Robert Griesemer <gri@golang.org> | 2019-07-30 16:16:03 -0700 |
---|---|---|
committer | Robert Griesemer <gri@golang.org> | 2019-07-31 05:45:43 +0000 |
commit | 39d4178735d6ca90e076b3fc3d7e38f56fd6b945 (patch) | |
tree | 8862ecd37ea5a4668064e054097978a1a02ac4ca /doc/go_spec.html | |
parent | 1ad64fafc889cb17041b03b10f8af30ae534dfeb (diff) | |
download | go-39d4178735d6ca90e076b3fc3d7e38f56fd6b945.tar.gz go-39d4178735d6ca90e076b3fc3d7e38f56fd6b945.zip |
spec: add an example of a trivially invalid interface
In preparation for the forthcoming spec changes for #6977.
While at it, modernize existing File example that dates
back all the way to commit 18c5b488a3b.
Change-Id: Id10e4df0513e3de15bd58867222923eefa9473ea
Reviewed-on: https://go-review.googlesource.com/c/go/+/187978
Reviewed-by: Rob Pike <r@golang.org>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'doc/go_spec.html')
-rw-r--r-- | doc/go_spec.html | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/doc/go_spec.html b/doc/go_spec.html index fb4341be1d..89732fb8f2 100644 --- a/doc/go_spec.html +++ b/doc/go_spec.html @@ -1,6 +1,6 @@ <!--{ "Title": "The Go Programming Language Specification", - "Subtitle": "Version of May 14, 2019", + "Subtitle": "Version of July 31, 2019", "Path": "/ref/spec" }--> @@ -1257,11 +1257,19 @@ non-<a href="#Blank_identifier">blank</a> name. </p> <pre> -// A simple File interface +// A simple File interface. interface { - Read(b Buffer) bool - Write(b Buffer) bool - Close() + Read([]byte) (int, error) + Write([]byte) (int, error) + Close() error +} +</pre> + +<pre> +interface { + String() string + String() string // illegal: String not unique + _(x int) // illegal: method must have non-blank name } </pre> @@ -1272,9 +1280,9 @@ have the method set </p> <pre> -func (p T) Read(b Buffer) bool { return … } -func (p T) Write(b Buffer) bool { return … } -func (p T) Close() { … } +func (p T) Read(p []byte) (n int, err error) { return … } +func (p T) Write(p []byte) (n int, err error) { return … } +func (p T) Close() error { return … } </pre> <p> |