github.com/rzurga/go-swagger@v0.28.1-0.20211109195225-5d1f453ffa3a/hack/print_ast/main.go (about) 1 package main 2 3 import ( 4 "flag" 5 "go/ast" 6 "go/parser" 7 "go/token" 8 "log" 9 ) 10 11 var fileName string 12 13 func init() { 14 flag.StringVar(&fileName, "f", "", "input file") 15 } 16 func main() { 17 flag.Parse() 18 19 fset := token.NewFileSet() 20 f, err := parser.ParseFile(fset, fileName, nil, parser.ParseComments) 21 if err != nil { 22 log.Fatalf("Failed to parse file %s: %s", fileName, err) 23 } 24 if err = ast.Print(fset, f); err != nil { 25 log.Fatal(err) 26 } 27 }