Object-oriented Parser System
v3.6

oops3
Class XbnfBuilder

Object
  extended by RfcBuilder
      extended by XbnfBuilder

public class XbnfBuilder
extends RfcBuilder

builder for recognizer built from xbnf.rfc and xbnf.xbnf.

Version:
3.1.2

Nested Class Summary
 
Nested classes/interfaces inherited from class RfcBuilder
RfcBuilder.Repeator
 
Field Summary
 
Fields inherited from class RfcBuilder
factory
 
Constructor Summary
XbnfBuilder()
           
 
Method Summary
 Parser.Node and(int position, List args)
          and: '{' xors ',' xors +/ ',' '}' list?
 Parser.Node or(int position, List args)
          or: '[' xors ',' xors +/ ',' ']' list?
protected  RfcBuilder.Repeator range(int position, int min, int max, Parser.Node delimiter)
          returns Repeator to call ParserFactory.repeat or ParserFactory.delimit, or the Repeator created by the alternatives.
 RfcBuilder.Repeator range1(int position, List args)
          range1: Number ( '..'
 RfcBuilder.Repeator range2(int position, List args)
          range2: '..' ( Number?
 Parser.Sequence xors(int position, List args)
          xors: xor+;
 
Methods inherited from class RfcBuilder
extract, item, literal, many, optional, parser, rule, sequence, some, term, type, xor
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XbnfBuilder

public XbnfBuilder()
Method Detail

or

public Parser.Node or(int position,
                      List args)
or: '[' xors ',' xors +/ ',' ']' list?;
or: '[' xors 2../ ',' ']' list?;


and

public Parser.Node and(int position,
                       List args)
and: '{' xors ',' xors +/ ',' '}' list?;
and: '{' xors 2../ ',' '}' list?;


xors

public Parser.Sequence xors(int position,
                            List args)
xors: xor+;

Returns:
Sequence to prevent flattening the content.

range

protected RfcBuilder.Repeator range(int position,
                                    int min,
                                    int max,
                                    Parser.Node delimiter)
returns Repeator to call ParserFactory.repeat or ParserFactory.delimit, or the Repeator created by the alternatives.


range1

public RfcBuilder.Repeator range1(int position,
                                  List args)
range1: Number ( '..' Number? list? | list )?


range2

public RfcBuilder.Repeator range2(int position,
                                  List args)
range2: '..' ( Number? list? )?;



(c) 2008 Axel T. Schreiner