public class JSWBackend extends TreeScanner
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
body |
private static char[] |
fields |
private static java.util.Map<java.lang.String,FuncDef> |
funcDefs |
private JSLParser |
parser |
private static java.util.Set<java.lang.String> |
resultVars |
private static java.lang.StringBuilder |
usercode |
Constructor and Description |
---|
JSWBackend(JSLParser parser,
ProgramUnit program) |
Modifier and Type | Method and Description |
---|---|
(package private) static void |
addGlueBlock(java.lang.String block) |
(package private) static void |
declareResultVar(java.lang.String vname) |
(package private) static int |
getFieldIndex(char field) |
(package private) static FuncDef |
getFuncDef(java.lang.String name) |
java.lang.String |
getGenCode(java.lang.String effectName,
java.lang.String peerName,
java.lang.String genericsName,
java.lang.String interfaceName) |
static java.lang.String |
getSuffix(int i) |
(package private) static boolean |
isResultVarDeclared(java.lang.String vname) |
(package private) static void |
putFuncDef(FuncDef def) |
private static void |
resetStatics() |
scan, visitArrayAccessExpr, visitBinaryExpr, visitBreakStmt, visitCallExpr, visitCompoundStmt, visitContinueStmt, visitDeclStmt, visitDiscardStmt, visitDoWhileStmt, visitExprStmt, visitFieldSelectExpr, visitForStmt, visitFuncDef, visitGlueBlock, visitLiteralExpr, visitParenExpr, visitProgramUnit, visitReturnStmt, visitSelectStmt, visitUnaryExpr, visitVarDecl, visitVariableExpr, visitVectorCtorExpr, visitWhileStmt
visit
private final JSLParser parser
private final java.lang.String body
private static char[] fields
private static java.util.Map<java.lang.String,FuncDef> funcDefs
private static java.util.Set<java.lang.String> resultVars
private static java.lang.StringBuilder usercode
public JSWBackend(JSLParser parser, ProgramUnit program)
public final java.lang.String getGenCode(java.lang.String effectName, java.lang.String peerName, java.lang.String genericsName, java.lang.String interfaceName)
public static java.lang.String getSuffix(int i)
static int getFieldIndex(char field)
static void putFuncDef(FuncDef def)
static FuncDef getFuncDef(java.lang.String name)
static boolean isResultVarDeclared(java.lang.String vname)
static void declareResultVar(java.lang.String vname)
static void addGlueBlock(java.lang.String block)
private static void resetStatics()