This repository has been archived on 2026-05-13. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
sfdl/main.go
2025-12-04 18:44:37 +08:00

39 lines
624 B
Go

package main
import (
"fmt"
"log"
"os"
"sfdl/parser"
"sfdl/scanner"
"sfdl/semantices"
)
func main() {
if len(os.Args) < 2 {
fmt.Println("usage: sfdl <source-file>")
return
}
filename := os.Args[1]
sc, err := scanner.NewScannerFromFile(filename)
if err != nil {
log.Fatalf("open file failed: %v", err)
}
// 初始化语义状态 & 画布
parser.ResetState()
semantices.InitCanvas()
p := parser.NewParser(sc)
p.Parse()
// 保存图片
outFile := "out.png"
if err := semantices.SavePNG(outFile); err != nil {
log.Fatalf("save png failed: %v", err)
}
fmt.Println("Done. output:", outFile)
}