|
From: <caw...@us...> - 2007-02-02 14:57:50
|
Revision: 1907
http://svn.sourceforge.net/rubyeclipse/?rev=1907&view=rev
Author: cawilliams
Date: 2007-02-02 06:57:37 -0800 (Fri, 02 Feb 2007)
Log Message:
-----------
handle a null ListNode for args in ArgsNode
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DefaultTypeInferrer.java
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DefaultTypeInferrer.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DefaultTypeInferrer.java 2007-02-02 14:17:43 UTC (rev 1906)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DefaultTypeInferrer.java 2007-02-02 14:57:37 UTC (rev 1907)
@@ -14,6 +14,7 @@
import org.jruby.ast.GlobalVarNode;
import org.jruby.ast.InstAsgnNode;
import org.jruby.ast.InstVarNode;
+import org.jruby.ast.ListNode;
import org.jruby.ast.LocalAsgnNode;
import org.jruby.ast.LocalVarNode;
import org.jruby.ast.Node;
@@ -325,8 +326,11 @@
*/
private int getArgumentIndex(ArgsNode argsNode, String argName) {
int argNumber = 0;
- for (Iterator iter = argsNode.getArgs().iterator(); iter.hasNext();) {
- if (((ArgumentNode) iter.next()).getName().equals(argName)) {
+ ListNode args = argsNode.getArgs();
+ if (args == null) return -1; // no args. Maybe we should check arity instead?
+ for (Iterator iter = args.iterator(); iter.hasNext();) {
+ ArgumentNode arg = (ArgumentNode) iter.next();
+ if (arg.getName().equals(argName)) {
break;
}
argNumber++;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|