1YAPP(1) User Contributed Perl Documentation YAPP(1)
2
3
4
6 yapp - A perl frontend to the Parse::Yapp module
7
9 yapp [options] grammar[.yp]
10
11 yapp -V
12
13 yapp -h
14
16 yapp is a frontend to the Parse::Yapp module, which lets you compile
17 Parse::Yapp grammar input files into Perl LALR(1) OO parser modules.
18
20 Options, as of today, are all optionals :-)
21
22 -v Creates a file grammar.output describing your parser. It will show
23 you a summary of conflicts, rules, the DFA (Deterministic Finite
24 Automaton) states and overall usage of the parser.
25
26 -s Create a standalone module in which the driver is included. Note
27 that if you have more than one parser module called from a program,
28 to have it standalone, you need this option only for one of your
29 parser module.
30
31 -n Disable source file line numbering embedded in your parser module.
32 I don't know why one should need it, but it's there.
33
34 -m module
35 Gives your parser module the package name (or name space or module
36 name or class name or whatever-you-call-it) of module. It defaults
37 to grammar
38
39 -o outfile
40 The compiled output file will be named outfile for your parser
41 module. It defaults to grammar.pm or, if you specified the option
42 -m A::Module::Name (see below), to Name.pm, in the current working
43 directory.
44
45 -t filename
46 The -t filename option allows you to specify a file which should be
47 used as template for generating the parser output. The default is
48 to use the internal template defined in Parse::Yapp::Output.pm.
49 For how to write your own template and which substitutions are
50 available, have a look to the module Parse::Yapp::Output.pm : it
51 should be obvious.
52
53 -b shebang
54 If you work on systems that understand so called shebangs, and your
55 generated parser is directly an executable script, you can specifie
56 one with the -b option, ie:
57
58 yapp -b '/usr/local/bin/perl -w' -o myscript.pl myscript.yp
59
60 This will output a file called myscript.pl whose very first line
61 is:
62
63 #!/usr/local/bin/perl -w
64
65 The argument is mandatory, but if you specify an empty string, the
66 value of $Config{perlpath} will be used instead.
67
68 grammar
69 The input grammar file. If no suffix is given, and the file does
70 not exists, an attempt to open the file with a suffix of .yp is
71 tried before exiting.
72
73 -V Display current version of Parse::Yapp and gracefully exits.
74
75 -h Display the usage screen.
76
78 None known now :-)
79
81 William N. Braswell, Jr. <wbraswell_cpan@NOSPAM.nym.hush.com> (Remove
82 "NOSPAM".)
83
85 Copyright © 1998, 1999, 2000, 2001, Francois Desarmenien. Copyright ©
86 2017 William N. Braswell, Jr.
87
88 See Parse::Yapp(3) for legal use and distribution rights
89
91 Parse::Yapp(3) Perl(1) yacc(1) bison(1)
92
93
94
95perl v5.32.1 2021-01-27 YAPP(1)