public class TypeCheck extends SinglePhase
Modifier and Type | Class and Description |
---|---|
protected static class |
TypeCheck.AttributeCollector |
static class |
TypeCheck.Type |
Modifier and Type | Field and Description |
---|---|
protected Set<XRegExp> |
currentlyOpen |
protected MessageReceiver<SimpleMessage> |
msg |
protected TypeCheck.Type |
result |
protected Map<Expression,TypeCheck.Type> |
types |
_visitor_debug_stream, partial
Constructor and Description |
---|
TypeCheck() |
Modifier and Type | Method and Description |
---|---|
void |
action(CharCut x) |
void |
action(CharJoin x) |
void |
action(CharMinus x) |
void |
action(CharRange x) |
void |
action(CharSetConst x) |
void |
action(StringConst x) |
void |
check(Module mod,
MessageReceiver<SimpleMessage> msg) |
static Set<Definition> |
collectAttributes(XRegExp host)
Every XRegExp has a local cache with definitions which are realized as attributs.
|
static Set<Expression> |
collectAttributesOpt(XRegExp host)
Delivers an Expression ONLY for indicating whether the attribute
is optional.
|
protected void |
error(Expression exp,
String text) |
Map<Expression,TypeCheck.Type> |
get_types() |
protected TypeCheck.Type |
testDefinition(Expression caller,
XRegExp x) |
protected void |
twoCharSets(CharBinary x) |
protected TypeCheck.Type |
typeOf(Expression x) |
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, nomatch
protected MessageReceiver<SimpleMessage> msg
protected Map<Expression,TypeCheck.Type> types
protected TypeCheck.Type result
public Map<Expression,TypeCheck.Type> get_types()
public void check(Module mod, MessageReceiver<SimpleMessage> msg)
protected void error(Expression exp, String text)
protected TypeCheck.Type testDefinition(Expression caller, XRegExp x)
protected TypeCheck.Type typeOf(Expression x)
public void action(CharRange x)
action
in class SinglePhase
protected void twoCharSets(CharBinary x)
public void action(CharMinus x)
action
in class SinglePhase
public void action(CharJoin x)
action
in class SinglePhase
public void action(CharCut x)
action
in class SinglePhase
public void action(CharSetConst x)
action
in class SinglePhase
public void action(StringConst x)
action
in class SinglePhase
public static Set<Expression> collectAttributesOpt(XRegExp host)
public static Set<Definition> collectAttributes(XRegExp host)
see also the complete user documentation .