diff -r f2352e0b713e -r eaf4e8387065 vm/src/main/java/org/apidesign/vm4brwsr/Variable.java --- a/vm/src/main/java/org/apidesign/vm4brwsr/Variable.java Fri Dec 07 15:02:35 2012 +0100 +++ b/vm/src/main/java/org/apidesign/vm4brwsr/Variable.java Wed Dec 12 11:04:02 2012 +0100 @@ -18,15 +18,8 @@ package org.apidesign.vm4brwsr; public final class Variable implements CharSequence { - public static final int TYPE_INT = 0; - public static final int TYPE_LONG = 1; - public static final int TYPE_FLOAT = 2; - public static final int TYPE_DOUBLE = 3; - public static final int TYPE_REF = 4; - - public static final int LAST_TYPE = TYPE_REF; - private static final String STACK_VAR_PREFIX = "st"; + private static final String LOCAL_VAR_PREFIX = "lc"; private final String name; private final int type; @@ -46,6 +39,12 @@ return new Variable(STACK_VAR_PREFIX, type, index); } + public static Variable getLocalVariable( + final int type, final int index) { + // TODO: precreate frequently used variables + return new Variable(LOCAL_VAR_PREFIX, type, index); + } + public String getName() { return name; } @@ -59,7 +58,7 @@ } public boolean isCategory2() { - return (type == TYPE_LONG) || (type == TYPE_DOUBLE); + return VarType.isCategory2(type); } @Override