aboutsummaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
Diffstat (limited to 'cmd')
-rw-r--r--cmd/vartan/describe.go6
-rw-r--r--cmd/vartan/parse.go11
2 files changed, 13 insertions, 4 deletions
diff --git a/cmd/vartan/describe.go b/cmd/vartan/describe.go
index c2cde93..2dabf9f 100644
--- a/cmd/vartan/describe.go
+++ b/cmd/vartan/describe.go
@@ -87,7 +87,11 @@ func readDescription(path string) (*spec.Description, error) {
return desc, nil
}
-const descTemplate = `# Conflicts
+const descTemplate = `# Class
+
+{{ .Class }}
+
+# Conflicts
{{ printConflictSummary . }}
diff --git a/cmd/vartan/parse.go b/cmd/vartan/parse.go
index 36401e1..5cf8b5b 100644
--- a/cmd/vartan/parse.go
+++ b/cmd/vartan/parse.go
@@ -13,9 +13,10 @@ import (
)
var parseFlags = struct {
- source *string
- onlyParse *bool
- cst *bool
+ source *string
+ onlyParse *bool
+ cst *bool
+ disableLAC *bool
}{}
func init() {
@@ -29,6 +30,7 @@ func init() {
parseFlags.source = cmd.Flags().StringP("source", "s", "", "source file path (default stdin)")
parseFlags.onlyParse = cmd.Flags().Bool("only-parse", false, "when this option is enabled, the parser performs only parse and doesn't semantic actions")
parseFlags.cst = cmd.Flags().Bool("cst", false, "when this option is enabled, the parser generates a CST")
+ parseFlags.disableLAC = cmd.Flags().Bool("disable-lac", false, "disable LAC (lookahead correction)")
rootCmd.AddCommand(cmd)
}
@@ -85,6 +87,9 @@ func runParse(cmd *cobra.Command, args []string) (retErr error) {
case !*parseFlags.onlyParse:
opts = append(opts, driver.MakeAST())
}
+ if *parseFlags.disableLAC {
+ opts = append(opts, driver.DisableLAC())
+ }
p, err = driver.NewParser(cgram, src, opts...)
if err != nil {
return err