public final class Reducer
extends eu.bandm.tools.umod.absy.Visitor
Modifier and Type | Class and Description |
---|---|
protected class |
Reducer.PragsVisitor |
Modifier and Type | Field and Description |
---|---|
protected UMod.FieldDef |
actfield |
protected UMod.Forest |
curforest |
protected LocationMap<NoDocumentIdentifier,XMLDocumentIdentifier> |
formatloc |
protected boolean |
iscontinuation |
protected eu.bandm.tools.umod.absy.Element_singletype |
lastType |
protected MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> |
msg |
protected Integer |
NULLPOSITION |
static Pattern |
PATTERN_lrcode |
static Map<String,UMod.Type> |
predefinedTypes |
static String |
STRING_lrcode_separator
|
protected UMod.Type |
typeresult |
validating
Constructor and Description |
---|
Reducer() |
Modifier and Type | Method and Description |
---|---|
protected void |
copylocation(TypedElement<?,?> el,
UMod.Item it) |
protected UMod.ClassDef |
find_subclass(UMod.ClassDef sup,
String name) |
protected UMod.FieldDef |
findfield(String fid) |
protected String |
ident_PCData(eu.bandm.tools.umod.absy.Element_ident el)
}
// A < B, C |
protected Location<NoDocumentIdentifier> |
intoString(int start,
int length) |
protected UMod.ClassDef |
lastinstack() |
protected void |
patchPragmas(Collection<CheckedMap_RD<Integer,UMod.FieldDef>> maps) |
protected void |
putDef(UMod.Item it,
String name) |
static UMod.Forest |
reduce(UMod.Forest in_forest,
eu.bandm.tools.umod.absy.Document_modeltree el,
MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msg0) |
protected void |
storeDocumentation(UMod.Item target,
eu.bandm.tools.umod.absy.Element_doctext doc) |
protected void |
synterror(Location<XMLDocumentIdentifier> loc,
String txt) |
void |
visit(eu.bandm.tools.umod.absy.Element_algebraic e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_classdecl e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_classextension e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_classleveljava e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_cross e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_enumdef e0)
<!ELEMENT enumdef (ident_upper, doctext?, enumitems) >
<!ELEMENT enumitem (ident, doctext?) > |
void |
visit(eu.bandm.tools.umod.absy.Element_extdecl el) |
void |
visit(eu.bandm.tools.umod.absy.Element_extendexternal e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_fielddef e0)
<!ELEMENT fielddef (ident_lower, abstractfield?, type, initvalue?,
pragmas?, doctext?) >
|
void |
visit(eu.bandm.tools.umod.absy.Element_fielddocu e0)
<!ELEMENT fielddocu (ident_lower, doctext) > |
void |
visit(eu.bandm.tools.umod.absy.Element_fieldref e0)
|
void |
visit(eu.bandm.tools.umod.absy.Element_formatdef e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_ident_upper e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_iface e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_impllist e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_indent e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_interfaces e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_j_abstract e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_mapto e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_modeltree e0)
|
void |
visit(eu.bandm.tools.umod.absy.Element_ordered e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_plus e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_relto e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_singletype e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_toplevelclass e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_topleveljava e0)
|
void |
visit(eu.bandm.tools.umod.absy.Element_tostring e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_type_atom.Choice_1_Alt_2 e0)
<!ELEMENT type_atom
(type_builtin |
(t_power, type) |
(t_seq, type) |
(t_map, type, type) |
typeref)
>
|
void |
visit(eu.bandm.tools.umod.absy.Element_type_atom.Choice_1_Alt_3 e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_type_atom.Choice_1_Alt_4 e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_type_atom.Choice_1_Alt_5 e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_type_opt e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_type el)
|
void |
visit(eu.bandm.tools.umod.absy.Element_typedef e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_typeref e0) |
void |
visit(eu.bandm.tools.umod.absy.Element_visitordecl e0) |
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
visit
protected UMod.Forest curforest
protected MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msg
protected boolean iscontinuation
protected final Integer NULLPOSITION
protected LocationMap<NoDocumentIdentifier,XMLDocumentIdentifier> formatloc
protected UMod.Type typeresult
protected UMod.FieldDef actfield
public static final String STRING_lrcode_separator
public static final Pattern PATTERN_lrcode
protected eu.bandm.tools.umod.absy.Element_singletype lastType
protected UMod.ClassDef lastinstack()
protected void copylocation(TypedElement<?,?> el, UMod.Item it)
protected void synterror(Location<XMLDocumentIdentifier> loc, String txt)
public static UMod.Forest reduce(@Opt UMod.Forest in_forest, eu.bandm.tools.umod.absy.Document_modeltree el, MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msg0)
public void visit(eu.bandm.tools.umod.absy.Element_modeltree e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
protected void storeDocumentation(UMod.Item target, eu.bandm.tools.umod.absy.Element_doctext doc)
protected String ident_PCData(eu.bandm.tools.umod.absy.Element_ident el)
public void visit(eu.bandm.tools.umod.absy.Element_extdecl el)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_visitordecl e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_typedef e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_enumdef e0)
<!ELEMENT enumdef (ident_upper, doctext?, enumitems) >
<!ELEMENT enumitem (ident, doctext?) >
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_interfaces e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_iface e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_indent e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_ident_upper e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_toplevelclass e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_classextension e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
protected UMod.ClassDef find_subclass(UMod.ClassDef sup, String name)
public void visit(eu.bandm.tools.umod.absy.Element_classdecl e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
protected void patchPragmas(Collection<CheckedMap_RD<Integer,UMod.FieldDef>> maps)
public void visit(eu.bandm.tools.umod.absy.Element_impllist e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_extendexternal e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_j_abstract e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_algebraic e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_ordered e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_topleveljava e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_classleveljava e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_tostring e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
protected Location<NoDocumentIdentifier> intoString(int start, int length)
public void visit(eu.bandm.tools.umod.absy.Element_formatdef e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_fielddocu e0)
<!ELEMENT fielddocu (ident_lower, doctext) >
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_fielddef e0)
<!ELEMENT fielddef (ident_lower, abstractfield?, type, initvalue?,
pragmas?, doctext?) >
visit
in class eu.bandm.tools.umod.absy.Visitor
protected UMod.FieldDef findfield(String fid)
public void visit(eu.bandm.tools.umod.absy.Element_fieldref e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_type el)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_singletype e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_type_opt e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_cross e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_mapto e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_relto e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_plus e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_type_atom.Choice_1_Alt_2 e0)
<!ELEMENT type_atom
(type_builtin |
(t_power, type) |
(t_seq, type) |
(t_map, type, type) |
typeref)
>
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_type_atom.Choice_1_Alt_3 e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_type_atom.Choice_1_Alt_4 e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_type_atom.Choice_1_Alt_5 e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
public void visit(eu.bandm.tools.umod.absy.Element_typeref e0)
visit
in class eu.bandm.tools.umod.absy.Visitor
see also the complete user documentation .