tree-sitter/script/generate-fixtures-wasm

37 lines
846 B
Text
Raw Normal View History

2019-01-14 14:39:01 -08:00
#!/usr/bin/env bash
set -e
2023-04-04 02:38:29 +03:00
root_dir=$PWD
if [ "$CI" == true ]; then
set -x
tree_sitter="$TREE_SITTER"
else
cargo build --release
tree_sitter=${root_dir}/target/release/tree-sitter
fi
build_wasm_args=
if [[ $1 == "--docker" ]]; then
build_wasm_args="--docker"
shift
fi
filter_grammar_name=$1
2019-01-14 14:39:01 -08:00
grammars_dir=${root_dir}/test/fixtures/grammars
grammar_files=$(find "$grammars_dir" -name grammar.js | grep -v node_modules)
2019-01-14 14:39:01 -08:00
while read -r grammar_file; do
grammar_dir=$(dirname "$grammar_file")
grammar_name=$(basename "$grammar_dir")
if [[ -n $filter_grammar_name && "$filter_grammar_name" != "$grammar_name" ]]; then
continue
fi
2019-04-25 17:27:24 -07:00
echo "Compiling ${grammar_name} parser to wasm"
"$tree_sitter" build --wasm $build_wasm_args -o target/release/tree-sitter-"${grammar_name}".wasm "$grammar_dir"
done <<<"$grammar_files"