throw new NoFieldException(name, expr); if (nfe.getExpr() != e.oprand1()) throw nfe; return fieldAccess2(e, nfe.getField());
public void atArrayLength(Expr expr) throws CompileError { expr.oprand1().accept(this); if (arrayDim == 0) throw new NoFieldException("length", expr); exprType = INT; arrayDim = 0; }
public void atArrayLength(Expr expr) throws CompileError { expr.oprand1().accept(this); if (arrayDim == 0) throw new NoFieldException("length", expr); exprType = INT; arrayDim = 0; }
throw new NoFieldException(name, expr); if (nfe.getExpr() != e.oprand1()) throw nfe; String cname = nfe.getField(); f = resolver.lookupFieldByJvmName2(cname, fname, expr); resultStatic = true;
/** * Only used by fieldAccess() in MemberCodeGen and TypeChecker. * * @param jvmClassName a JVM class name. e.g. java/lang/String * @see #lookupClass(String, boolean) */ public CtField lookupFieldByJvmName2(String jvmClassName, Symbol fieldSym, ASTree expr) throws NoFieldException { String field = fieldSym.get(); CtClass cc = null; try { cc = lookupClass(jvmToJavaName(jvmClassName), true); } catch (CompileError e) { // EXPR might be part of a qualified class name. throw new NoFieldException(jvmClassName + "/" + field, expr); } try { return cc.getField(field); } catch (NotFoundException e) { // maybe an inner class. jvmClassName = javaToJvmName(cc.getName()); throw new NoFieldException(jvmClassName + "$" + field, expr); } }
throw new NoFieldException(name, expr); if (nfe.getExpr() != e.oprand1()) throw nfe; return fieldAccess2(e, nfe.getField());
/** * Only used by fieldAccess() in MemberCodeGen and TypeChecker. * * @param jvmClassName a JVM class name. e.g. java/lang/String * @see #lookupClass(String, boolean) */ public CtField lookupFieldByJvmName2(String jvmClassName, Symbol fieldSym, ASTree expr) throws NoFieldException { String field = fieldSym.get(); CtClass cc = null; try { cc = lookupClass(jvmToJavaName(jvmClassName), true); } catch (CompileError e) { // EXPR might be part of a qualified class name. throw new NoFieldException(jvmClassName + "/" + field, expr); } try { return cc.getField(field); } catch (NotFoundException e) { // maybe an inner class. jvmClassName = javaToJvmName(cc.getName()); throw new NoFieldException(jvmClassName + "$" + field, expr); } }
throw new NoFieldException(name, expr); if (nfe.getExpr() != e.oprand1()) throw nfe; String cname = nfe.getField(); f = resolver.lookupFieldByJvmName2(cname, fname, expr); resultStatic = true;
public void atArrayLength(Expr expr) throws CompileError { expr.oprand1().accept(this); if (arrayDim == 0) throw new NoFieldException("length", expr); exprType = INT; arrayDim = 0; }
throw new NoFieldException(name, expr); if (nfe.getExpr() != e.oprand1()) throw nfe; return fieldAccess2(e, nfe.getField());
public void atArrayLength(Expr expr) throws CompileError { expr.oprand1().accept(this); if (arrayDim == 0) throw new NoFieldException("length", expr); exprType = INT; arrayDim = 0; }
throw new NoFieldException(name, expr); if (nfe.getExpr() != e.oprand1()) throw nfe; return fieldAccess2(e, nfe.getField());
public void atArrayLength(Expr expr) throws CompileError { expr.oprand1().accept(this); if (arrayDim == 0) throw new NoFieldException("length", expr); exprType = INT; arrayDim = 0; }