Generify o.e.dltk.ruby.core.
Module src only. Haven't touched jruby at all.
Change-Id: I608499116d21f2b3dd3630bf60e41aa273fd9301
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyArrayExpression.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyArrayExpression.java
index 99588b6..b963128 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyArrayExpression.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyArrayExpression.java
@@ -45,9 +45,9 @@
public void traverse(ASTVisitor visitor) throws Exception {
if (visitor.visit(this)) {
if (this.getChilds() != null) {
- for (Iterator iter = this.getChilds().iterator(); iter
+ for (Iterator<ASTNode> iter = this.getChilds().iterator(); iter
.hasNext();) {
- ASTNode s = (ASTNode) iter.next();
+ ASTNode s = iter.next();
s.traverse(visitor);
}
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyBlock.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyBlock.java
index bc8aaac..f64ce2f 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyBlock.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyBlock.java
@@ -18,7 +18,7 @@
public class RubyBlock extends ASTNode {
- private Map vars = new HashMap();
+ private Map<ASTNode, ASTNode> vars = new HashMap<ASTNode, ASTNode>();
private ASTNode asterixParameter = null;
private ASTNode body;
@@ -39,7 +39,7 @@
super(start, end);
}
- public Set getVars() {
+ public Set<ASTNode> getVars() {
return vars.keySet();
}
@@ -67,15 +67,15 @@
@Override
public void traverse(ASTVisitor visitor) throws Exception {
if (visitor.visit(this)) {
- for (Iterator iterator = vars.keySet().iterator(); iterator
+ for (Iterator<ASTNode> iterator = vars.keySet().iterator(); iterator
.hasNext();) {
- ASTNode var = (ASTNode) iterator.next();
+ ASTNode var = iterator.next();
if (var != null)
var.traverse(visitor);
}
- for (Iterator iterator = vars.values().iterator(); iterator
+ for (Iterator<ASTNode> iterator = vars.values().iterator(); iterator
.hasNext();) {
- ASTNode var = (ASTNode) iterator.next();
+ ASTNode var = iterator.next();
if (var != null)
var.traverse(visitor);
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyCallArgumentsList.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyCallArgumentsList.java
index 51f81f3..a4a45c7 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyCallArgumentsList.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyCallArgumentsList.java
@@ -1,11 +1,10 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2016 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
-
*******************************************************************************/
package org.eclipse.dltk.ruby.ast;
@@ -23,11 +22,11 @@
}
public void autosetOffsets() {
- final List expressions = this.getChilds();
+ final List<ASTNode> expressions = this.getChilds();
final int size = expressions.size();
if (size > 0) {
- final ASTNode first = (ASTNode) expressions.get(0);
- final ASTNode last = (ASTNode) expressions.get(size - 1);
+ final ASTNode first = expressions.get(0);
+ final ASTNode last = expressions.get(size - 1);
this.setStart(first.sourceStart());
this.setEnd(last.sourceEnd());
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyCaseStatement.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyCaseStatement.java
index 08b04fc..ebe0603 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyCaseStatement.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyCaseStatement.java
@@ -17,7 +17,7 @@
public class RubyCaseStatement extends ASTNode {
private ASTNode target;
- private List whens;
+ private List<RubyWhenStatement> whens;
private ASTNode elseWhen;
public RubyCaseStatement(int start, int end) {
@@ -32,11 +32,11 @@
this.target = target;
}
- public List getWhens() {
+ public List<RubyWhenStatement> getWhens() {
return whens;
}
- public void setWhens(List whens) {
+ public void setWhens(List<RubyWhenStatement> whens) {
this.whens = whens;
}
@@ -58,9 +58,9 @@
this.elseWhen.traverse( visitor );
}
if (this.whens != null) {
- for (Iterator iterator = this.whens.iterator(); iterator
+ for (Iterator<RubyWhenStatement> iterator = this.whens.iterator(); iterator
.hasNext();) {
- ASTNode node = (ASTNode) iterator.next();
+ ASTNode node = iterator.next();
if (node != null)
node.traverse(visitor);
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyClassDeclaration.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyClassDeclaration.java
index 413f089..62b5558 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyClassDeclaration.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyClassDeclaration.java
@@ -18,7 +18,7 @@
public class RubyClassDeclaration extends RubyModuleDeclaration {
private static final String OBJECT = "Object"; //$NON-NLS-1$
- private static final List OBJECT_SUPER_CLASS = Collections
+ private static final List<String> OBJECT_SUPER_CLASS = Collections
.singletonList(OBJECT);
public RubyClassDeclaration(ASTNode superClass, ASTNode name, Block body,
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyDynamicBackquoteStringExpression.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyDynamicBackquoteStringExpression.java
index f778e3d..e6a85a7 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyDynamicBackquoteStringExpression.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyDynamicBackquoteStringExpression.java
@@ -1,22 +1,22 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2016 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
-
*******************************************************************************/
package org.eclipse.dltk.ruby.ast;
import java.util.ArrayList;
import org.eclipse.dltk.ast.ASTListNode;
+import org.eclipse.dltk.ast.ASTNode;
public class RubyDynamicBackquoteStringExpression extends ASTListNode {
public RubyDynamicBackquoteStringExpression(int start, int end) {
- super(start, end, new ArrayList());
+ super(start, end, new ArrayList<ASTNode>());
}
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyExceptionList.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyExceptionList.java
index fa66a6f..93ae6ba 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyExceptionList.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyExceptionList.java
@@ -18,7 +18,7 @@
public class RubyExceptionList extends ASTNode {
- private final List args = new ArrayList ();
+ private final List<ASTNode> args = new ArrayList<ASTNode> ();
private VariableReference var;
public RubyExceptionList(int start, int end, VariableReference var) {
@@ -30,7 +30,7 @@
args.add(e);
}
- public List getArgs () {
+ public List<ASTNode> getArgs () {
return args;
}
@@ -53,8 +53,9 @@
if (var != null)
var.traverse(visitor);
if (args != null) {
- for (Iterator iterator = args.iterator(); iterator
- .hasNext();) { ASTNode a = (ASTNode) iterator.next();
+ for (Iterator<ASTNode> iterator = args.iterator(); iterator
+ .hasNext();) {
+ ASTNode a = iterator.next();
if (a != null)
a.traverse(visitor);
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyMultipleAssignmentStatement.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyMultipleAssignmentStatement.java
index f8009d6..685318e 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyMultipleAssignmentStatement.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyMultipleAssignmentStatement.java
@@ -18,8 +18,8 @@
public class RubyMultipleAssignmentStatement extends ASTNode {
- private List lhs = new ArrayList();
- private List rhs = new ArrayList();
+ private List<ASTNode> lhs = new ArrayList<ASTNode>();
+ private List<ASTNode> rhs = new ArrayList<ASTNode>();
private ASTNode leftAsterix;
private ASTNode rightAsterix;
@@ -44,11 +44,11 @@
rhs.add(s);
}
- public List getLhs() {
+ public List<ASTNode> getLhs() {
return lhs;
}
- public List getRhs() {
+ public List<ASTNode> getRhs() {
return rhs;
}
@@ -91,14 +91,14 @@
if (this.rightAsterix != null)
rightAsterix.traverse(visitor);
if (this.lhs != null)
- for (Iterator iterator = this.lhs.iterator(); iterator
- .hasNext();) { ASTNode v = (ASTNode) iterator.next();
+ for (Iterator<ASTNode> iterator = this.lhs.iterator(); iterator
+ .hasNext();) { ASTNode v = iterator.next();
if (v != null)
v.traverse(visitor);
}
if (this.rhs != null)
- for (Iterator iterator = this.rhs.iterator(); iterator
- .hasNext();) { ASTNode v = (ASTNode) iterator.next();
+ for (Iterator<ASTNode> iterator = this.rhs.iterator(); iterator
+ .hasNext();) { ASTNode v = iterator.next();
if (v != null)
v.traverse(visitor);
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubySingletonMethodDeclaration.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubySingletonMethodDeclaration.java
index e825666..408c954 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubySingletonMethodDeclaration.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubySingletonMethodDeclaration.java
@@ -39,9 +39,9 @@
receiver.traverse(visitor);
// Arguments
- Iterator it = arguments.iterator();
+ Iterator<Argument> it = arguments.iterator();
while (it.hasNext()) {
- Argument arg = (Argument) it.next();
+ Argument arg = it.next();
arg.traverse(visitor);
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyUndefStatement.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyUndefStatement.java
index 781bf73..aa531cd 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyUndefStatement.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyUndefStatement.java
@@ -17,9 +17,9 @@
public class RubyUndefStatement extends ASTNode {
- private final List parameters = new ArrayList ();
+ private final List<String> parameters = new ArrayList<String> ();
- public List getParameters() {
+ public List<String> getParameters() {
return parameters;
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyWhenStatement.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyWhenStatement.java
index ca246cb..71617f2 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyWhenStatement.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/ast/RubyWhenStatement.java
@@ -17,18 +17,18 @@
public class RubyWhenStatement extends ASTNode {
- private List expressions;
+ private List<ASTNode> expressions;
private ASTNode body;
public RubyWhenStatement(int start, int end) {
super(start, end);
}
- public List getExpressions() {
+ public List<ASTNode> getExpressions() {
return expressions;
}
- public void setExpressions(List expressions) {
+ public void setExpressions(List<ASTNode> expressions) {
this.expressions = expressions;
}
@@ -52,9 +52,9 @@
public void traverse(ASTVisitor visitor) throws Exception {
if (visitor.visit(this)) {
if (expressions != null) {
- for (Iterator iterator = expressions.iterator(); iterator
+ for (Iterator<ASTNode> iterator = expressions.iterator(); iterator
.hasNext();) {
- ASTNode node = (ASTNode) iterator.next();
+ ASTNode node = iterator.next();
node.traverse(visitor);
}
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/ParentshipBuildingVisitor.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/ParentshipBuildingVisitor.java
index 0acaa62..4a5b7c2 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/ParentshipBuildingVisitor.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/ParentshipBuildingVisitor.java
@@ -18,16 +18,16 @@
public class ParentshipBuildingVisitor extends ASTVisitor {
- private final Map parents = new HashMap();
+ private final Map<ASTNode, ASTNode> parents = new HashMap<ASTNode, ASTNode>();
- private final ArrayList stack = new ArrayList();
+ private final ArrayList<ASTNode> stack = new ArrayList<ASTNode>();
private void push(ASTNode node) {
stack.add(node);
}
private ASTNode peek() {
- return (ASTNode) stack.get(stack.size() - 1);
+ return stack.get(stack.size() - 1);
}
private void pop() {
@@ -48,7 +48,7 @@
pop();
}
- public Map getParents() {
+ public Map<ASTNode, ASTNode> getParents() {
return parents;
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/PredefinedVariables.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/PredefinedVariables.java
index af0d11c..8765b9f 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/PredefinedVariables.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/PredefinedVariables.java
@@ -1,11 +1,10 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2016 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
-
*******************************************************************************/
package org.eclipse.dltk.ruby.core;
@@ -30,8 +29,8 @@
private static final String DOC = "doc"; //$NON-NLS-1$
- static Map parseProperties(Properties props, String[] postfixes) {
- Map entries = new HashMap();
+ static Map<String, Map<String, String>> parseProperties(Properties props, String[] postfixes) {
+ Map<String, Map<String, String>> entries = new HashMap<String, Map<String, String>>();
Iterator it = props.keySet().iterator();
while (it.hasNext()) {
@@ -44,14 +43,14 @@
if (index != -1) {
String name = key.substring(0, index);
- Map entry = (Map) entries.get(name);
+ Map<String, String> entry = entries.get(name);
if (entry == null) {
- entry = new HashMap();
+ entry = new HashMap<String, String>();
entries.put(name, entry);
}
- entry.put(postfix, props.get(key));
+ entry.put(postfix, (String) props.get(key));
}
}
}
@@ -59,15 +58,15 @@
return entries;
}
- private static Map nameToTypeMap = new HashMap();
- private static Map nameToDocMap = new HashMap();
+ private static Map<String, String> nameToTypeMap = new HashMap<String, String>();
+ private static Map<String, String> nameToDocMap = new HashMap<String, String>();
public static String getTypeOf(String name) {
- return (String) nameToDocMap.get(name);
+ return nameToDocMap.get(name);
}
public static String getDocOf(String name) {
- return (String) nameToDocMap.get(name);
+ return nameToDocMap.get(name);
}
static {
@@ -80,17 +79,17 @@
Properties props = new Properties();
props.load(input);
- Map parsedProps = parseProperties(props, new String[] { NAME,
+ Map<String, Map<String, String>> parsedProps = parseProperties(props, new String[] { NAME,
TYPE, DOC });
- Iterator it = parsedProps.keySet().iterator();
+ Iterator<String> it = parsedProps.keySet().iterator();
while (it.hasNext()) {
- Object key = it.next();
- Map entry = (Map) parsedProps.get(key);
+ String key = it.next();
+ Map<String, String> entry = parsedProps.get(key);
- String name = (String) entry.get(NAME);
- String type = (String) entry.get(TYPE);
- String doc = (String) entry.get(DOC);
+ String name = entry.get(NAME);
+ String type = entry.get(TYPE);
+ String doc = entry.get(DOC);
nameToTypeMap.put(name, type);
nameToDocMap.put(name, doc);
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/IElementCriteria.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/IElementCriteria.java
index 053e315..bf893e5 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/IElementCriteria.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/IElementCriteria.java
@@ -1,11 +1,10 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2016 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
-
*******************************************************************************/
package org.eclipse.dltk.ruby.core.model;
@@ -26,7 +25,7 @@
return kind;
}
- protected static final Map elementKindsToCriterias = new HashMap();
+ protected static final Map<IElementKind, ByKind> elementKindsToCriterias = new HashMap<IElementKind, ByKind>();
private static void add(IElementKind kind) {
elementKindsToCriterias.put(kind, new ByKind(kind));
@@ -47,7 +46,7 @@
}
public static ByKind byElementKind(IElementKind kind) {
- return (ByKind) elementKindsToCriterias.get(kind);
+ return elementKindsToCriterias.get(kind);
}
public static final IElementCriteria MODEL = byElementKind(IElementKind.MODEL);
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/IElementKind.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/IElementKind.java
index 458f593..a339a06 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/IElementKind.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/IElementKind.java
@@ -1,11 +1,10 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2016 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
-
*******************************************************************************/
package org.eclipse.dltk.ruby.core.model;
@@ -116,7 +115,7 @@
return kind.getId();
}
- protected static final Map variableKindsToElementKinds = new HashMap();
+ protected static final Map<VariableKind, Variable> variableKindsToElementKinds = new HashMap<VariableKind, Variable>();
static {
variableKindsToElementKinds.put(VariableKind.LOCAL, new Variable(VariableKind.LOCAL));
@@ -128,7 +127,7 @@
}
public static Variable byVariableKind(VariableKind kind) {
- return (Variable) variableKindsToElementKinds.get(kind);
+ return variableKindsToElementKinds.get(kind);
}
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/internal/Model.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/internal/Model.java
index 8c4f7b0..3318762 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/internal/Model.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/core/model/internal/Model.java
@@ -1,11 +1,10 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2016 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
-
*******************************************************************************/
package org.eclipse.dltk.ruby.core.model.internal;
@@ -73,12 +72,12 @@
return sourceModules.toArray(new ISourceModule[sourceModules.size()]);
}
- private void addModules(Collection sourceModules, IModelElement[] children)
+ private void addModules(Collection<ISourceModule> sourceModules, IModelElement[] children)
throws ModelException {
for (int i = 0; i < children.length; i++) {
IModelElement element = children[i];
if (element instanceof ISourceModule)
- sourceModules.add(element);
+ sourceModules.add((ISourceModule) element);
else if (element instanceof IParent)
addModules(sourceModules, ((IParent) element).getChildren());
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/callhierarchy/RubyCallProcessor.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/callhierarchy/RubyCallProcessor.java
index f70134c..3fbfb74 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/callhierarchy/RubyCallProcessor.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/callhierarchy/RubyCallProcessor.java
@@ -30,9 +30,9 @@
private SearchEngine searchEngine = new SearchEngine();
- public Map process(final IModelElement parent, IModelElement element,
+ public Map<SimpleReference, IModelElement> process(final IModelElement parent, IModelElement element,
IDLTKSearchScope scope, IProgressMonitor monitor) {
- final Map elements = new HashMap();
+ final Map<SimpleReference, IModelElement> elements = new HashMap<SimpleReference, IModelElement>();
SearchRequestor requestor = new SearchRequestor() {
@Override
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/callhierarchy/RubyCalleeProcessor.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/callhierarchy/RubyCalleeProcessor.java
index 2579f2a..1f4e400 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/callhierarchy/RubyCalleeProcessor.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/callhierarchy/RubyCalleeProcessor.java
@@ -36,7 +36,7 @@
protected static int EXACT_RULE = SearchPattern.R_EXACT_MATCH
| SearchPattern.R_CASE_SENSITIVE;
- private Map fSearchResults = new HashMap();
+ private Map<SimpleReference, IMethod[]> fSearchResults = new HashMap<SimpleReference, IMethod[]>();
private IMethod method;
@@ -69,7 +69,7 @@
}
- public Map doOperation() {
+ public Map<SimpleReference, IMethod[]> doOperation() {
CaleeSourceElementRequestor requestor = new CaleeSourceElementRequestor();
ISourceElementParser parser = null;
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/ProjectTypeComparator.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/ProjectTypeComparator.java
index 324728f..8eeedf9 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/ProjectTypeComparator.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/ProjectTypeComparator.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2008 xored software, Inc.
+ * Copyright (c) 2008, 2016 xored software, Inc.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -25,7 +25,7 @@
* <li>all other types should go last
* </ol>
*/
-public class ProjectTypeComparator implements Comparator {
+public class ProjectTypeComparator implements Comparator<IType> {
private final ISourceModule module;
@@ -36,9 +36,7 @@
this.module = module;
}
- public int compare(Object o1, Object o2) {
- final IType type1 = (IType) o1;
- final IType type2 = (IType) o2;
+ public int compare(IType type1, IType type2) {
if (type1.getParent() instanceof ISourceModule
&& type2.getParent() instanceof ISourceModule) {
final ISourceModule module1 = (ISourceModule) type1.getParent();
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/RubyCompletionEngine.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/RubyCompletionEngine.java
index ddf8c00..ad65d86 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/RubyCompletionEngine.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/RubyCompletionEngine.java
@@ -105,7 +105,7 @@
private DLTKTypeInferenceEngine inferencer;
private ISourceParser parser = null;
private RubyMixinModel mixinModel;
- private HashSet completedNames = new HashSet();
+ private HashSet<String> completedNames = new HashSet<String>();
private WeakHashSet intresting = new WeakHashSet();
private ASTNode completionNode;
@@ -500,7 +500,7 @@
public void flush() {
if (group.size() > 0) {
RubyMixinMethod[] mixinMethods = group.toArray(new RubyMixinMethod[group.size()]);
- final List methods = RubyModelUtils.getAllSourceMethods(
+ final List<IMethod> methods = RubyModelUtils.getAllSourceMethods(
mixinMethods, klass);
int skew = 0;
if (klass.getKey().equals(lastParent)) {
@@ -510,8 +510,7 @@
skew = 1;
}
for (int j = 0, size = methods.size(); j < size; j++) {
- reportMethod((IMethod) methods.get(j), RELEVANCE_METHODS
- + skew);
+ reportMethod(methods.get(j), RELEVANCE_METHODS + skew);
}
group.clear();
}
@@ -597,9 +596,9 @@
for (int i = wayToNode.length - 1; i > 0; i--) {
if (wayToNode[i] instanceof RubyBlock) {
RubyBlock rubyBlock = (RubyBlock) wayToNode[i];
- Set vars = rubyBlock.getVars();
- for (Iterator iterator = vars.iterator(); iterator.hasNext();) {
- ASTNode n = (ASTNode) iterator.next();
+ Set<ASTNode> vars = rubyBlock.getVars();
+ for (Iterator<ASTNode> iterator = vars.iterator(); iterator.hasNext();) {
+ ASTNode n = iterator.next();
if (n instanceof RubyDAssgnExpression) {
RubyDAssgnExpression rd = (RubyDAssgnExpression) n;
if (rd.getName().startsWith(prefix)) {
@@ -633,9 +632,9 @@
if (mixinElement == null) {
return;
}
- List types = new ArrayList();
- List methods = new ArrayList();
- List fields = new ArrayList();
+ List<IType> types = new ArrayList<IType>();
+ List<IMethod> methods = new ArrayList<IMethod>();
+ List<IField> fields = new ArrayList<IField>();
IMixinElement[] children = mixinElement.getChildren();
for (int i = 0; i < children.length; i++) {
Object[] infos = children[i].getAllObjects();
@@ -671,18 +670,18 @@
}
}
- for (Iterator iterator = fields.iterator(); iterator.hasNext();) {
- IField t = (IField) iterator.next();
+ for (Iterator<IField> iterator = fields.iterator(); iterator.hasNext();) {
+ IField t = iterator.next();
reportField(t, RELEVANCE_VARIABLES);
}
- for (Iterator iterator = types.iterator(); iterator.hasNext();) {
- IType t = (IType) iterator.next();
+ for (Iterator<IType> iterator = types.iterator(); iterator.hasNext();) {
+ IType t = iterator.next();
reportType(t, RELEVANCE_TYPE);
}
- for (Iterator iterator = methods.iterator(); iterator.hasNext();) {
- IMethod t = (IMethod) iterator.next();
+ for (Iterator<IMethod> iterator = methods.iterator(); iterator.hasNext();) {
+ IMethod t = iterator.next();
reportMethod(t, RELEVANCE_METHODS);
}
@@ -726,7 +725,7 @@
IType[] types = RubyTypeInferencingUtils.getAllTypes(currentModule,
prefix);
Arrays.sort(types, new ProjectTypeComparator(currentModule));
- final Set names = new HashSet();
+ final Set<String> names = new HashSet<String>();
for (int i = 0; i < types.length; i++) {
final String elementName = types[i].getElementName();
if (names.add(elementName)) {
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/RubySelectionEngine.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/RubySelectionEngine.java
index e43d77e..3da874e 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/RubySelectionEngine.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/core/codeassist/RubySelectionEngine.java
@@ -455,7 +455,7 @@
String methodName = parentCall.getName();
ASTNode receiver = parentCall.getReceiver();
- final List availableMethods = new ArrayList();
+ final List<IModelElement> availableMethods = new ArrayList<IModelElement>();
if (receiver == null) {
IEvaluatedType type = RubyTypeInferencingUtils.determineSelfClass(
@@ -504,7 +504,7 @@
}
private static void searchMethodDeclarations(IScriptProject project,
- String methodName, final List availableMethods) {
+ String methodName, final List<IModelElement> availableMethods) {
final SearchRequestor requestor = new SearchRequestor() {
@Override
@@ -541,7 +541,7 @@
* @param src
* @param dest
*/
- private static void addArrayToCollection(IMember[] src, Collection dest) {
+ private static void addArrayToCollection(IMember[] src, Collection<IModelElement> dest) {
if (src != null) {
for (int i = 0, size = src.length; i < size; ++i) {
dest.add(src[i]);
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/RubySourceFixer.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/RubySourceFixer.java
index 9868587..2f1686a 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/RubySourceFixer.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/RubySourceFixer.java
@@ -120,9 +120,9 @@
int en = 0;
int n_st = 0;
int n_en = 0;
- for (Iterator iterator = fixPositions.iterator(); iterator
+ for (Iterator<Integer> iterator = fixPositions.iterator(); iterator
.hasNext();) {
- Integer pos = (Integer) iterator.next();
+ Integer pos = iterator.next();
int fixPos = pos.intValue();
// starts
if (node.sourceStart() > fixPos) {
@@ -158,7 +158,7 @@
}
}
- public static Set FIXUP_NAMES = new HashSet();
+ public static Set<String> FIXUP_NAMES = new HashSet<String>();
{
FIXUP_NAMES.add(missingKey);
FIXUP_NAMES.add(missingValue);
@@ -169,7 +169,7 @@
FIXUP_NAMES.add(missingName4a);
}
- private final List fixPositions = new ArrayList();
+ private final List<Integer> fixPositions = new ArrayList<Integer>();
private String fixBrokenThings(Pattern pattern, String content,
String replacement, int delta) {
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/mixin/RubyMixinBuildVisitor.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/mixin/RubyMixinBuildVisitor.java
index 1125639..f164ca4 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/mixin/RubyMixinBuildVisitor.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/mixin/RubyMixinBuildVisitor.java
@@ -62,7 +62,7 @@
private final ISourceModule sourceModule;
private final boolean moduleAvailable;
private final IMixinRequestor requestor;
- private final HashSet allReportedKeys = new HashSet();
+ private final HashSet<String> allReportedKeys = new HashSet<String>();
private abstract class Scope {
private final ASTNode node;
@@ -373,7 +373,7 @@
}
- private Stack scopes = new Stack();
+ private Stack<Scope> scopes = new Stack<Scope>();
private final ModuleDeclaration module;
public RubyMixinBuildVisitor(ModuleDeclaration module,
@@ -387,7 +387,7 @@
}
private Scope peekScope() {
- return (Scope) scopes.peek();
+ return scopes.peek();
}
@Override
@@ -556,9 +556,9 @@
metaScope = null;
}
RubyAttributeHandler info = new RubyAttributeHandler(call);
- List readers = info.getReaders();
- for (Iterator iterator = readers.iterator(); iterator.hasNext();) {
- ASTNode n = (ASTNode) iterator.next();
+ List<ASTNode> readers = info.getReaders();
+ for (Iterator<ASTNode> iterator = readers.iterator(); iterator.hasNext();) {
+ ASTNode n = iterator.next();
String attr = RubyAttributeHandler.getText(n);
if (attr == null)
continue;
@@ -573,8 +573,8 @@
scopes.pop();
}
}
- List writers = info.getWriters();
- for (Iterator iterator = writers.iterator(); iterator.hasNext();) {
+ List<?> writers = info.getWriters();
+ for (Iterator<?> iterator = writers.iterator(); iterator.hasNext();) {
ASTNode n = (ASTNode) iterator.next();
String attr = RubyAttributeHandler.getText(n);
if (attr == null)
@@ -600,7 +600,7 @@
&& call.getArgs().getChilds().size() > 0) {
RubyCallArgument argNode;
String name;
- for (Iterator iterator = call.getArgs().getChilds().iterator(); iterator
+ for (Iterator<?> iterator = call.getArgs().getChilds().iterator(); iterator
.hasNext();) {
argNode = (RubyCallArgument) iterator.next();
name = null;
@@ -740,7 +740,7 @@
for (int i = size - 1; i >= 0; i--) {
String possibleKey = ""; //$NON-NLS-1$
if (i > 0) {
- Scope s = (Scope) this.scopes.get(i);
+ Scope s = this.scopes.get(i);
possibleKey = s.getKey() + SEPARATOR
+ constantReference.getName();
} else
@@ -756,7 +756,7 @@
@Override
public void endvisitGeneral(ASTNode node) throws Exception {
- Scope scope = (Scope) scopes.peek();
+ Scope scope = scopes.peek();
if (scope.getNode() == node) {
scopes.pop();
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/mixin/RubyMixinClass.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/mixin/RubyMixinClass.java
index 27b12a9..6265771 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/mixin/RubyMixinClass.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/mixin/RubyMixinClass.java
@@ -141,7 +141,7 @@
}
}
String key;
- Set includeSet = new HashSet();
+ Set<String> includeSet = new HashSet<String>();
RubyMixinClass[] includedClasses = model.createRubyClass(
new RubyClassType("Object%")).getIncluded(); //$NON-NLS-1$
for (int cnt = 0, max = includedClasses.length; cnt < max; cnt++) {
@@ -173,7 +173,7 @@
if (mixinElement == null)
return new RubyMixinClass[0];
List<RubyMixinClass> result = new ArrayList<RubyMixinClass>();
- HashSet names = new HashSet();
+ HashSet<String> names = new HashSet<String>();
Object[] allObjects = mixinElement.getAllObjects();
for (int i = 0; i < allObjects.length; i++) {
RubyMixinElementInfo info = (RubyMixinElementInfo) allObjects[i];
@@ -208,7 +208,7 @@
if (mixinElement == null)
return new RubyMixinClass[0];
List<RubyMixinClass> result = new ArrayList<RubyMixinClass>();
- HashSet names = new HashSet();
+ HashSet<String> names = new HashSet<String>();
Object[] allObjects = mixinElement.getAllObjects();
for (int i = 0; i < allObjects.length; i++) {
RubyMixinElementInfo info = (RubyMixinElementInfo) allObjects[i];
@@ -232,11 +232,11 @@
public void findMethods(IMixinSearchPattern pattern,
IMixinSearchRequestor requestor) {
- findMethods(pattern, requestor, new HashSet());
+ findMethods(pattern, requestor, new HashSet<String>());
}
protected void findMethods(IMixinSearchPattern pattern,
- IMixinSearchRequestor requestor, Set processedKeys) {
+ IMixinSearchRequestor requestor, Set<String> processedKeys) {
if (!processedKeys.add(key)) {
return;
}
@@ -295,7 +295,7 @@
public RubyMixinMethod[] findMethods(IMixinSearchPattern pattern) {
final List<RubyMixinMethod> result = new ArrayList<RubyMixinMethod>();
this.findMethods(pattern, new IMixinSearchRequestor() {
- final Set names = new HashSet();
+ final Set<String> names = new HashSet<String>();
public void acceptResult(IRubyMixinElement element) {
if (element instanceof RubyMixinMethod) {
@@ -306,15 +306,15 @@
}
}
- }, new HashSet());
+ }, new HashSet<String>());
return result.toArray(new RubyMixinMethod[result.size()]);
}
public RubyMixinMethod getMethod(String name) {
- return getMethod(name, new HashSet());
+ return getMethod(name, new HashSet<String>());
}
- protected RubyMixinMethod getMethod(String name, Set processedKeys) {
+ protected RubyMixinMethod getMethod(String name, Set<String> processedKeys) {
if (!processedKeys.add(key)) {
return null;
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/visitors/RubyAttributeHandler.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/visitors/RubyAttributeHandler.java
index f0ab09a..f59eb46 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/visitors/RubyAttributeHandler.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/visitors/RubyAttributeHandler.java
@@ -37,11 +37,11 @@
private static final String CLASS_INHERITABLE_READER = "class_inheritable_reader"; //$NON-NLS-1$
private static final String CLASS_INHERITABLE_WRITER = "class_inheritable_writer"; //$NON-NLS-1$
- private static final Set/*<String>*/ ATTRIBUTE_CREATION_NAMES = new HashSet();
- private static final Set/*<String>*/ ATTRIBUTE_ACCESSOR_NAMES = new HashSet();
- private static final Set/*<String>*/ ATTRIBUTE_READER_NAMES = new HashSet();
- private static final Set/*<String>*/ ATTRIBUTE_WRITER_NAMES = new HashSet();
- private static final Set/*<String>*/ META_ATTRIBUTE_CREATION_NAMES = new HashSet();
+ private static final Set<String> ATTRIBUTE_CREATION_NAMES = new HashSet<String>();
+ private static final Set<String> ATTRIBUTE_ACCESSOR_NAMES = new HashSet<String>();
+ private static final Set<String> ATTRIBUTE_READER_NAMES = new HashSet<String>();
+ private static final Set<String> ATTRIBUTE_WRITER_NAMES = new HashSet<String>();
+ private static final Set<String> META_ATTRIBUTE_CREATION_NAMES = new HashSet<String>();
static {
ATTRIBUTE_CREATION_NAMES.add(ATTR);
ATTRIBUTE_CREATION_NAMES.add(ATTR_ACCESSOR);
@@ -94,8 +94,8 @@
}
private final CallExpression call;
- private List readers;
- private List writers;
+ private List<ASTNode> readers;
+ private List<ASTNode> writers;
public RubyAttributeHandler(CallExpression call) {
super();
@@ -103,16 +103,16 @@
throw new IllegalArgumentException();
}
this.call = call;
- readers = new ArrayList();
- writers = new ArrayList();
+ readers = new ArrayList<ASTNode>();
+ writers = new ArrayList<ASTNode>();
init();
}
private void init() {
String name = call.getName();
CallArgumentsList list = call.getArgs();
- List expr = list.getChilds();
- Iterator it = expr.iterator();
+ List<ASTNode> expr = list.getChilds();
+ Iterator<ASTNode> it = expr.iterator();
boolean create_reader = false;
boolean create_writer = false;
if (ATTRIBUTE_READER_NAMES.contains(name)) {
@@ -125,7 +125,7 @@
} else if (name.equals(ATTR)) {
create_reader = true;
if (expr.size() > 0) {
- ASTNode node = (ASTNode) expr.get(expr.size() - 1);
+ ASTNode node = expr.get(expr.size() - 1);
if (node instanceof RubyCallArgument) {
node = ((RubyCallArgument) node).getValue();
}
@@ -137,7 +137,7 @@
}
while (it.hasNext()) {
- ASTNode sr = (ASTNode) it.next();
+ ASTNode sr = it.next();
if (!(sr instanceof RubyCallArgument)) {
continue;
}
@@ -155,11 +155,11 @@
}
}
- public List getReaders() {
+ public List<ASTNode> getReaders() {
return readers;
}
- public List getWriters() {
+ public List<ASTNode> getWriters() {
return writers;
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/visitors/RubySourceElementRequestor.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/visitors/RubySourceElementRequestor.java
index 86fc109..0e2597a 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/visitors/RubySourceElementRequestor.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parser/visitors/RubySourceElementRequestor.java
@@ -114,23 +114,23 @@
}
}
- private List fNotAddedFields = new ArrayList(); // Used to prehold fields if
+ private List<TypeField> fNotAddedFields = new ArrayList<TypeField>(); // Used to prehold fields if
// adding in methods.
- private Map fTypeVariables = new HashMap(); // Used to depermine duplicate
+ private Map<ASTNode, List<String>> fTypeVariables = new HashMap<ASTNode, List<String>>(); // Used to depermine duplicate
// names, ASTNode -> List of
// variables
private boolean canAddVariables(ASTNode type, String name) {
if (fTypeVariables.containsKey(type)) {
- List variables = (List) fTypeVariables.get(type);
+ List<String> variables = fTypeVariables.get(type);
if (variables.contains(name)) {
return false;
}
variables.add(name);
return true;
} else {
- List variables = new ArrayList();
+ List<String> variables = new ArrayList<String>();
variables.add(name);
fTypeVariables.put(type, variables);
return true;
@@ -197,10 +197,10 @@
System.out.println("==> Method: " + method.getName()); //$NON-NLS-1$
}
- Iterator it = fNotAddedFields.iterator();
+ Iterator<TypeField> it = fNotAddedFields.iterator();
while (it.hasNext()) {
- TypeField field = (TypeField) it.next();
+ TypeField field = it.next();
if (canAddVariables(field.getASTNode(), field.getName())) {
PositionInformation pos = field.getPosition();
@@ -264,9 +264,9 @@
if (RubyAttributeHandler.isAttributeCreationCall(callExpression)) {
RubyAttributeHandler info = new RubyAttributeHandler(
callExpression);
- List readers = info.getReaders();
- for (Iterator iterator = readers.iterator(); iterator.hasNext();) {
- ASTNode n = (ASTNode) iterator.next();
+ List<ASTNode> readers = info.getReaders();
+ for (Iterator<ASTNode> iterator = readers.iterator(); iterator.hasNext();) {
+ ASTNode n = iterator.next();
String attr = RubyAttributeHandler.getText(n);
ISourceElementRequestor.MethodInfo mi = new ISourceElementRequestor.MethodInfo();
mi.name = attr;
@@ -278,9 +278,9 @@
fRequestor.enterMethod(mi);
fRequestor.exitMethod(n.sourceEnd());
}
- List writers = info.getWriters();
- for (Iterator iterator = writers.iterator(); iterator.hasNext();) {
- ASTNode n = (ASTNode) iterator.next();
+ List<ASTNode> writers = info.getWriters();
+ for (Iterator<ASTNode> iterator = writers.iterator(); iterator.hasNext();) {
+ ASTNode n = iterator.next();
String attr = RubyAttributeHandler.getText(n);
ISourceElementRequestor.MethodInfo mi = new ISourceElementRequestor.MethodInfo();
mi.parameterNames = new String[] { VALUE };
@@ -298,11 +298,11 @@
RubyHashPairExpression hashNode;
String oldName = ""; //$NON-NLS-1$
String dName;
- for (Iterator iterator = callExpression.getArgs().getChilds()
+ for (Iterator<ASTNode> iterator = callExpression.getArgs().getChilds()
.iterator(); iterator.hasNext();) {
argNode = (RubyCallArgument) iterator.next();
if (argNode.getValue() instanceof RubyHashExpression) {
- for (Iterator iterator2 = argNode.getValue()
+ for (Iterator<ASTNode> iterator2 = argNode.getValue()
.getChilds().iterator(); iterator2.hasNext();) {
hashNode = (RubyHashPairExpression) iterator2
.next();
@@ -316,7 +316,7 @@
}
}
}
- for (Iterator iterator = callExpression.getArgs().getChilds()
+ for (Iterator<ASTNode> iterator = callExpression.getArgs().getChilds()
.iterator(); iterator.hasNext();) {
argNode = (RubyCallArgument) iterator.next();
dName = null;
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parsers/jruby/RubyASTBuildVisitor.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parsers/jruby/RubyASTBuildVisitor.java
index f4c477f..d4745b4 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parsers/jruby/RubyASTBuildVisitor.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/internal/parsers/jruby/RubyASTBuildVisitor.java
@@ -229,17 +229,17 @@
}
protected static class CollectingState implements IState {
- private final ArrayList list;
+ private final ArrayList<ASTNode> list;
public CollectingState() {
- list = new ArrayList();
+ list = new ArrayList<ASTNode>();
}
public void add(ASTNode s) {
list.add(s);
}
- public ArrayList getList() {
+ public ArrayList<ASTNode> getList() {
return list;
}
@@ -363,10 +363,10 @@
}
private static class StateManager {
- private LinkedList states = new LinkedList();
+ private LinkedList<IState> states = new LinkedList<IState>();
public IState peek() {
- return (IState) states.getLast();
+ return states.getLast();
}
public void pop() {
@@ -382,9 +382,9 @@
if (state instanceof ClassLikeState) {
return true;
} else if (states.size() > 1) {
- ListIterator i = states.listIterator(states.size());
+ ListIterator<IState> i = states.listIterator(states.size());
while (i.hasPrevious()) {
- Object s = i.previous();
+ IState s = i.previous();
if (s instanceof ClassLikeState) {
return true;
}
@@ -398,9 +398,9 @@
if (state instanceof ClassLikeState) {
return (ClassLikeState) state;
} else if (states.size() > 1) {
- final ListIterator i = states.listIterator(states.size());
+ final ListIterator<IState> i = states.listIterator(states.size());
while (i.hasPrevious()) {
- final Object s = i.previous();
+ final IState s = i.previous();
if (s instanceof ClassLikeState) {
return (ClassLikeState) s;
}
@@ -468,9 +468,9 @@
node.accept(this);
states.pop();
- ArrayList list = state.getList();
+ ArrayList<ASTNode> list = state.getList();
if (list.size() == 1)
- return (ASTNode) list.iterator().next();
+ return list.iterator().next();
if (node instanceof NewlineNode) {
NewlineNode newlineNode = (NewlineNode) node;
@@ -478,16 +478,14 @@
}
if (list.size() > 1) {
throw new RuntimeException(
- NLS
- .bind(
+ NLS.bind(
Messages.RubyASTBuildVisitor_jrubyNodeHasntBeenConvertedIntoAnyDltkAstNode,
node.getClass().getName()));
}
if (allowZero)
return null;
throw new RuntimeException(
- NLS
- .bind(
+ NLS.bind(
Messages.RubyASTBuildVisitor_jrubyNodeHasntBeenConvertedIntoAnyDltkAstNode,
node.getClass().getName()));
}
@@ -543,13 +541,13 @@
return null;
}
- private List processListNode(ListNode node) { // done
+ private List<ASTNode> processListNode(ListNode node) { // done
CollectingState coll = new CollectingState();
states.push(coll);
- Iterator iterator = node.childNodes().iterator();
+ Iterator<Node> iterator = node.childNodes().iterator();
while (iterator.hasNext()) {
- ((Node) iterator.next()).accept(this);
+ iterator.next().accept(this);
}
states.pop();
@@ -557,7 +555,7 @@
}
public Instruction visitArrayNode(ArrayNode iVisited) { // done
- List exprs = processListNode(iVisited);
+ List<ASTNode> exprs = processListNode(iVisited);
ISourcePosition position = iVisited.getPosition();
RubyArrayExpression arr = new RubyArrayExpression();
@@ -595,9 +593,9 @@
ISourcePosition pos = iVisited.getPosition();
Block block = new Block(pos.getStartOffset(), pos.getEndOffset());
states.push(new BlockState(block));
- Iterator iterator = iVisited.childNodes().iterator();
+ Iterator<Node> iterator = iVisited.childNodes().iterator();
while (iterator.hasNext()) {
- ((Node) iterator.next()).accept(this);
+ iterator.next().accept(this);
}
states.pop();
states.peek().add(block);
@@ -803,7 +801,7 @@
recv.setStart(iVisited.getPosition().getStartOffset());
recv.setEnd(iVisited.getPosition().getEndOffset() + 1);
} else
- recv = (ASTNode) collector.getList().get(0);
+ recv = collector.getList().get(0);
collector.reset();
@@ -817,9 +815,9 @@
states.push(new ArgumentsState(argList));
if (argsNode instanceof ListNode) {
ListNode arrayNode = (ListNode) argsNode;
- List list = arrayNode.childNodes();
- for (Iterator iter = list.iterator(); iter.hasNext();) {
- Node node = (Node) iter.next();
+ List<Node> list = arrayNode.childNodes();
+ for (Iterator<Node> iter = list.iterator(); iter.hasNext();) {
+ Node node = iter.next();
node.accept(this);
}
} else {
@@ -830,17 +828,17 @@
argsNode.accept(this);
}
states.pop();
- List children = argsNode.childNodes();
+ List<Node> children = argsNode.childNodes();
if (children.size() > 0) {
- argsStart = ((Node) children.get(0)).getPosition()
+ argsStart = children.get(0).getPosition()
.getStartOffset();
- argsEnd = ((Node) children.get(children.size() - 1))
+ argsEnd = children.get(children.size() - 1)
.getPosition().getEndOffset();
// correction for nodes with incorrect positions
- List argListExprs = argList.getChilds();
+ List<ASTNode> argListExprs = argList.getChilds();
if (!argListExprs.isEmpty())
- argsEnd = Math.max(argsEnd, ((ASTNode) argListExprs
- .get(argListExprs.size() - 1)).sourceEnd());
+ argsEnd = Math.max(argsEnd, argListExprs
+ .get(argListExprs.size() - 1).sourceEnd());
}
}
if (iVisited.getIterNode() != null) {
@@ -981,9 +979,9 @@
type.setBody(bl);
if (bodyNode instanceof BlockNode) {
- for (Iterator iterator = bodyNode.childNodes().iterator(); iterator
+ for (Iterator<Node> iterator = bodyNode.childNodes().iterator(); iterator
.hasNext();) {
- Node n = (Node) iterator.next();
+ Node n = iterator.next();
n.accept(this);
}
} else
@@ -1008,7 +1006,7 @@
ASTNode left = null;
if (collector.list.size() == 1) {
- left = (ASTNode) collector.list.get(0);
+ left = collector.list.get(0);
}
@@ -1061,7 +1059,7 @@
public Instruction visitDRegxNode(DRegexpNode iVisited) { // done
ISourcePosition pos = iVisited.getPosition();
- List list = processListNode(iVisited);
+ List<ASTNode> list = processListNode(iVisited);
RubyDRegexpExpression ex = new RubyDRegexpExpression(pos
.getStartOffset(), pos.getEndOffset());
ex.setChilds(list);
@@ -1071,7 +1069,7 @@
public Instruction visitDStrNode(DStrNode iVisited) { // done
ISourcePosition pos = iVisited.getPosition();
- List list = processListNode(iVisited);
+ List<ASTNode> list = processListNode(iVisited);
RubyDynamicStringExpression ex = new RubyDynamicStringExpression(pos
.getStartOffset(), pos.getEndOffset());
ex.setChilds(list);
@@ -1084,7 +1082,7 @@
*/
public Instruction visitDSymbolNode(DSymbolNode iVisited) { // done
ISourcePosition pos = iVisited.getPosition();
- List list = processListNode(iVisited);
+ List<ASTNode> list = processListNode(iVisited);
RubyDSymbolExpression ex = new RubyDSymbolExpression(pos
.getStartOffset(), pos.getEndOffset());
ex.setChilds(list);
@@ -1103,7 +1101,7 @@
public Instruction visitDXStrNode(DXStrNode iVisited) { // done
ISourcePosition pos = iVisited.getPosition();
- List list = processListNode(iVisited);
+ List<ASTNode> list = processListNode(iVisited);
RubyDynamicBackquoteStringExpression ex = new RubyDynamicBackquoteStringExpression(
pos.getStartOffset(), pos.getEndOffset());
ex.setChilds(list);
@@ -1120,16 +1118,16 @@
return null;
}
- private List processMethodArguments(ArgsNode args) {
- List arguments = new ArrayList();
+ private List<Argument> processMethodArguments(ArgsNode args) {
+ List<Argument> arguments = new ArrayList<Argument>();
Arity arity = args.getArity();
int endPos = args.getPosition().getStartOffset() - 1;
if (arity.getValue() != 0) { // BIG XXX, PLEASE CHECK IT
ListNode argsList = args.getArgs();
if (argsList != null) {
- Iterator i = argsList.childNodes().iterator();
+ Iterator<Node> i = argsList.childNodes().iterator();
while (i.hasNext()) {
- Node nde = (Node) i.next();
+ Node nde = i.next();
if (nde instanceof ArgumentNode) {
ArgumentNode a = (ArgumentNode) nde;
Argument aa = new RubyMethodArgument();
@@ -1148,7 +1146,7 @@
}
ListNode optArgs = args.getOptArgs();
if (optArgs != null) {
- Iterator iterator = optArgs.childNodes().iterator();
+ Iterator<?> iterator = optArgs.childNodes().iterator();
while (iterator.hasNext()) {
Object obj = iterator.next();
if (obj instanceof LocalAsgnNode) {
@@ -1275,9 +1273,9 @@
method.getBody().setStart(bodyPos.getStartOffset());
method.getBody().setEnd(bodyPos.getEndOffset());
if (bodyNode instanceof BlockNode) {
- for (Iterator iterator = bodyNode.childNodes().iterator(); iterator
+ for (Iterator<Node> iterator = bodyNode.childNodes().iterator(); iterator
.hasNext();) {
- Node n = (Node) iterator.next();
+ Node n = iterator.next();
n.accept(this);
}
} else
@@ -1285,7 +1283,7 @@
}
ArgsNode args = iVisited.getArgsNode();
if (args != null) {
- List arguments = processMethodArguments(args);
+ List<Argument> arguments = processMethodArguments(args);
method.acceptArguments(arguments);
}
states.pop();
@@ -1531,7 +1529,7 @@
public Instruction visitHashNode(HashNode iVisited) { // done
ListNode listNode = iVisited.getListNode();
- List exprs = processListNode(listNode);
+ List<ASTNode> exprs = processListNode(listNode);
ISourcePosition position = iVisited.getPosition();
RubyHashExpression arr = new RubyHashExpression();
@@ -1543,13 +1541,13 @@
arr.setEnd(listNode.getPosition().getEndOffset());
}
- List hashPairs = new ArrayList();
+ List<ASTNode> hashPairs = new ArrayList<ASTNode>();
if (exprs.size() % 2 == 0) {
- Iterator i = exprs.iterator();
+ Iterator<ASTNode> i = exprs.iterator();
while (i.hasNext()) {
- ASTNode key = (ASTNode) i.next();
- ASTNode value = (ASTNode) i.next();
+ ASTNode key = i.next();
+ ASTNode value = i.next();
RubyHashPairExpression e = new RubyHashPairExpression(key
.sourceStart(), value.sourceEnd(), key, value);
hashPairs.add(e);
@@ -1649,9 +1647,9 @@
pos.getStartOffset(), pos.getEndOffset());
ListNode headNode = iVisited.getHeadNode();
if (headNode != null) {
- for (Iterator iterator = headNode.childNodes().iterator(); iterator
+ for (Iterator<Node> iterator = headNode.childNodes().iterator(); iterator
.hasNext();) {
- Node n = (Node) iterator.next();
+ Node n = iterator.next();
if (n instanceof LocalAsgnNode
&& ((LocalAsgnNode) n).getValueNode() == null) {
String name = ((LocalAsgnNode) n).getName();
@@ -1675,9 +1673,9 @@
Node firstNode = argsCatNode.getFirstNode();
if (firstNode instanceof ListNode) {
ListNode list = (ListNode) firstNode;
- for (Iterator iterator = list.childNodes().iterator(); iterator
+ for (Iterator<Node> iterator = list.childNodes().iterator(); iterator
.hasNext();) {
- Node nd = (Node) iterator.next();
+ Node nd = iterator.next();
s.addRhs(collectSingleNodeSafe(nd));
}
} else if (firstNode != null)
@@ -1687,9 +1685,9 @@
s.setRightAsterix(collectSingleNodeSafe(secondNode));
} else if (valueNode instanceof ListNode) {
ListNode list = (ListNode) valueNode;
- for (Iterator iterator = list.childNodes().iterator(); iterator
+ for (Iterator<Node> iterator = list.childNodes().iterator(); iterator
.hasNext();) {
- Node nd = (Node) iterator.next();
+ Node nd = iterator.next();
s.addRhs(collectSingleNodeSafe(nd));
}
} else if (valueNode != null) {
@@ -1984,9 +1982,9 @@
}
public Instruction visitSplatNode(SplatNode iVisited) {
- Iterator iterator = iVisited.childNodes().iterator();
+ Iterator<Node> iterator = iVisited.childNodes().iterator();
while (iterator.hasNext()) {
- ((Node) iterator.next()).accept(this);
+ iterator.next().accept(this);
}
return null;
@@ -2040,9 +2038,9 @@
}
public Instruction visitSValueNode(SValueNode iVisited) {
- Iterator iterator = iVisited.childNodes().iterator();
+ Iterator<Node> iterator = iVisited.childNodes().iterator();
while (iterator.hasNext()) {
- ((Node) iterator.next()).accept(this);
+ iterator.next().accept(this);
}
return null;
}
@@ -2053,9 +2051,9 @@
if (argsNode instanceof ListNode) {
ListNode arrayNode = (ListNode) argsNode;
- List list = arrayNode.childNodes();
- for (Iterator iter = list.iterator(); iter.hasNext();) {
- Node node = (Node) iter.next();
+ List<Node> list = arrayNode.childNodes();
+ for (Iterator<Node> iter = list.iterator(); iter.hasNext();) {
+ Node node = iter.next();
node.accept(this);
}
} else if (argsNode instanceof ArgsCatNode) {
@@ -2064,14 +2062,14 @@
.getFirstNode());
CallArgumentsList second = processCallArguments(argsCatNode
.getSecondNode());
- for (Iterator iterator = first.getChilds().iterator(); iterator
+ for (Iterator<ASTNode> iterator = first.getChilds().iterator(); iterator
.hasNext();) {
- ASTNode e = (ASTNode) iterator.next();
+ ASTNode e = iterator.next();
argList.addNode(e);
}
- for (Iterator iterator = second.getChilds().iterator(); iterator
+ for (Iterator<ASTNode> iterator = second.getChilds().iterator(); iterator
.hasNext();) {
- ASTNode e = (ASTNode) iterator.next();
+ ASTNode e = iterator.next();
argList.addNode(e);
}
} else if (argsNode != null) {
@@ -2101,9 +2099,9 @@
}
public Instruction visitToAryNode(ToAryNode iVisited) {
- Iterator iterator = iVisited.childNodes().iterator();
+ Iterator<Node> iterator = iVisited.childNodes().iterator();
while (iterator.hasNext()) {
- ((Node) iterator.next()).accept(this);
+ iterator.next().accept(this);
}
return null;
}
@@ -2180,7 +2178,7 @@
org.eclipse.dltk.ast.ASTListNode list = (org.eclipse.dltk.ast.ASTListNode) expressionsStatement;
statement.setExpressions(list.getChilds());
} else {
- List list = new ArrayList(1);
+ List<ASTNode> list = new ArrayList<ASTNode>(1);
list.add(expressionsStatement);
statement.setExpressions(list);
}
@@ -2343,9 +2341,9 @@
Node bodyNode = arg0.getBodyNode();
if (bodyNode instanceof BlockNode) {
BlockNode blockNode = (BlockNode) bodyNode;
- Iterator iterator = blockNode.childNodes().iterator();
+ Iterator<Node> iterator = blockNode.childNodes().iterator();
while (iterator.hasNext()) {
- ((Node) iterator.next()).accept(this);
+ iterator.next().accept(this);
}
} else if (bodyNode != null)
bodyNode.accept(this);
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/BuiltinMethods.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/BuiltinMethods.java
index afff3ce..feadec4 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/BuiltinMethods.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/BuiltinMethods.java
@@ -1,11 +1,10 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2016 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
-
*******************************************************************************/
package org.eclipse.dltk.ruby.typeinference;
@@ -55,7 +54,7 @@
return new RubyClassType(key + "%"); //$NON-NLS-1$
return null;
} else if (receiver instanceof AmbiguousType) {
- Set possibleReturns = new HashSet();
+ Set<IEvaluatedType> possibleReturns = new HashSet<IEvaluatedType>();
AmbiguousType ambiguousType = (AmbiguousType) receiver;
IEvaluatedType[] possibleTypes = ambiguousType.getPossibleTypes();
for (int i = 0; i < possibleTypes.length; i++) {
@@ -152,7 +151,7 @@
this.name = name;
}
- private Map methods = new HashMap();
+ private Map<String, IntrinsicMethod> methods = new HashMap<String, IntrinsicMethod>();
public void addMethod(String name, IntrinsicMethod method) {
methods.put(name, method);
@@ -163,16 +162,16 @@
}
IntrinsicMethod getMethod(String name) {
- return (IntrinsicMethod) methods.get(name);
+ return methods.get(name);
}
- public Collection getMethods(){
+ public Collection<IntrinsicMethod> getMethods(){
return methods.values();
}
}
- private static Map builtinClasses = new HashMap();
+ private static Map<String, BuiltinClass> builtinClasses = new HashMap<String, BuiltinClass>();
private static BuiltinClass addClass(BuiltinClass klass) {
builtinClasses.put(klass.getName(), klass);
@@ -219,7 +218,7 @@
if (receiver instanceof IClassType)
return getIntrinsicMethodReturnType((IClassType) receiver, methodName, arguments);
else if (receiver instanceof AmbiguousType) {
- Set possibleReturns = new HashSet();
+ Set<IEvaluatedType> possibleReturns = new HashSet<IEvaluatedType>();
AmbiguousType ambiguousType = (AmbiguousType) receiver;
IEvaluatedType[] possibleTypes = ambiguousType.getPossibleTypes();
for (int i = 0; i < possibleTypes.length; i++) {
@@ -236,7 +235,7 @@
public static IEvaluatedType getIntrinsicMethodReturnType(IClassType receiver,
String methodName, IEvaluatedType[] arguments) {
String className = getPossibleIntrinsicClassName(receiver);
- BuiltinClass klass = (BuiltinClass) builtinClasses.get(className);
+ BuiltinClass klass = builtinClasses.get(className);
if (klass != null) {
IntrinsicMethod method = klass.getMethod(methodName);
if (method != null) {
@@ -246,21 +245,21 @@
return null;
}
- public static Collection getIntrinsicMethods(IEvaluatedType receiver) {
+ public static Collection<IntrinsicMethod> getIntrinsicMethods(IEvaluatedType receiver) {
if (receiver instanceof IClassType) {
String className = getPossibleIntrinsicClassName((IClassType) receiver);
- BuiltinClass klass = (BuiltinClass) builtinClasses.get(className);
+ BuiltinClass klass = builtinClasses.get(className);
if (klass != null)
return klass.getMethods();
else
return null;
} else if (receiver instanceof AmbiguousType) {
- Set methods = new HashSet();
+ Set<IntrinsicMethod> methods = new HashSet<IntrinsicMethod>();
AmbiguousType ambiguousType = (AmbiguousType) receiver;
IEvaluatedType[] possibleTypes = ambiguousType.getPossibleTypes();
for (int i = 0; i < possibleTypes.length; i++) {
IEvaluatedType type = possibleTypes[i];
- Collection typeMethods = getIntrinsicMethods(type);
+ Collection<IntrinsicMethod> typeMethods = getIntrinsicMethods(type);
methods.addAll(typeMethods);
}
return methods;
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/BuiltinMethodsDatabase.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/BuiltinMethodsDatabase.java
index 03eec74..06d766d 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/BuiltinMethodsDatabase.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/BuiltinMethodsDatabase.java
@@ -1,11 +1,10 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2016 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
-
*******************************************************************************/
package org.eclipse.dltk.ruby.typeinference;
@@ -140,7 +139,7 @@
}
- private final static Map metaclasses = new HashMap();
+ private final static Map<String, Metaclass> metaclasses = new HashMap<String, Metaclass>();
private static Metaclass add(Metaclass metaclass) {
metaclasses.put(metaclass.getName(), metaclass);
@@ -148,7 +147,7 @@
}
public static Metaclass get(String name) {
- return (Metaclass) metaclasses.get(name);
+ return metaclasses.get(name);
}
static {
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/RubyModelUtils.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/RubyModelUtils.java
index 74aded9..32aa591 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/RubyModelUtils.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/RubyModelUtils.java
@@ -254,7 +254,7 @@
* @param selfKlass
* @return
*/
- private static List handleSpecialMethod(RubyMixinMethod method,
+ private static List<IMethod> handleSpecialMethod(RubyMixinMethod method,
RubyMixinClass selfKlass) {
if (method.getKey().equals("Class%{new")) { //$NON-NLS-1$
RubyMixinMethod init = selfKlass.getInstanceClass() != null ? selfKlass
@@ -262,7 +262,7 @@
: null;
if (init != null) {
IMethod[] initMethods = init.getSourceMethods();
- List result = new ArrayList();
+ List<IMethod> result = new ArrayList<IMethod>();
for (int i = 0; i < initMethods.length; i++) {
try {
IParameter[] parameters = initMethods[i]
@@ -297,12 +297,12 @@
return null;
}
- public static List getAllSourceMethods(RubyMixinMethod[] methods,
+ public static List<IMethod> getAllSourceMethods(RubyMixinMethod[] methods,
RubyMixinClass selfKlass) {
- List result = new ArrayList();
+ List<IMethod> result = new ArrayList<IMethod>();
for (int i = 0; i < methods.length; i++) {
if (selfKlass != null) {
- List m = handleSpecialMethod(methods[i], selfKlass);
+ List<IMethod> m = handleSpecialMethod(methods[i], selfKlass);
if (m != null) {
result.addAll(m);
continue;
@@ -382,7 +382,7 @@
}
private static void addVariablesFrom(RubyMixinVariable[] fields2,
- String prefix, List resultList) {
+ String prefix, List<IField> resultList) {
for (int i = 0; i < fields2.length; i++) {
IField[] sourceFields = fields2[i].getSourceFields();
if (sourceFields != null) {
@@ -484,7 +484,7 @@
}
private static void addFakeMethods(ModelElement parent,
- Metaclass metaclass, List fakeMethods) {
+ Metaclass metaclass, List<FakeMethod> fakeMethods) {
// process included modules first, to allow the class to override
// some of the methods
ModuleMetaclass[] includedModules = metaclass.getIncludedModules();
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/RubyTypeInferencingUtils.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/RubyTypeInferencingUtils.java
index 546c5f9..513654e 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/RubyTypeInferencingUtils.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/RubyTypeInferencingUtils.java
@@ -258,7 +258,7 @@
|| node instanceof MethodDeclaration;
}
- public static IEvaluatedType combineTypes(Collection evaluaedTypes) {
+ public static IEvaluatedType combineTypes(Collection<IEvaluatedType> evaluaedTypes) {
Set<IEvaluatedType> types = new HashSet<IEvaluatedType>(evaluaedTypes);
types.remove(null);
if (types.size() > 1 && types.contains(RecursionTypeCall.INSTANCE))
@@ -284,7 +284,7 @@
public static IEvaluatedType getAmbiguousMetaType(IEvaluatedType receiver) {
if (receiver instanceof AmbiguousType) {
- Set possibleReturns = new HashSet();
+ Set<IEvaluatedType> possibleReturns = new HashSet<IEvaluatedType>();
AmbiguousType ambiguousType = (AmbiguousType) receiver;
IEvaluatedType[] possibleTypes = ambiguousType.getPossibleTypes();
for (int i = 0; i < possibleTypes.length; i++) {
@@ -337,7 +337,7 @@
}
private List<VariableAssignment> assignements;
- private Stack level = new Stack();
+ private Stack<ASTNode> level = new Stack<ASTNode>();
private int maxLevel;
private final String name;
@@ -407,11 +407,11 @@
return null;
}
- public List getConditionals() {
+ public List<RubyAssignment> getConditionals() {
RubyAssignment unconditionalAssignment = getUnconditionalAssignment();
- List result = new ArrayList();
- for (Iterator iter = assignements.iterator(); iter.hasNext();) {
- VariableAssignment assign = (VariableAssignment) iter.next();
+ List<RubyAssignment> result = new ArrayList<RubyAssignment>();
+ for (Iterator<VariableAssignment> iter = assignements.iterator(); iter.hasNext();) {
+ VariableAssignment assign = iter.next();
if (unconditionalAssignment == null
|| assign.assignment.sourceStart() > unconditionalAssignment
.sourceStart())
@@ -425,7 +425,7 @@
}
private static RubyAssignment findAssignments(String variableName,
- ASTNode scopeNode, int tillOffset, List conditionals) {
+ ASTNode scopeNode, int tillOffset, List<RubyAssignment> conditionals) {
LocalVariablesSearchVisitor visitor = new LocalVariablesSearchVisitor(
variableName, scopeNode, tillOffset);
try {
@@ -448,7 +448,7 @@
ASTNode scope = scopes[i];
if (scope instanceof TypeDeclaration) {
info.setDeclaringScope(scope);
- List conditionals = new ArrayList();
+ List<RubyAssignment> conditionals = new ArrayList<RubyAssignment>();
RubyAssignment last = findAssignments(name, scope, offset,
conditionals);
info.setLastAssignment(last);
@@ -458,11 +458,10 @@
} else if (scope instanceof MethodDeclaration) {
MethodDeclaration method = (MethodDeclaration) scope;
boolean isArgument = false;
- List arguments = method.getArguments();
- for (Iterator iterator = arguments.iterator(); iterator
+ List<RubyMethodArgument> arguments = method.getArguments();
+ for (Iterator<RubyMethodArgument> iterator = arguments.iterator(); iterator
.hasNext();) {
- RubyMethodArgument arg = (RubyMethodArgument) iterator
- .next();
+ RubyMethodArgument arg = iterator.next();
String argName = arg.getName();
if (argName.equals(name)) {
isArgument = true;
@@ -472,7 +471,7 @@
if (isArgument
&& (info.getKind() == LocalVariableInfo.KIND_DEFAULT))
info.setKind(LocalVariableInfo.KIND_METHOD_ARG);
- List conditionals = new ArrayList();
+ List<RubyAssignment> conditionals = new ArrayList<RubyAssignment>();
RubyAssignment last = findAssignments(name, scope, offset,
conditionals);
info.setLastAssignment(last);
@@ -482,9 +481,9 @@
} else if (scope instanceof RubyBlock) {
boolean isArgument = false;
RubyBlock block = (RubyBlock) scope;
- Set vars = block.getVars();
- for (Iterator iterator = vars.iterator(); iterator.hasNext();) {
- ASTNode vnode = (ASTNode) iterator.next();
+ Set<ASTNode> vars = block.getVars();
+ for (Iterator<ASTNode> iterator = vars.iterator(); iterator.hasNext();) {
+ ASTNode vnode = iterator.next();
if (vnode instanceof RubyDAssgnExpression) {
RubyDAssgnExpression v = (RubyDAssgnExpression) vnode;
if (v.getName().equals(name)) {
@@ -535,7 +534,7 @@
}
if (i < 0) {
// consider the whole module
- List conditionals = new ArrayList();
+ List<RubyAssignment> conditionals = new ArrayList<RubyAssignment>();
RubyAssignment last = findAssignments(name, module, offset,
conditionals);
info.setLastAssignment(last);
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/UniqueNamesList.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/UniqueNamesList.java
index 42b3c2b..a5de6b9 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/UniqueNamesList.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/UniqueNamesList.java
@@ -13,14 +13,14 @@
import org.eclipse.dltk.core.IModelElement;
-class UniqueNamesList extends ArrayList {
+class UniqueNamesList<T> extends ArrayList<T> {
private static final long serialVersionUID = 4866432224140371654L;
- HashSet names = new HashSet ();
+ HashSet<String> names = new HashSet<String> ();
@Override
- public boolean add(Object elem) {
+ public boolean add(T elem) {
if (elem instanceof IModelElement) {
IModelElement modelElement = (IModelElement) elem;
if (names.contains(modelElement.getElementName()))
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/BlockEvaluator.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/BlockEvaluator.java
index 2326d94..f4f7f8c 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/BlockEvaluator.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/BlockEvaluator.java
@@ -40,10 +40,9 @@
public IGoal[] init() {
ExpressionTypeGoal typedGoal = getTypedGoal();
Block block = (Block) typedGoal.getExpression();
- List statements = block.getStatements();
+ List<ASTNode> statements = block.getStatements();
if (statements.size() > 0) {
- this.lastStatement = (ASTNode) statements
- .get(statements.size() - 1);
+ this.lastStatement = statements.get(statements.size() - 1);
ExpressionTypeGoal subgoal = new ExpressionTypeGoal(goal
.getContext(), this.lastStatement);
return new IGoal[] { subgoal };
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/CaseStatementTypeEvaluator.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/CaseStatementTypeEvaluator.java
index 899b143..5c48177 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/CaseStatementTypeEvaluator.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/CaseStatementTypeEvaluator.java
@@ -41,9 +41,9 @@
return IGoal.NO_GOALS;
RubyCaseStatement caseSt = (RubyCaseStatement) expression;
List<IGoal> subgoals = new ArrayList<IGoal>();
- List whens = caseSt.getWhens();
- for (Iterator iterator = whens.iterator(); iterator.hasNext();) {
- RubyWhenStatement when = (RubyWhenStatement) iterator.next();
+ List<RubyWhenStatement> whens = caseSt.getWhens();
+ for (Iterator<RubyWhenStatement> iterator = whens.iterator(); iterator.hasNext();) {
+ RubyWhenStatement when = iterator.next();
ASTNode body = when.getBody();
subgoals.add(new ExpressionTypeGoal(this.goal.getContext(), body));
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/MethodCallTypeEvaluator.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/MethodCallTypeEvaluator.java
index 85ebac1..75ae982 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/MethodCallTypeEvaluator.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/MethodCallTypeEvaluator.java
@@ -116,7 +116,7 @@
ExpressionTypeGoal typedGoal = (ExpressionTypeGoal) goal;
CallExpression expression = (CallExpression) typedGoal
.getExpression();
- List arguments = expression.getArgs().getChilds();
+ List<ASTNode> arguments = expression.getArgs().getChilds();
this.arguments = new IEvaluatedType[arguments.size()];
}
if (state >= STATE_WAITING_ARGUMENT_0
@@ -130,11 +130,11 @@
ExpressionTypeGoal typedGoal = (ExpressionTypeGoal) goal;
CallExpression expression = (CallExpression) typedGoal
.getExpression();
- List arguments = expression.getArgs().getChilds();
+ List<ASTNode> arguments = expression.getArgs().getChilds();
if (nextArg < arguments.size()) {
state = STATE_WAITING_ARGUMENT_0 + nextArg;
return new ExpressionTypeGoal(goal.getContext(),
- (ASTNode) arguments.get(nextArg));
+ arguments.get(nextArg));
} else {
state = STATE_ARGS_DONE;
}
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/MethodReturnTypeEvaluator.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/MethodReturnTypeEvaluator.java
index f26c811..ea7b1f8 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/MethodReturnTypeEvaluator.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/MethodReturnTypeEvaluator.java
@@ -43,7 +43,7 @@
public class MethodReturnTypeEvaluator extends RubyMixinGoalEvaluator {
- private final List possibilities = new ArrayList();
+ private final List<ASTNode> possibilities = new ArrayList<ASTNode>();
private final List evaluated = new ArrayList();
private IEvaluatedType rdocResult = null;
@@ -92,7 +92,7 @@
}
MethodDeclaration decl = null;
- List methods = new ArrayList();
+ List<IMethod> methods = new ArrayList<IMethod>();
if (instanceType == null) {
instanceType = new RubyClassType("Object"); //$NON-NLS-1$
}
@@ -120,8 +120,8 @@
IMethod resultMethod = null;
// in case of ambiguity, prefer methods from the same module
IMethod resultMethodFromSameModule = null;
- for (Iterator iterator = methods.iterator(); iterator.hasNext();) {
- IMethod method = (IMethod) iterator.next();
+ for (Iterator<IMethod> iterator = methods.iterator(); iterator.hasNext();) {
+ IMethod method = iterator.next();
if (method instanceof FakeMethod || method == null)
continue;
String elementName = method.getElementName();
@@ -189,10 +189,9 @@
IGoal[] newGoals = new IGoal[possibilities.size()];
int i = 0;
- for (Iterator iterator = possibilities.iterator(); iterator.hasNext();) {
- ASTNode st = (ASTNode) iterator.next();
- ExpressionTypeGoal subgoal = new ExpressionTypeGoal(innerContext,
- st);
+ for (Iterator<ASTNode> iterator = possibilities.iterator(); iterator.hasNext();) {
+ ASTNode st = iterator.next();
+ ExpressionTypeGoal subgoal = new ExpressionTypeGoal(innerContext, st);
newGoals[i++] = subgoal;
}
return newGoals;
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/NonTypeConstantTypeEvaluator.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/NonTypeConstantTypeEvaluator.java
index 39523f9..5b4a809 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/NonTypeConstantTypeEvaluator.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/NonTypeConstantTypeEvaluator.java
@@ -21,7 +21,7 @@
public class NonTypeConstantTypeEvaluator extends GoalEvaluator {
- private HashMap hardcoredTypes = new HashMap();
+ private HashMap<String, RubyClassType> hardcoredTypes = new HashMap<String, RubyClassType>();
private Object result;
public NonTypeConstantTypeEvaluator(IGoal goal) {
diff --git a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/VariableReferenceEvaluator.java b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/VariableReferenceEvaluator.java
index 6876da0..07bb9bf 100644
--- a/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/VariableReferenceEvaluator.java
+++ b/plugins/org.eclipse.dltk.ruby.core/src/org/eclipse/dltk/ruby/typeinference/evaluators/VariableReferenceEvaluator.java
@@ -182,8 +182,8 @@
int pos = 0;
int argPos = -1;
- for (Iterator iterator = methodArgs.iterator(); iterator.hasNext();) {
- ASTNode marg = (ASTNode) iterator.next();
+ for (Iterator<ASTNode> iterator = methodArgs.iterator(); iterator.hasNext();) {
+ ASTNode marg = iterator.next();
if (marg instanceof RubyMethodArgument) {
RubyMethodArgument rubyMethodArgument = (RubyMethodArgument) marg;
if (rubyMethodArgument.getName().equals(varName)) {
@@ -221,9 +221,9 @@
CallArgumentsList args = expr.getArgs();
if (args != null) {
- List list = args.getChilds();
+ List<ASTNode> list = args.getChilds();
if (argPos < list.size()) {
- ASTNode st = (ASTNode) list.get(argPos);
+ ASTNode st = list.get(argPos);
if (st instanceof RubyCallArgument) {
RubyCallArgument rubyCallArgument = (RubyCallArgument) st;
st = rubyCallArgument.getValue();