//generated by abstract-syntax-gen package de.peeeq.wurstscript.jassIm; import java.util.*; public interface ElementWithTrace extends Element{ void setTrace(de.peeeq.wurstscript.ast.Element trace); de.peeeq.wurstscript.ast.Element getTrace(); Element getParent(); T match(Matcher s); void match(MatcherVoid s); public interface Matcher { T case_ImClass(ImClass imClass); T case_ImVarArrayAccess(ImVarArrayAccess imVarArrayAccess); T case_ImFuncRef(ImFuncRef imFuncRef); T case_ImSet(ImSet imSet); T case_ImLoop(ImLoop imLoop); T case_ImDealloc(ImDealloc imDealloc); T case_ImAlloc(ImAlloc imAlloc); T case_ImMethodCall(ImMethodCall imMethodCall); T case_ImFunctionCall(ImFunctionCall imFunctionCall); T case_ImVar(ImVar imVar); T case_ImCompiletimeExpr(ImCompiletimeExpr imCompiletimeExpr); T case_ImExitwhen(ImExitwhen imExitwhen); T case_ImMemberAccess(ImMemberAccess imMemberAccess); T case_ImProg(ImProg imProg); T case_ImIf(ImIf imIf); T case_ImMethod(ImMethod imMethod); T case_ImFunction(ImFunction imFunction); T case_ImReturn(ImReturn imReturn); } public interface MatcherVoid { void case_ImClass(ImClass imClass); void case_ImVarArrayAccess(ImVarArrayAccess imVarArrayAccess); void case_ImFuncRef(ImFuncRef imFuncRef); void case_ImSet(ImSet imSet); void case_ImLoop(ImLoop imLoop); void case_ImDealloc(ImDealloc imDealloc); void case_ImAlloc(ImAlloc imAlloc); void case_ImMethodCall(ImMethodCall imMethodCall); void case_ImFunctionCall(ImFunctionCall imFunctionCall); void case_ImVar(ImVar imVar); void case_ImCompiletimeExpr(ImCompiletimeExpr imCompiletimeExpr); void case_ImExitwhen(ImExitwhen imExitwhen); void case_ImMemberAccess(ImMemberAccess imMemberAccess); void case_ImProg(ImProg imProg); void case_ImIf(ImIf imIf); void case_ImMethod(ImMethod imMethod); void case_ImFunction(ImFunction imFunction); void case_ImReturn(ImReturn imReturn); } ElementWithTrace copy(); ElementWithTrace copyWithRefs(); /** */ public abstract String toString(); /** */ public abstract ImFunction getNearestFunc(); /** */ public abstract de.peeeq.wurstscript.ast.Element attrTrace(); /** */ public abstract ImProg attrProg(); }