public class Resolver4 extends Rewrite
ResolvedModule
FIXME CURRENTLY FALSE?!)
can then be used for the parsing and further processing of input data.
This is a one-shot class: generate it for the rootModule and call
resolveAllPublics()
Modifier and Type | Class and Description |
---|---|
protected class |
Resolver4.Binding<T> |
protected class |
Resolver4.DifferenceFound |
class |
Resolver4.DistributeToResolved |
protected class |
Resolver4.Equivalence |
protected class |
Resolver4.FlattenContext |
protected class |
Resolver4.ImportContext |
protected class |
Resolver4.Instance |
protected class |
Resolver4.LocalInstance |
_visitor_debug_stream, partial
Constructor and Description |
---|
Resolver4(MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msgoutput,
ModuleRegistry moduleRegistry,
Module rootModule) |
action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, action, breakLoop, breakLoop, breakLoop, breakLoop, breakLoop, getResult, isMulti, lookUp, putToCache, revert, rewrite_typed, rewrite, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, rewriteFields, substitute_empty, substitute, useCache
_visitor_trace, action, action, action, action, foreignObject, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, nomatch
public static final String rootModuleSymbolicName
public static final String rootModuleExpandedSuffix
protected final MessageTee<SimpleMessage<XMLDocumentIdentifier>> msg
msgcount
and to the message channel of the caller.protected final MessageCounter<SimpleMessage<XMLDocumentIdentifier>> msgcount
protected final ModuleRegistry moduleRegistry
protected final Module rootModule
protected final Resolver4.ImportContext rootImportContext
protected final ResolvedModule resolvedModule
protected Resolver4.Binding<Expression> currentLocalSubsts
protected Resolver4.ImportContext importContextForRews
protected Resolver4.ImportContext importContextForDefs
protected Resolver4.FlattenContext currentFlattenContext
protected Map<Definition,Map<Resolver4.ImportContext,Resolver4.Instance>> instances
protected Map<Definition,List<Resolver4.LocalInstance>> localInstances
protected Map<Reference,Resolver4.Instance> reference2instance
protected Set<Resolver4.Instance> waitForClassification
protected final CheckedMap_RD<String,Definition> emptyLocals
protected final Resolver4.DifferenceFound differenceFound
public Resolver4(MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msgoutput, ModuleRegistry moduleRegistry, Module rootModule)
protected void error(Location<XMLDocumentIdentifier> loc, String txt, Object... obj)
protected void warning(Location<XMLDocumentIdentifier> loc, String txt, Object... obj)
@Opt protected <T> @Opt Resolver4.Binding<T> findBinding(@Opt @Opt Resolver4.Binding<T> binding, String id)
public void dumpInstances()
protected Map<Resolver4.ImportContext,Resolver4.Instance> findInstances(Definition raw)
@Opt protected @Opt Resolver4.Instance findInstance(Definition raw, Resolver4.ImportContext ic)
protected List<Resolver4.LocalInstance> findLocalInstances(Definition def)
protected Resolver4.Instance createNewInstance(Resolver4.ImportContext ic, Definition raw)
protected void rewriteFields(GrUnary clone)
rewriteFields
in class Rewrite
protected void rewriteFields(Alt clone)
rewriteFields
in class Rewrite
protected void rewriteFields(Perm clone)
rewriteFields
in class Rewrite
protected void rewriteFields(Seq clone)
rewriteFields
in class Rewrite
protected void rewriteFields(CharBinary clone)
rewriteFields
in class Rewrite
protected void rewriteFields(ParseParticle clone)
rewriteFields
in class Rewrite
protected void rewriteFields(CharSetConst clone)
rewriteFields
in class Rewrite
protected void rewriteFields(StringConst clone)
rewriteFields
in class Rewrite
public void rewriteFields(Reference ref)
rewriteFields
in class Rewrite
protected void visitPossiblyImportedDefinition(Location<XMLDocumentIdentifier> loc, Reference currentReference, String id)
protected void visitPossiblyImportedDefinition(Location<XMLDocumentIdentifier> loc, Reference currentReference, String... prefs)
protected void switchModuleRest(Location<XMLDocumentIdentifier> loc, Reference currentReference, String... prefs)
@Opt protected @Opt Resolver4.ImportContext loadImportedModule(Location<XMLDocumentIdentifier> loc, Resolver4.ImportContext ic, String pref)
protected void visitDefinition(Location<XMLDocumentIdentifier> loc, Reference currentReference, String... prefs)
protected boolean localEquivalent(Expression expr, Resolver4.LocalInstance inst)
protected void processWaitingClassifications()
protected void processWaitingClassification(Resolver4.Instance instance)
protected boolean equivalent(Definition def1, Definition def2)
protected boolean equivalent(Expression exp1, Expression exp2)
see also the complete user documentation .