public abstract class Resolver2 extends SinglePhase
ModuleRegistry#load_toplevel_module_from_stream(java.io.InputStream,String)
already has called Navigate.LocalReferenceNormalizer()#match(Module)!!)
| Modifier and Type | Class and Description |
|---|---|
protected class |
Resolver2.Binding<T> |
protected class |
Resolver2.FlattenContext |
protected class |
Resolver2.ImportContext |
| Modifier and Type | Field and Description |
|---|---|
protected String |
currentDefinitionName |
protected Resolver2.FlattenContext |
currentFlattenContext |
protected Resolver2.ImportContext |
currentImportContext
How we came here where we are visiting now.
|
protected Resolver2.Binding<Expression> |
currentLocalSubsts |
protected Module |
currentModule |
protected ModuleRegistry |
moduleRegistry |
protected MessageTee<SimpleMessage<XMLDocumentIdentifier>> |
msg |
protected MessageCounter<SimpleMessage<XMLDocumentIdentifier>> |
msgcount |
_visitor_debug_stream, partial| Constructor and Description |
|---|
Resolver2(MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msgoutput,
ModuleRegistry moduleRegistry) |
| Modifier and Type | Method and Description |
|---|---|
void |
action(Enumeration def) |
void |
action(Insertion ins) |
void |
action(Reference ref) |
void |
action(Subst subst) |
void |
action(XRegExp def) |
abstract void |
definitionReached(Enumeration def) |
abstract void |
definitionReached(XRegExp def) |
protected void |
error(Location<XMLDocumentIdentifier> loc,
String txt) |
protected void |
error(Location<XMLDocumentIdentifier> loc,
String txt,
Object... obj) |
protected <T> T |
findBinding(Resolver2.Binding<T> binding,
String id) |
void |
startAt(XRegExp def) |
protected void |
switchToRewrittenModule(Location<XMLDocumentIdentifier> loc,
String... prefs)
Resolve a chain of substitutions on module level.
|
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_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, nomatchprotected MessageTee<SimpleMessage<XMLDocumentIdentifier>> msg
protected MessageCounter<SimpleMessage<XMLDocumentIdentifier>> msgcount
protected ModuleRegistry moduleRegistry
protected Resolver2.Binding<Expression> currentLocalSubsts
protected Resolver2.ImportContext currentImportContext
protected String currentDefinitionName
protected Module currentModule
protected Resolver2.FlattenContext currentFlattenContext
public Resolver2(MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msgoutput, ModuleRegistry moduleRegistry)
protected void error(Location<XMLDocumentIdentifier> loc, String txt)
protected void error(Location<XMLDocumentIdentifier> loc, String txt, Object... obj)
protected <T> T findBinding(Resolver2.Binding<T> binding, String id)
public void startAt(XRegExp def)
public void action(Subst subst)
action in class SinglePhasepublic void action(Insertion ins)
action in class SinglePhasepublic void action(Reference ref)
action in class SinglePhaseprotected void switchToRewrittenModule(Location<XMLDocumentIdentifier> loc, String... prefs)
module ddd <--currentImportContext's raw module
import X from xxx
def a = ... X.x ... <--visiting here
module ccc <--- second import context
import D from ddd ^(Y/X) <--- currentImportContext's ImportItem
import Y from yyy
module bbb <--initial import context (unresolved module maps IDs to importItems)
import C from ccc ^(Z/Y) <--- second import context's ImportItem
import Z from zzz
This chain is cycle-free by construction.public void action(XRegExp def)
action in class SinglePhasepublic void action(Enumeration def)
action in class SinglePhasepublic abstract void definitionReached(XRegExp def)
public abstract void definitionReached(Enumeration def)
see also the complete user documentation .