...
Run Format

Source file src/net/file.go

     1	// Copyright 2015 The Go Authors. All rights reserved.
     2	// Use of this source code is governed by a BSD-style
     3	// license that can be found in the LICENSE file.
     4	
     5	package net
     6	
     7	import "os"
     8	
     9	type fileAddr string
    10	
    11	func (fileAddr) Network() string  { return "file+net" }
    12	func (f fileAddr) String() string { return string(f) }
    13	
    14	// FileConn returns a copy of the network connection corresponding to
    15	// the open file f.
    16	// It is the caller's responsibility to close f when finished.
    17	// Closing c does not affect f, and closing f does not affect c.
    18	func FileConn(f *os.File) (c Conn, err error) {
    19		c, err = fileConn(f)
    20		if err != nil {
    21			err = &OpError{Op: "file", Net: "file+net", Source: nil, Addr: fileAddr(f.Name()), Err: err}
    22		}
    23		return
    24	}
    25	
    26	// FileListener returns a copy of the network listener corresponding
    27	// to the open file f.
    28	// It is the caller's responsibility to close ln when finished.
    29	// Closing ln does not affect f, and closing f does not affect ln.
    30	func FileListener(f *os.File) (ln Listener, err error) {
    31		ln, err = fileListener(f)
    32		if err != nil {
    33			err = &OpError{Op: "file", Net: "file+net", Source: nil, Addr: fileAddr(f.Name()), Err: err}
    34		}
    35		return
    36	}
    37	
    38	// FilePacketConn returns a copy of the packet network connection
    39	// corresponding to the open file f.
    40	// It is the caller's responsibility to close f when finished.
    41	// Closing c does not affect f, and closing f does not affect c.
    42	func FilePacketConn(f *os.File) (c PacketConn, err error) {
    43		c, err = filePacketConn(f)
    44		if err != nil {
    45			err = &OpError{Op: "file", Net: "file+net", Source: nil, Addr: fileAddr(f.Name()), Err: err}
    46		}
    47		return
    48	}
    49	

View as plain text