mirror of
https://github.com/golang/go
synced 2024-11-22 00:04:41 -07:00
tutorial: update go_tutorial.html
There's version skew with respect to the programs in doc/progs. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/5433048
This commit is contained in:
parent
fe838c2ddb
commit
422e247332
@ -557,10 +557,7 @@ exported factory to use is <code>OpenFile</code> (we'll explain that name in a m
|
|||||||
<p>
|
<p>
|
||||||
<pre><!--{{code "progs/file.go" `/func.OpenFile/` `/^}/`}}
|
<pre><!--{{code "progs/file.go" `/func.OpenFile/` `/^}/`}}
|
||||||
-->func OpenFile(name string, mode int, perm uint32) (file *File, err error) {
|
-->func OpenFile(name string, mode int, perm uint32) (file *File, err error) {
|
||||||
r, e := syscall.Open(name, mode, perm)
|
r, err := syscall.Open(name, mode, perm)
|
||||||
if e != 0 {
|
|
||||||
err = os.Errno(e)
|
|
||||||
}
|
|
||||||
return newFile(r, name), err
|
return newFile(r, name), err
|
||||||
}
|
}
|
||||||
</pre>
|
</pre>
|
||||||
@ -626,22 +623,16 @@ each of which declares a receiver variable <code>file</code>.
|
|||||||
if file == nil {
|
if file == nil {
|
||||||
return os.EINVAL
|
return os.EINVAL
|
||||||
}
|
}
|
||||||
e := syscall.Close(file.fd)
|
err := syscall.Close(file.fd)
|
||||||
file.fd = -1 // so it can't be closed again
|
file.fd = -1 // so it can't be closed again
|
||||||
if e != 0 {
|
return err
|
||||||
return os.Errno(e)
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (file *File) Read(b []byte) (ret int, err error) {
|
func (file *File) Read(b []byte) (ret int, err error) {
|
||||||
if file == nil {
|
if file == nil {
|
||||||
return -1, os.EINVAL
|
return -1, os.EINVAL
|
||||||
}
|
}
|
||||||
r, e := syscall.Read(file.fd, b)
|
r, err := syscall.Read(file.fd, b)
|
||||||
if e != 0 {
|
|
||||||
err = os.Errno(e)
|
|
||||||
}
|
|
||||||
return int(r), err
|
return int(r), err
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -649,10 +640,7 @@ func (file *File) Write(b []byte) (ret int, err error) {
|
|||||||
if file == nil {
|
if file == nil {
|
||||||
return -1, os.EINVAL
|
return -1, os.EINVAL
|
||||||
}
|
}
|
||||||
r, e := syscall.Write(file.fd, b)
|
r, err := syscall.Write(file.fd, b)
|
||||||
if e != 0 {
|
|
||||||
err = os.Errno(e)
|
|
||||||
}
|
|
||||||
return int(r), err
|
return int(r), err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user