|
From: <dmo...@us...> - 2004-06-05 09:58:58
|
Date: Saturday June 5, 2004 @ 2:58 Author: dmoebius Update of /cvsroot/jedit/plugins/Jane/jane/lang/reflect In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22811/Jane/jane/lang/reflect Modified Files: ReflectiveClassInfo.java ReflectiveConstructorInfo.java ReflectiveFieldInfo.java ReflectiveMethodInfo.java Log Message: Another MAJOR update: - fix: many fixes for the semantic check (again!) * if semantic check is on, the parser now uses a second pass for that. Some hacks could be removed because the parser is now able to handle forward references. I consider this as a breakthrough, because lots of CodeAid/Jane problems can be resolved with that from now on. * the resolver couldn't resolve references to full specified classes such as 'java.lang.reflect.Array.newInstance(...)', as found in java/util/ArrayList.java. * the resolver couldn't find method declarations with float parameters when the caller used a float literal such as "0.0f". * the resolver couldn't find static field constants inherited from interfaces. * the resolver couldn't resolve references to members of "outer classes of outer classes". * some semantic errors such as "Method ... not found in class ..." were reported multiple times. * Jane didn't perform any semantic checking on constructor expressions. * a primitive type (int,long etc.) was assignable to a non-primitive type without semantic error. - fix: NPE when sorting methods of classes that contain static initializers. - fix: Caching was effectively nonfunctional. Now classes from libraries are cached, whereas classes from buffers are not. - fix: CodeAid's "Goto Decl" sometimes caused Jane to throw a NPE when resolving a partial expression. - fix: JavaDoc errors introduced from the last checkin. - improved option dialogs: * "General" dialog: renamed option "Only when buffer is saved" to "Only when buffer is unchanged". * "General" dialog: disable option "Only when buffer is unchanged" if option "Only on buffers" is off, as this combination doesn't make sense. * "Libraries" dialog: double-clicking a library now opens the "Edit Library" dialog * "Edit Library" dialog: put both tabs on one; removed dependencies list (was never implemented) - the unit tests for the source parser now run with full expression evaluation |