Update of /cvsroot/nice/Nice/src/bossa/syntax
In directory sc8-pr-cvs1:/tmp/cvs-serv12242/F:/nice/src/bossa/syntax
Modified Files:
FunSymbol.java
Log Message:
Improved some 'explain why match fails' error messages.
Index: FunSymbol.java
===================================================================
RCS file: /cvsroot/nice/Nice/src/bossa/syntax/FunSymbol.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** FunSymbol.java 23 Mar 2003 23:03:03 -0000 1.7
--- FunSymbol.java 16 Jul 2003 23:29:34 -0000 1.8
***************
*** 81,84 ****
--- 81,97 ----
String explainWhyMatchFails(Arguments arguments)
{
+ if (parameters != null && arguments.size() > parameters.size)
+ return "No method named " + name + " has as many as " +
+ arguments.size() + " parameters";
+
+ if (this instanceof MethodDeclaration.Symbol &&
+ ((MethodDeclaration.Symbol)this).getFieldAccessMethod() != null)
+ {
+ if (arguments.size() == 0)
+ return name + " is not defined";
+
+ return name + " is a field of class " + describeParameters();
+ }
+
return "Method " + name + " expects parameters (" +
describeParameters() + ")";
|