github.com/willfaught/ebnf
Package ebnf represents and parses a variant of Extended Backus-Naur Form called Wirth Syntax Notation. Terminal identifiers must begin with a lowercase letter. Non-terminal identifiers must begin with an uppercase letter. The first production defines the start non-terminal identifier. Terminal identifiers are assumed to be defined elsewhere. Epsilon is represented by an empty literal. Grammars are written like so: They can be parsed by Parse into a Grammar. Grammar.Validate determines whether a grammar is valid. Grammar.First and Grammar.Follow compute the first and follow sets for non-terminal identifiers. Grammar.Conflict determines whether a valid grammar can be parsed by an LL(1) parser.
proxy.golang.org
v0.5.0
5 months ago
7
Links
| Registry | proxy.golang.org |
| Source | Repository |
| Docs | Documentation |
| JSON API | View JSON |
| CodeMeta | codemeta.json |
Package Details
| PURL |
pkg:golang/github.com/willfaught/ebnf
spec |
| License | Apache-2.0 |
| Namespace | github.com/willfaught |
| First Release | almost 4 years ago |
| Last Synced | 21 days ago |
Repository
| Stars | 7 on GitHub |
| Forks | 0 on GitHub |