Mercurial > hg > CbC > CbC_gcc
view libgo/go/net/file.go @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children | 84e7813d76e9 |
line wrap: on
line source
// Copyright 2015 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package net import "os" // BUG(mikio): On NaCl and Windows, the FileConn, FileListener and // FilePacketConn functions are not implemented. type fileAddr string func (fileAddr) Network() string { return "file+net" } func (f fileAddr) String() string { return string(f) } // FileConn returns a copy of the network connection corresponding to // the open file f. // It is the caller's responsibility to close f when finished. // Closing c does not affect f, and closing f does not affect c. func FileConn(f *os.File) (c Conn, err error) { c, err = fileConn(f) if err != nil { err = &OpError{Op: "file", Net: "file+net", Source: nil, Addr: fileAddr(f.Name()), Err: err} } return } // FileListener returns a copy of the network listener corresponding // to the open file f. // It is the caller's responsibility to close ln when finished. // Closing ln does not affect f, and closing f does not affect ln. func FileListener(f *os.File) (ln Listener, err error) { ln, err = fileListener(f) if err != nil { err = &OpError{Op: "file", Net: "file+net", Source: nil, Addr: fileAddr(f.Name()), Err: err} } return } // FilePacketConn returns a copy of the packet network connection // corresponding to the open file f. // It is the caller's responsibility to close f when finished. // Closing c does not affect f, and closing f does not affect c. func FilePacketConn(f *os.File) (c PacketConn, err error) { c, err = filePacketConn(f) if err != nil { err = &OpError{Op: "file", Net: "file+net", Source: nil, Addr: fileAddr(f.Name()), Err: err} } return }