xref: /aosp_15_r20/external/antlr/runtime/Perl5/examples/expr/expr.pl (revision 16467b971bd3e2009fad32dd79016f2c7e421deb)
1*16467b97STreehugger Robot#!/usr/bin/perl
2*16467b97STreehugger Robot
3*16467b97STreehugger Robotuse strict;
4*16467b97STreehugger Robotuse warnings;
5*16467b97STreehugger Robot
6*16467b97STreehugger Robotuse blib;
7*16467b97STreehugger Robot
8*16467b97STreehugger Robotuse ANTLR::Runtime::ANTLRStringStream;
9*16467b97STreehugger Robotuse ANTLR::Runtime::CommonTokenStream;
10*16467b97STreehugger Robotuse ExprLexer;
11*16467b97STreehugger Robotuse ExprParser;
12*16467b97STreehugger Robot
13*16467b97STreehugger Robotmy $in;
14*16467b97STreehugger Robot{
15*16467b97STreehugger Robot    undef $/;
16*16467b97STreehugger Robot    $in = <>;
17*16467b97STreehugger Robot}
18*16467b97STreehugger Robot
19*16467b97STreehugger Robotmy $input = ANTLR::Runtime::ANTLRStringStream->new({ input => $in });
20*16467b97STreehugger Robotmy $lexer = ExprLexer->new({ input => $input });
21*16467b97STreehugger Robot
22*16467b97STreehugger Robotmy $tokens = ANTLR::Runtime::CommonTokenStream->new({ token_source => $lexer });
23*16467b97STreehugger Robotmy $parser = ExprParser->new({ input => $tokens });
24*16467b97STreehugger Robot$parser->prog();
25