[Nice-commit] Nice/src/bossa/syntax CallExp.java,1.81,1.82 EnumDefinition.java,1.2,1.3 GlobalVarDecl
Brought to you by:
bonniot
Update of /cvsroot/nice/Nice/src/bossa/syntax In directory sc8-pr-cvs1:/tmp/cvs-serv14848/F:/nice/src/bossa/syntax Modified Files: CallExp.java EnumDefinition.java GlobalVarDeclaration.java MethodBodyDefinition.java MethodDeclaration.java NiceClass.java VarSymbol.java Log Message: Reduced some cast's and instaneof's. Index: CallExp.java =================================================================== RCS file: /cvsroot/nice/Nice/src/bossa/syntax/CallExp.java,v retrieving revision 1.81 retrieving revision 1.82 diff -C2 -d -r1.81 -r1.82 *** CallExp.java 24 Jul 2003 21:26:19 -0000 1.81 --- CallExp.java 25 Jul 2003 16:13:10 -0000 1.82 *************** *** 367,382 **** return arguments.getExp(0) + "." + function + arguments.toStringInfix(); ! if (function instanceof SymbolExp && ! ((SymbolExp)function).getSymbol() instanceof MethodDeclaration.Symbol) { ! MethodDeclaration md = ((MethodDeclaration.Symbol) ! ((SymbolExp)function).getSymbol()).getDefinition(); ! if (md instanceof RetypedJavaMethod) return function.toString() + arguments; ! if (md instanceof JavaFieldAccess) return declaringClass.getName() + "." + ! ((JavaFieldAccess)md).fieldName + arguments; } --- 367,380 ---- return arguments.getExp(0) + "." + function + arguments.toStringInfix(); ! if (function instanceof SymbolExp) { ! Definition def = ((SymbolExp)function).getSymbol().getDefinition(); ! if (def instanceof RetypedJavaMethod) return function.toString() + arguments; ! if (def instanceof JavaFieldAccess) return declaringClass.getName() + "." + ! ((JavaFieldAccess)def).fieldName + arguments; } Index: EnumDefinition.java =================================================================== RCS file: /cvsroot/nice/Nice/src/bossa/syntax/EnumDefinition.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** EnumDefinition.java 6 Jul 2003 23:25:37 -0000 1.2 --- EnumDefinition.java 25 Jul 2003 16:13:10 -0000 1.3 *************** *** 93,97 **** } ! Definition getDefinition() { return EnumDefinition.this; --- 93,97 ---- } ! public Definition getDefinition() { return EnumDefinition.this; Index: GlobalVarDeclaration.java =================================================================== RCS file: /cvsroot/nice/Nice/src/bossa/syntax/GlobalVarDeclaration.java,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** GlobalVarDeclaration.java 19 Jul 2003 00:54:05 -0000 1.18 --- GlobalVarDeclaration.java 25 Jul 2003 16:13:10 -0000 1.19 *************** *** 80,84 **** } ! Definition getDefinition() { return GlobalVarDeclaration.this; --- 80,84 ---- } ! public Definition getDefinition() { return GlobalVarDeclaration.this; Index: MethodBodyDefinition.java =================================================================== RCS file: /cvsroot/nice/Nice/src/bossa/syntax/MethodBodyDefinition.java,v retrieving revision 1.134 retrieving revision 1.135 diff -C2 -d -r1.134 -r1.135 *** MethodBodyDefinition.java 15 Jul 2003 11:12:03 -0000 1.134 --- MethodBodyDefinition.java 25 Jul 2003 16:13:10 -0000 1.135 *************** *** 177,181 **** for(Iterator i = symbols.iterator(); i.hasNext();){ VarSymbol s = (VarSymbol)i.next(); ! if(!(s instanceof MethodDeclaration.Symbol)) { i.remove(); --- 177,181 ---- for(Iterator i = symbols.iterator(); i.hasNext();){ VarSymbol s = (VarSymbol)i.next(); ! if(s.getMethodDeclaration() == null) { i.remove(); *************** *** 183,187 **** } ! MethodDeclaration m = ((MethodDeclaration.Symbol) s).getDefinition(); if (m.getArity() != formals.length --- 183,187 ---- } ! MethodDeclaration m = s.getMethodDeclaration(); if (m.getArity() != formals.length *************** *** 233,237 **** for (int m1 = 0; m1 < size; m1++) { ! Monotype[] dom1 = tempSymbols[m1].getDefinition().getType().domain(); for (int m2 = 0; m2 < size; m2++) if (m1 != m2) --- 233,237 ---- for (int m1 = 0; m1 < size; m1++) { ! Monotype[] dom1 = tempSymbols[m1].getMethodDeclaration().getType().domain(); for (int m2 = 0; m2 < size; m2++) if (m1 != m2) *************** *** 239,243 **** boolean remove = true; boolean additionalsEqual = true; ! Monotype[] dom2 = tempSymbols[m2].getDefinition().getType().domain(); for (int i = 0; i < len; i++) if (additionalTags[i] != null) --- 239,243 ---- boolean remove = true; boolean additionalsEqual = true; ! Monotype[] dom2 = tempSymbols[m2].getMethodDeclaration().getType().domain(); for (int i = 0; i < len; i++) if (additionalTags[i] != null) *************** *** 271,275 **** outer: for(Iterator it = symbols.iterator(); it.hasNext();) { ! MethodDeclaration m = ((MethodDeclaration.Symbol) it.next()).getDefinition(); if( m instanceof NiceMethod) { FormalParameters params = m.formalParameters(); --- 271,275 ---- outer: for(Iterator it = symbols.iterator(); it.hasNext();) { ! MethodDeclaration m = ((MethodDeclaration.Symbol) it.next()).getMethodDeclaration(); if( m instanceof NiceMethod) { FormalParameters params = m.formalParameters(); *************** *** 295,299 **** { MethodDeclaration m = ! ((MethodDeclaration.Symbol) i.next()).getDefinition(); methods += m + " defined " + m.location() + "\n"; } --- 295,299 ---- { MethodDeclaration m = ! ((MethodDeclaration.Symbol) i.next()).getMethodDeclaration(); methods += m + " defined " + m.location() + "\n"; } *************** *** 332,339 **** User.error(this, name+" is not declared"); ! if(!(s instanceof MethodDeclaration.Symbol)) User.error(this, name+" is not a method"); ! MethodDeclaration decl = ((MethodDeclaration.Symbol) s).getDefinition(); setDeclaration(decl); --- 332,339 ---- User.error(this, name+" is not declared"); ! if(s.getMethodDeclaration() == null) User.error(this, name+" is not a method"); ! MethodDeclaration decl = s.getMethodDeclaration(); setDeclaration(decl); Index: MethodDeclaration.java =================================================================== RCS file: /cvsroot/nice/Nice/src/bossa/syntax/MethodDeclaration.java,v retrieving revision 1.43 retrieving revision 1.44 diff -C2 -d -r1.43 -r1.44 *** MethodDeclaration.java 17 Jun 2003 12:03:05 -0000 1.43 --- MethodDeclaration.java 25 Jul 2003 16:13:10 -0000 1.44 *************** *** 304,309 **** FieldAccess getFieldAccessMethod() { ! if(getDefinition() instanceof FieldAccess) ! return (FieldAccess) getDefinition(); return null; --- 304,309 ---- FieldAccess getFieldAccessMethod() { ! if(getMethodDeclaration() instanceof FieldAccess) ! return (FieldAccess) getMethodDeclaration(); return null; *************** *** 312,316 **** void checkSpecialRequirements(Expression[] arguments) { ! getDefinition().checkSpecialRequirements(arguments); } --- 312,316 ---- void checkSpecialRequirements(Expression[] arguments) { ! getMethodDeclaration().checkSpecialRequirements(arguments); } *************** *** 324,345 **** } ! public MethodDeclaration getDefinition() { return MethodDeclaration.this; } ! gnu.expr.Expression compile() { ! return getDefinition().getCode(); } gnu.expr.Expression compileInCallPosition() { ! return getDefinition().getCodeInCallPosition(); } String explainWhyMatchFails(Arguments arguments) { ! return MethodDeclaration.this.explainWhyMatchFails(arguments); } --- 324,350 ---- } ! public Definition getDefinition() { return MethodDeclaration.this; } ! ! public MethodDeclaration getMethodDeclaration() ! { ! return MethodDeclaration.this; ! } ! gnu.expr.Expression compile() { ! return getMethodDeclaration().getCode(); } gnu.expr.Expression compileInCallPosition() { ! return getMethodDeclaration().getCodeInCallPosition(); } String explainWhyMatchFails(Arguments arguments) { ! return getMethodDeclaration().explainWhyMatchFails(arguments); } *************** *** 351,355 **** public String toString() { ! return MethodDeclaration.this.toString(); } } --- 356,360 ---- public String toString() { ! return getMethodDeclaration().toString(); } } Index: NiceClass.java =================================================================== RCS file: /cvsroot/nice/Nice/src/bossa/syntax/NiceClass.java,v retrieving revision 1.49 retrieving revision 1.50 diff -C2 -d -r1.49 -r1.50 *** NiceClass.java 18 Jul 2003 22:56:49 -0000 1.49 --- NiceClass.java 25 Jul 2003 16:13:10 -0000 1.50 *************** *** 366,370 **** MethodDeclaration.Symbol m = (MethodDeclaration.Symbol) i.next(); res[n] = new FormalParameters.Parameter[nbFields + m.arity]; ! mlsub.typing.Monotype[] args = m.getDefinition().getArgTypes(); for (int j = 0; j < args.length; j++) res[n][j] = new FormalParameters.Parameter(Monotype.create(args[j])); --- 366,370 ---- MethodDeclaration.Symbol m = (MethodDeclaration.Symbol) i.next(); res[n] = new FormalParameters.Parameter[nbFields + m.arity]; ! mlsub.typing.Monotype[] args = m.getMethodDeclaration().getArgTypes(); for (int j = 0; j < args.length; j++) res[n][j] = new FormalParameters.Parameter(Monotype.create(args[j])); Index: VarSymbol.java =================================================================== RCS file: /cvsroot/nice/Nice/src/bossa/syntax/VarSymbol.java,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -d -r1.30 -r1.31 *** VarSymbol.java 24 Jun 2003 15:28:19 -0000 1.30 --- VarSymbol.java 25 Jul 2003 16:13:10 -0000 1.31 *************** *** 25,29 **** */ ! abstract class VarSymbol extends Node implements Located { public VarSymbol(LocatedString name) --- 25,29 ---- */ ! public abstract class VarSymbol extends Node implements Located { public VarSymbol(LocatedString name) *************** *** 54,60 **** --- 54,70 ---- } + public MethodDeclaration getMethodDeclaration() + { + return null; + } + void checkSpecialRequirements(Expression[] arguments) { // Do nothing by default. + } + + public Definition getDefinition() + { + return null; } |