aboutsummaryrefslogtreecommitdiff
path: root/syntax/List.py
blob: a6d8afc147bcb8bf01f7b73a377238f939ba1a3d (plain)
  1. #!/usr/bin/python3
  2. # Copyright 2025, Jonas Smedegaard <dr@jones.dk>
  3. # SPDX-License-Identifier: GPL-3+
  4. from railroad import *
  5. Diagram(
  6. Choice(0,
  7. "[-*]",
  8. Sequence(
  9. "[[:digit:]]+",
  10. "[).]",
  11. )
  12. ),
  13. Choice(0,
  14. Sequence(
  15. NonTerminal("_"),
  16. Choice(0,
  17. NonTerminal("List"),
  18. NonTerminal("Words")
  19. )
  20. ),
  21. Skip()
  22. ),
  23. NonTerminal("NEWLINE"),
  24. type="complex"
  25. ).writeStandalone(sys.stdout.write)