X-Git-Url: https://pd.if.org/git/?p=pccts;a=blobdiff_plain;f=antlr%2Fantlr.mpw.r;fp=antlr%2Fantlr.mpw.r;h=093b3718b6a6b383b2ca17d3867e71353e261562;hp=0000000000000000000000000000000000000000;hb=a5858ad3d85781b0412eac53847e35a1bf24e70d;hpb=780a935d52ff31d98a3f1083ab0f363a7aafb30d diff --git a/antlr/antlr.mpw.r b/antlr/antlr.mpw.r new file mode 100755 index 0000000..093b371 --- /dev/null +++ b/antlr/antlr.mpw.r @@ -0,0 +1,371 @@ +#include "cmdo.r" + +resource 'cmdo' (128, "Antlr") { + { + /* [1] */ + 295, + "ANTLR -- Purdue Compiler Construction Tool Set (PCCTS) LL(k) parser generator.", + { + /* [1] */ + NotDependent { }, MultiFiles { + "Grammar File(s)É", + "Choose the grammar specification files you wish to have ANTLR process.", + {25, 24, 44, 154}, + "Grammar specification:", + "", + MultiInputFiles { + { /* array MultiTypesArray: 1 elements */ + /* [1] */ + text + }, + ".g", + "Files ending in .g", + "All text files" + } + }, + /* [2] */ + NotDependent { }, Files { + DirOnly, + OptionalFile { + {56, 25, 72, 155}, + {77, 25, 96, 155}, + "Output Directory", + ":", + "-o", + "", + "Choose the directory where ANTLR will put its output.", + dim, + "Output DirectoryÉ", + "", + "" + }, + NoMore { + + } + }, + /* [3] */ + NotDependent { }, Redirection { + StandardOutput, + {126, 27} + }, + /* [4] */ + NotDependent { }, Redirection { + DiagnosticOutput, + {126, 178} + }, + /* [5] */ + NotDependent { }, TextBox { + gray, + {117, 20, 167, 300}, + "Redirection" + }, + /* [6] */ + NotDependent { }, NestedDialog { + 2, + {20, 324, 40, 460}, + "OptionsÉ", + "Various command line options may be set " + "with this button." + }, + /* [7] */ + NotDependent { }, NestedDialog { + 3, + {48, 324, 68, 460}, + "More OptionsÉ", + "Antlr has ALOT of options. There are even more to be found with this button." + }, + /* [8] */ + NotDependent { }, NestedDialog { + 4, + {76, 324, 96, 460}, + "Rename OptionsÉ", + "Options for renaming output files may be set with this button." + }, + /* [9] */ + NotDependent { }, VersionDialog { + VersionString { + "1.33" + }, + "PCCTS was written by Terence Parr, Russell Quong, Will Cohen, and Hank Dietz: 1989-1995. " + "MPW port by Scott Haney.", + noDialog + } + }, + /* [2] */ + 295, + "Use this dialog to specify command line options.", + { + /* [1] */ + NotDependent { }, CheckOption { + NotSet, + {18, 25, 33, 225}, + "Generate C++ code", + "-CC", + "Generate C++ output from both ANTLR and DLG." + }, + /* [2] */ + NotDependent { }, CheckOption { + NotSet, + {38, 25, 53, 225}, + "Generate ASTs", + "-gt", + "Generate code for Abstract-Syntax-Trees (ASTs)." + }, + /* [3] */ + NotDependent { }, CheckOption { + NotSet, + {18, 235, 33, 435}, + "Support parse traces", + "-gd", + "If this option is checked, ANTLR inserts code in each parsing " + "function to provide for user-defined handling of a detailed parse trace. " + "The code consists of calls to zzTRACEIN and zzTRACEOUT." + }, + /* [4] */ + NotDependent { }, CheckOption { + NotSet, + {58, 25, 73, 225}, + "Generate line info", + "-gl", + "If this option is checked, ANTLR will generate line info about grammar" + "actions, thereby making debugging easier since " + "compile errors will point to the grammar file." + }, + /* [5] */ + NotDependent { }, CheckOption { + NotSet, + {38, 235, 53, 435}, + "Generate cross-references", + "-cr", + "If this option is checked, ANTLR will generate a cross reference for all " + "rules. For each rule it will print a list of all other rules that refrence it." + }, + /* [6] */ + NotDependent { }, CheckOption { + NotSet, + {78, 25, 93, 225}, + "Generate error classes", + "-ge", + "If this option is checked, ANTLR will generate an error class for" + "each non-terminal." + }, + /* [7] */ + NotDependent { }, CheckOption { + NotSet, + {58, 235, 73, 435}, + "Hoist predicate context", + "-prc on", + "If this option is checked, ANTLR will turn on the computation and hoisting of " + "predicate context." + }, + /* [8] */ + NotDependent { }, CheckOption { + NotSet, + {98, 25, 113, 225}, + "Don't generate Code", + "-gc", + "If this option is checked, ANTLR will generate no code, i.e. " + "it will only perform analysis on the grammar." + }, + /* [9] */ + NotDependent { }, CheckOption { + NotSet, + {78, 235, 93, 435}, + "Don't create Lexer files", + "-gx", + "If this option is checked, ANTLR will not generate DLG-related output files. " + "This option should be used if one wants a custom lexical analyzer or if one " + "has made changes to the grammar not affecting the lexical structure." + }, + /* [10] */ + NotDependent { }, CheckOption { + NotSet, + {118, 25, 133, 225}, + "Delay lookahead fetches", + "-gk", + "If this option is checked, ANTLR will generate a parser that delays lookahead " + "fetches until needed." + }, + /* [11] */ + NotDependent { }, CheckOption { + NotSet, + {98, 235, 113, 460}, + "Don't generate token expr sets", + "-gs", + "If this option is checked, ANTLR will not generate sets for token expression " + "sets; instead, it will generate a || separated sequence of LA(1)==token #. " + }, + /* [12] */ + NotDependent { }, RegularEntry { + "Lookahead:", + {140, 25, 155, 150}, + {160, 25, 176, 150}, + "1", + keepCase, + "-k", + "This entry specifies the number of tokens of lookahead." + }, + /* [13] */ + NotDependent { }, RegularEntry { + "Compr lookahead:", + {140, 165, 155, 290}, + {160, 165, 176, 290}, + "", + keepCase, + "-ck", + "This entry specifies the number of tokens of lookahead when using compressed " + "(linear approximation) lookahead. In general, the compressed lookahead is much " + "deeper than the full lookahead." + }, + /* [14] */ + NotDependent { }, RegularEntry { + "Max tree nodes:", + {140, 310, 155, 435}, + {160, 305, 176, 435}, + "", + keepCase, + "-rl", + "This entry specifies the maximum number of tokens of tree nodes used by the grammar " + "analysis." + } + }, + /* [3] */ + 295, + "Use this dialog to specify still more command line options.", + { + /* [1] */ + NotDependent { }, RadioButtons { + { /* array radioArray: 3 elements */ + /* [1] */ + {38, 25, 53, 105}, "None", "", Set, "When this option is selected, ANTLR " + "will not print the grammar to stdout.", + /* [2] */ + {38, 115, 53, 195}, "Yes", "-p", NotSet, "When this option is selected, ANTLR " + "will print the grammar, stripped of all actions and comments, to stdout.", + /* [3] */ + {38, 210, 53, 300}, "More", "-pa", NotSet, "When this option is selected, ANTLR " + "will print the grammar, stripped of all actions and comments, to stdout. " + "It will also annotate the output with the first sets determined from grammar " + "analysis." + } + }, + /* [2] */ + NotDependent { }, TextBox { + gray, + { 28, 15, 60, 310 }, + "Grammar Printing" + }, + /* [3] */ + NotDependent { }, RadioButtons { + { /* array radioArray: 3 elements */ + /* [1] */ + {88, 25, 103, 105}, "Low", "", Set, "When this option is selected, ANTLR " + "will show ambiguities/errors in low detail.", + /* [2] */ + {88, 115, 103, 195}, "Medium", "-e2", NotSet, "When this option is selected, ANTLR " + "will show ambiguities/errors in more detail.", + /* [3] */ + {88, 210, 103, 300}, "High", "-e3", NotSet, "When this option is selected, ANTLR " + "will show ambiguities/errors in excruciating detail." + } + }, + /* [4] */ + NotDependent { }, TextBox { + gray, + { 78, 15, 110, 310 }, + "Error reporting" + }, + /* [5] */ + NotDependent { }, CheckOption { + NotSet, + {128, 25, 143, 225}, + "More warnings", + "-w2", + "If this option is checked, ANTLR will warn if semantic predicates and/or " + "(É)? blocks are assumed to cover ambiguous alternatives." + }, + + }, + /* [4] */ + 295, + "Use this dialog to specify command line options relating to renaming output files.", + { + /* [1] */ + NotDependent { }, RegularEntry { + "Errors file name:", + {35, 25, 50, 205}, + {35, 205, 51, 300}, + "err.c", + keepCase, + "-fe", + "This entry specifies the name ANTLR uses for " + "the errors file." + }, + /* [2] */ + NotDependent { }, RegularEntry { + "Lexical output name:", + {60, 25, 75, 205}, + {60, 205, 76, 300}, + "parser.dlg", + keepCase, + "-fl", + "This entry specifies the name ANTLR uses for " + "the lexical output file." + }, + /* [3] */ + NotDependent { }, RegularEntry { + "Lexical modes name:", + {85, 25, 100, 205}, + {85, 205, 101, 300}, + "mode.h", + keepCase, + "-fl", + "This entry specifies the name ANTLR uses for " + "the lexical mode definitions file." + }, + /* [4] */ + NotDependent { }, RegularEntry { + "Remap file name:", + {110, 25, 125, 205}, + {110, 205, 126, 300}, + "remap.h", + keepCase, + "-fl", + "This entry specifies the name ANTLR uses for " + "the file that remaps globally visible symbols." + }, + /* [5] */ + NotDependent { }, RegularEntry { + "Tokens file name:", + {135, 25, 150, 205}, + {135, 205, 151, 300}, + "tokens.h", + keepCase, + "-fl", + "This entry specifies the name ANTLR uses for " + "the tokens file." + }, + /* [6] */ + NotDependent{ }, CheckOption { + NotSet, + {160, 25, 175, 175}, + "Create std header", + "-gh", + "If this option is checked, ANTLR will create a standard header file named, " + "by default 'stdpccts.h'. This name can be altered using the entry right next door." + }, + /* [7] */ + Or { {6} }, RegularEntry { + "Std header file name:", + {160, 175, 175, 355}, + {160, 355, 176, 450}, + "stdpccts.h", + keepCase, + "-fh", + "This entry specifies the name ANTLR uses for " + "the standard header file." + } + } + } +}; +