X7ROOT File Manager
Current Path:
/opt/golang/1.17.2/src/cmd/fix
opt
/
golang
/
1.17.2
/
src
/
cmd
/
fix
/
📁
..
📄
cftype.go
(3.5 KB)
📄
cftype_test.go
(2.43 KB)
📄
context.go
(510 B)
📄
context_test.go
(648 B)
📄
doc.go
(1.39 KB)
📄
egltype.go
(1.13 KB)
📄
egltype_test.go
(2.29 KB)
📄
fix.go
(14.34 KB)
📄
gotypes.go
(1.7 KB)
📄
gotypes_test.go
(1.26 KB)
📄
import_test.go
(4.98 KB)
📄
jnitype.go
(1.24 KB)
📄
jnitype_test.go
(1.92 KB)
📄
main.go
(5.23 KB)
📄
main_test.go
(2.67 KB)
📄
netipv6zone.go
(1.32 KB)
📄
netipv6zone_test.go
(837 B)
📄
printerconfig.go
(1.11 KB)
📄
printerconfig_test.go
(748 B)
📄
typecheck.go
(19.71 KB)
Editing: netipv6zone.go
// Copyright 2012 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 main import "go/ast" func init() { register(netipv6zoneFix) } var netipv6zoneFix = fix{ name: "netipv6zone", date: "2012-11-26", f: netipv6zone, desc: `Adapt element key to IPAddr, UDPAddr or TCPAddr composite literals. https://codereview.appspot.com/6849045/ `, } func netipv6zone(f *ast.File) bool { if !imports(f, "net") { return false } fixed := false walk(f, func(n interface{}) { cl, ok := n.(*ast.CompositeLit) if !ok { return } se, ok := cl.Type.(*ast.SelectorExpr) if !ok { return } if !isTopName(se.X, "net") || se.Sel == nil { return } switch ss := se.Sel.String(); ss { case "IPAddr", "UDPAddr", "TCPAddr": for i, e := range cl.Elts { if _, ok := e.(*ast.KeyValueExpr); ok { break } switch i { case 0: cl.Elts[i] = &ast.KeyValueExpr{ Key: ast.NewIdent("IP"), Value: e, } case 1: if elit, ok := e.(*ast.BasicLit); ok && elit.Value == "0" { cl.Elts = append(cl.Elts[:i], cl.Elts[i+1:]...) } else { cl.Elts[i] = &ast.KeyValueExpr{ Key: ast.NewIdent("Port"), Value: e, } } } fixed = true } } }) return fixed }
Upload File
Create Folder