github.com/traefik/yaegi@v0.15.1/cmd/yaegi/help.go (about) 1 package main 2 3 import "fmt" 4 5 const usage = `Yaegi is a Go interpreter. 6 7 Usage: 8 9 yaegi [command] [arguments] 10 11 The commands are: 12 13 extract generate a wrapper file from a source package 14 help print usage information 15 run execute a Go program from source 16 test execute test functions in a Go package 17 version print version 18 19 Use "yaegi help <command>" for more information about a command. 20 21 If no command is given or if the first argument is not a command, then 22 the run command is assumed. 23 ` 24 25 func help(arg []string) error { 26 var cmd string 27 if len(arg) > 0 { 28 cmd = arg[0] 29 } 30 31 switch cmd { 32 case Extract: 33 return extractCmd([]string{"-h"}) 34 case Help, "", "-h", "--help": 35 fmt.Print(usage) 36 return nil 37 case Run: 38 return run([]string{"-h"}) 39 case Test: 40 return test([]string{"-h"}) 41 case Version: 42 fmt.Println("Usage: yaegi version") 43 return nil 44 default: 45 return fmt.Errorf("help: invalid yaegi command: %v", cmd) 46 } 47 }