make_dparser man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

make_dparser(1)			 User Manuals		       make_dparser(1)

NAME
       make_dparser ‐ D Parser Generator

SYNOPSIS
       make_dparser [options] grammar

DESCRIPTION
       make_dparser  is a scannerless GLR parser generator based on the Tomita
       algorithm. It is self-hosted and very easy to use. Grammars are written
       in  a  natural  style  of EBNF and regular expressions and support both
       speculative and final actions.

OPTIONS
       -l     Toggle longest match lexical ambiguity resolution.  When ON  the
	      scanner  only recognizing the longest matching tokens in a given
	      state. This provides an easy way to build grammars for languages
	      which use longest match lexical ambiguity resolution (e.g. ANSI-
	      C, C++). (OFF by default)

       -T     Toggle building of a tokenizer for START.	 When ON,  instead  of
	      generating a unique scanner for each state (i.e. a 'scannerless'
	      parser), generate a single scanner (tokenizer)  for  the	entire
	      grammar.	 This  provides an easy way to build grammars for lan‐
	      guages which assume a tokenizer (e.g. ANSI C). (OFF by default)

       -H -1/0/1
	      Write header, 0 : no, 1 : yes, -1 : only if not empty.

       -t 0/1 Token type, 0 : #define, 1 : enum.

       -C     Toggle computing whitespace states.  If 'whitespace' is  defined
	      in  the  grammar,	 then  use it as a subparser to consume white‐
	      space. (ON by default)

       -A     Toggle computing states for  all	non-terminals.	 Ensures  that
	      there  is	 a  unique  state for each non-terminal so that a sub‐
	      parsers can be invoked for that non-terminal. (OFF by default)

       -i tag Tag for grammar data structures so that multiple sets of	tables
	      can be included in one file/application. (defaults to 'gram')

       -b blocks
	      Number  of  blocks  to  which scanner tables are broken up into.
	      Larger numbers permit more sharing with more overhead.  4	 seems
	      to be optimal for most grammars. (defaults to 4) files.

       -p     Toggle  setting  of  operator  priority  from rules.  Setting of
	      operator priorities on operator tokens can increase the size  of
	      the  tables but can permit unnecessary parse stacks to be pruned
	      earlier. (OFF by default)

       -r     Toggle use of right recursion  for  EBNF	productions.   Do  not
	      change  this  unless you really know what you are doing. (OFF by
	      default)

       -L     Toggle writing of line numbers.  Used to debug the parsing table
	      generator itself. (ON by default)

       -X     Set  the extension of the generated code file.  For C++ programs
	      (for example) the extension can be set to .cpp with  the	option
	      "-Xcpp".	("-Xc" by default)

       -v     Increase verbosity.

       -R     Replace all actions in the grammar with actions printing produc‐
	      tions, 1 : during the speculative parsing process (<-), 2 : when
	      reduction	 is  part of any legal final parse (<=), 3 : both, 4 :
	      remove all actions from the grammar.  Print the changed  grammar
	      to  stdout.  Useful for debugging or prototyping new, experimen‐
	      tal grammars.

       -d     Increase debugging.

       -h     Display help.

ENVIRONMENT
       All the options are available through environment  variables  with  the
       names:

       D_MAKE_PARSER_HEADER, D_MAKE_PARSER_TOKEN, D_MAKE_PARSER_GRAMMAR_IDENT,
       D_MAKE_PARSER_SCANNER_BLOCKS, D_MAKE_PARSER_SET_PRIORITY,
       D_MAKE_PARSER_WRITE_LINE_DIRECTIVES, D_MAKE_RDEBUG_GRAMMAR,
       D_MAKE_PARSER_VERBOSE, D_MAKE_PARSER_DEBUG.

FEATURES
       The features are covered in the documentation.  See the README file.

FILES
       None.

NO WARRANTIES
       This program is distributed in the hope that it	will  be  useful,  but
       WITHOUT	ANY  WARRANTY;	without	 even  the  implied  warranty  of MER‐
       CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.   See	the  COPYRIGHT
       for more details.

SEE ALSO
       flex(1), yacc(1), bison(1)

       D Parser Home Page: http://dparser.sourceforge.net/

       The BSD General Public License.

AUTHOR
       John Plevyak.  Use <jplevyak at users.sourceforge.net> to contact.

Unix				   Mar 2003		       make_dparser(1)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net