# Preprocess the extended sablecc gramar
.nit.sablecc3: nit.sablecc3xx
- ./prescc.sh $< $@
+ ./prescc.pl $< > $@
# Note that parser_nodes is no more automatically synced with the grammar
parser.nit: .nit.sablecc3 xss/*.xss
${SABLECC3ALTGEN} -c .nit.sablecc3.dump -t xss/main.xss -p usermodule parser_nodes .nit.sablecc3
mv -f -- parser.nit .parser-nofact.nit
./fact_parser.pl .parser-nofact.nit > parser.nit
- perl -np -i.orig -e 's/([ \[])P([A-Z])/\1A\2/g;' -e 's/"{"/"\\{"/g;' parser.nit parser_abs.nit parser_prod.nit lexer.nit
+ perl -np -i.orig -e 's/([ (\[])P([A-Z])/\1A\2/g;' -e 's/"{"/"\\{"/g;' parser.nit parser_abs.nit parser_prod.nit lexer.nit
clean:
rm -f -- .nit.sablecc3 .nit.sablecc3.dump .parser-nofact.nit || true
-distclean: clean
-
maintainer-clean: clean
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
rm -f -- parser.nit parser_abs.nit parser_prod.nit lexer.nit || true
+
+java: .nit.sablecc3
+ rm -r org/nitlanguage/gen/analysis/ org/nitlanguage/gen/lexer/ org/nitlanguage/gen/node/ org/nitlanguage/gen/parser/
+ ${SABLECC3ALTGEN} .nit.sablecc3 -c .nit.sablecc3.dump
+ javac org/nitlanguage/gen/TestParser.java