unplugged-system/external/antlr/runtime/Perl5
2025-10-06 13:59:42 +00:00
..
docs Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
examples Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
lib/ANTLR Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
t Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
tools Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
.p4ignore Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
Build.PL Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
Changes Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
INSTALL Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
Makefile.PL Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
MANIFEST Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
MANIFEST.SKIP Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
port.yml Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
README Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00

ANTLR::Runtime

This is the Perl 5 runtime for ANTLR.  It is currently under early
development.  Most parts are not working yet, and some of those that are need
to catch up with the current development version.  The good news is that some
parts are working, as illustrated by the examples.  You'd probably want to
take a look at examples/expr/.


KNOWN ISSUES
============

* Perl's syntax clashes with ANTLR's StringTemplate ('%') and variable ('$')
syntax.  Expect error messages like the following.

error(146): Expr.g:10:10: invalid StringTemplate % shorthand syntax: '%memory'
error(114): Expr.g:18:9: attribute is not a token, parameter, or return value: memory
error(114): Expr.g:36:9: attribute is not a token, parameter, or return value: v

Currently, it's best to check the syntax of the generated code, like so:

$ perl -c ExprLexer.pm
ExprLexer.pm syntax OK

$ perl -c ExprParser.pm
ExprParser.pm syntax OK

Or use the lexer/parser in an example.