summaryrefslogtreecommitdiffstats
path: root/third_party/rust/jsparagus/update.sh
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
commit36d22d82aa202bb199967e9512281e9a53db42c9 (patch)
tree105e8c98ddea1c1e4784a60a5a6410fa416be2de /third_party/rust/jsparagus/update.sh
parentInitial commit. (diff)
downloadfirefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz
firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip
Adding upstream version 115.7.0esr.upstream/115.7.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/rust/jsparagus/update.sh')
-rwxr-xr-xthird_party/rust/jsparagus/update.sh26
1 files changed, 26 insertions, 0 deletions
diff --git a/third_party/rust/jsparagus/update.sh b/third_party/rust/jsparagus/update.sh
new file mode 100755
index 0000000000..7d01d70ab9
--- /dev/null
+++ b/third_party/rust/jsparagus/update.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+# update.sh - Rebuild generated files from parse_pgen.py and pgen.pgen.
+#
+# These generated files are not actually used to generate themselves,
+# so the process isn't as tricky as it could otherwise be. (They are used
+# for testing and benchmarking.)
+#
+# How to change the pgen syntax:
+#
+# 1. Update the pgen_grammar and ASTBuilder in parse_pgen.py,
+# and other downstream Python and Rust code appropriately.
+# 2. Make the corresponding edits to pgen.pgen. You can change it to
+# use the new syntax that you're adding.
+# 3. Run this script.
+#
+# Even if something fails, fear not! It's usually pretty easy to fix stuff and
+# get to a fixpoint where everything passes.
+
+set -eu
+
+cd $(dirname "$0")
+python3 -m jsparagus.parse_pgen --regenerate > jsparagus/parse_pgen_generated_NEW.py
+mv jsparagus/parse_pgen_generated_NEW.py jsparagus/parse_pgen_generated.py
+
+./test.sh