//generated by abstract-syntax-gen package de.peeeq.wurstscript.jassIm; import java.util.*; @SuppressWarnings({"cast", "unused", "rawtypes"}) class ImClassesImpl extends ImClasses { private Element parent; public Element getParent() { return parent; } public void setParent(Element parent) { if (parent != null && this.parent != null) { throw new Error("Cannot change parent of element " + this.getClass().getSimpleName() + ", as it is already used in another tree." + "Use the copy method to create a new tree or remove the tree from its old parent or set the parent to null before moving the tree. "); } this.parent = parent; } public void replaceBy(Element other) { if (parent == null) throw new RuntimeException("Node not attached to tree."); for (int i=0; i) this).set(i, (ImClass) newElement); } @Override public T match(Element.Matcher matcher) { return matcher.case_ImClasses(this); } @Override public void match(Element.MatcherVoid matcher) { matcher.case_ImClasses(this); } @Override public void accept(Visitor v) { v.visit(this); } @Override public void clearAttributes() { for (ImClass child : this) { child.clearAttributes(); } clearAttributesLocal(); } @Override public void clearAttributesLocal() { } /** */ public String toString() { return de.peeeq.wurstscript.translation.imtranslation.ImPrinter.asString((ImClasses)this); } /** */ public ImFunction getNearestFunc() { return de.peeeq.wurstscript.translation.imtojass.ImAttributes.getNearestFunc((ImClasses)this); } /** */ public de.peeeq.wurstscript.ast.Element attrTrace() { return de.peeeq.wurstscript.translation.imtojass.ImAttributes.getTrace((ImClasses)this); } /** */ public ImProg attrProg() { return de.peeeq.wurstscript.translation.imtojass.ImAttributes.getProg((ImClasses)this); } }