public abstract class Lazy<A> extends Proxy<A>
Subclasses of this class must implement the #init()
method.
Modifier | Constructor and Description |
---|---|
protected |
Lazy() |
Modifier and Type | Method and Description |
---|---|
protected void |
compileClear(eu.bandm.tools.paisley.CompilationContext context,
boolean recursively) |
protected void |
compileCut(eu.bandm.tools.paisley.CompilationContext context,
boolean recursively) |
protected void |
compileIsDeterministic(eu.bandm.tools.paisley.CompilationContext context) |
protected void |
compileMatch(eu.bandm.tools.paisley.CompilationContext context) |
protected void |
compileMatchAgain(eu.bandm.tools.paisley.CompilationContext context) |
Pattern<A> |
getBody() |
protected abstract Pattern<A> |
init(Pattern<? super A> self)
Creates the wrapped pattern.
|
boolean |
isDeterministic()
Checks whether this pattern is deterministic.
|
boolean |
isInitialized() |
binds, clear, clone, cut, matchAgain, preserves, preserves, setBody, toString
all, all, all, all, all, and, andThen, andThen, any, any, aside, both, clear, compareTo, compile, compileClear, compileCut, compileSubPattern, compileThis, compileUpTo, cut, DEBUG, either, enPassant, eq, eqNull, equal, filter, flatten, forInstancesOf, limit, main, matchOnce, matchVar, narrow, neq, neqNull, newAll, noMatch, none, or, orElse, orElse, repeat, some, some, some, some, someMatch, startCompile, test, transform, uniquely, variable, variable
public boolean isInitialized()
public boolean isDeterministic()
Pattern
The default implementation returns true
.
isDeterministic
in class Unary<A,A>
true
if this pattern is guaranteed to match any
object at most once, false
otherwise.Pattern.matchAgain()
protected void compileMatch(eu.bandm.tools.paisley.CompilationContext context)
compileMatch
in class Proxy<A>
protected void compileMatchAgain(eu.bandm.tools.paisley.CompilationContext context)
compileMatchAgain
in class Proxy<A>
protected void compileIsDeterministic(eu.bandm.tools.paisley.CompilationContext context)
compileIsDeterministic
in class Pattern<A>
protected void compileCut(eu.bandm.tools.paisley.CompilationContext context, boolean recursively)
compileCut
in class Unary<A,A>
protected void compileClear(eu.bandm.tools.paisley.CompilationContext context, boolean recursively)
compileClear
in class Unary<A,A>
see also the complete user documentation .