A - the target type of the containing patternB - the target type of the contained subpatternpublic abstract class MultiTransform<A,B> extends FlatMultiTransform<A,B>
Subclasses must implement the apply(A) method.
| Modifier | Constructor and Description | 
|---|---|
| protected  | MultiTransform(Pattern<? super B> body)Creates a new pattern. | 
| Modifier and Type | Method and Description | 
|---|---|
| abstract Iterable<B> | apply(A target)Transforms a target to be matched into an enumeration of targets
 for the subpattern. | 
| void | close() | 
| protected void | compileApply(eu.bandm.tools.paisley.CompilationContext context) | 
| protected void | compileClose(eu.bandm.tools.paisley.CompilationContext context) | 
| protected void | compileHasNext(eu.bandm.tools.paisley.CompilationContext context) | 
| protected void | compileNext(eu.bandm.tools.paisley.CompilationContext context) | 
| protected void | compileOpen(eu.bandm.tools.paisley.CompilationContext context) | 
| boolean | hasNext() | 
| B | next() | 
| void | open(A target) | 
compileMatch, compileMatchAgain, compileMatchNext, compileMatchNextBody, cut, match, matchAgainbinds, clear, clone, compileClear, compileCut, getBody, isDeterministic, preserves, preserves, setBody, toStringall, all, all, all, all, and, andThen, andThen, any, any, aside, both, clear, compareTo, compile, compileClear, compileCut, compileIsDeterministic, 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, variablepublic abstract Iterable<B> apply(A target)
target - the target for this pattern to be matched against.Unary.body to be matched against.public void open(A target)
open in class FlatMultiTransform<A,B>public void close()
close in class FlatMultiTransform<A,B>public boolean hasNext()
hasNext in class FlatMultiTransform<A,B>public B next()
next in class FlatMultiTransform<A,B>protected void compileOpen(eu.bandm.tools.paisley.CompilationContext context)
compileOpen in class FlatMultiTransform<A,B>protected void compileClose(eu.bandm.tools.paisley.CompilationContext context)
compileClose in class FlatMultiTransform<A,B>protected void compileHasNext(eu.bandm.tools.paisley.CompilationContext context)
compileHasNext in class FlatMultiTransform<A,B>protected void compileNext(eu.bandm.tools.paisley.CompilationContext context)
compileNext in class FlatMultiTransform<A,B>protected void compileApply(eu.bandm.tools.paisley.CompilationContext context)
see also the complete user documentation .