code: public static Node moduleDepsFromDefine(Node cursor) {
  		if (cursor.getType() == Token.CALL) {
  			// The node is a function or method call
  			Node name;
  			if ((name = cursor.getFirstChild()) != null && name.getType() == Token.NAME && // named function call
  					name.getString().equals("define")) { // name is "define //$NON-NLS-1$
  				/*
  				 * This is a define() function call.  There are multiple variants and
  				 * the dependency array can be the first or second parameter.
  				 */
  				Node param = name;
  				for (int i = 0; i < 3 && param != null; i++) {
  					param = param.getNext();
  					if (param != null && param.getType() == Token.ARRAYLIT) {
  						return param;
  					}
  				}
  			}
  		}
  		return null;
  	}
docs: If the specified node represents a define() function call, then return
  the node for the dependency list, else return null.
  
  @param cursor
  the node for a define() function call
  @return the dependency list node for the define() function call, else null