github.com/portworx/docker@v1.12.1/builder/dockerfile/parser/dumper/main.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "os" 6 7 "github.com/docker/docker/builder/dockerfile/parser" 8 ) 9 10 func main() { 11 var f *os.File 12 var err error 13 14 if len(os.Args) < 2 { 15 fmt.Println("please supply filename(s)") 16 os.Exit(1) 17 } 18 19 for _, fn := range os.Args[1:] { 20 f, err = os.Open(fn) 21 if err != nil { 22 panic(err) 23 } 24 25 d := parser.Directive{LookingForDirectives: true} 26 parser.SetEscapeToken(parser.DefaultEscapeToken, &d) 27 28 ast, err := parser.Parse(f, &d) 29 if err != nil { 30 panic(err) 31 } else { 32 fmt.Println(ast.Dump()) 33 } 34 } 35 }