[Nice-commit] Nice/src/bossa/syntax NiceMethod.java,1.42,1.43
Brought to you by:
bonniot
From: Daniel B. <bo...@us...> - 2004-10-13 15:45:24
|
Update of /cvsroot/nice/Nice/src/bossa/syntax In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8381/src/bossa/syntax Modified Files: NiceMethod.java Log Message: Handle new implementations that cover both a new method and an existing method that new one generalizes. Index: NiceMethod.java =================================================================== RCS file: /cvsroot/nice/Nice/src/bossa/syntax/NiceMethod.java,v retrieving revision 1.42 retrieving revision 1.43 diff -C2 -d -r1.42 -r1.43 *** NiceMethod.java 12 Oct 2004 23:35:48 -0000 1.42 --- NiceMethod.java 13 Oct 2004 15:44:09 -0000 1.43 *************** *** 239,246 **** || Types.typeParameterDispatch(getType(), s.getType())) { ! // If the method is imported (so it has not computed what ! // methods it specializes), // check if the reverse relation holds with that method ! if (! d.specializesMethods() && Typing.smaller(itsDomain, ourDomain, true) && ! Types.typeParameterDispatch(s.getType(), getType())) --- 239,245 ---- || Types.typeParameterDispatch(getType(), s.getType())) { ! // If the method is imported, // check if the reverse relation holds with that method ! if (d.module != null && d.module.interfaceFile() && Typing.smaller(itsDomain, ourDomain, true) && ! Types.typeParameterDispatch(s.getType(), getType())) *************** *** 254,257 **** --- 253,259 ---- // d is a specialized version of this. + if (d instanceof NiceMethod) + ((NiceMethod) d).addSpecializedMethod(this); + // Therefore, all its implementations also belong to this. bossa.link.Alternative.addAll(d, this); |