Class LazyParser<T>
java.lang.Object
proguard.classfile.attribute.signature.parsing.LazyParser<T>
- Type Parameters:
T- The return type of the parser.
- All Implemented Interfaces:
Parser<T>
Lazily initialized parser. Used to avoid problems with recursive definitions of grammar.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionparse(ParserContext context) The core of the parsing logic.voidsetDelegate(Parser<T> delegate) Configure with the parser that all calls will be forwarded to.
-
Constructor Details
-
LazyParser
public LazyParser()
-
-
Method Details
-
setDelegate
Configure with the parser that all calls will be forwarded to. -
parse
Description copied from interface:ParserThe core of the parsing logic. The context argument specifies where in the input string we are currently parsing. The responsibility of this function is to do one of:- Consume a part of the input and return a non-null value.
- Return null and keep the input context untouched. This can be achieved either by avoiding
the calls to
ParserContext.advance(int), or through the use of snapshotting (seeParserContext.snapshot()).
-