X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/MethodDeclaration.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/MethodDeclaration.java index 48fdda2..6934c07 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/MethodDeclaration.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/MethodDeclaration.java @@ -156,34 +156,27 @@ public class MethodDeclaration extends Statement implements OutlineableWithChild } /** no outside variables. */ - public List getOutsideVariable() { - return new ArrayList(1); + public void getOutsideVariable(final List list) { } - public List getModifiedVariable() { - return new ArrayList(1); + public void getModifiedVariable(final List list) { } - public List getUsedVariable() { - return new ArrayList(1); + public void getUsedVariable(final List list) { } /** * Get global variables (not parameters). - * @return the variables from outside */ - public List getGlobalVariable() { - final ArrayList list = new ArrayList(); - + public void getGlobalVariable(final List list) { if (statements != null) { for (int i = 0; i < statements.length; i++) { - list.addAll(statements[i].getOutsideVariable()); + statements[i].getOutsideVariable(list); } } - return list; } - private List getParameters(final List list) { + private void getParameters(final List list) { if (arguments != null) { final Enumeration vars = arguments.elements(); while (vars.hasMoreElements()) { @@ -191,42 +184,35 @@ public class MethodDeclaration extends Statement implements OutlineableWithChild list.add(new VariableUsage(variable.name(), variable.sourceStart)); } } - return list; } /** * get the modified variables. - * @return the variables from we change value */ - private List getAssignedVariableInCode() { - final ArrayList list = new ArrayList(); + private void getAssignedVariableInCode(final List list) { if (statements != null) { for (int i = 0; i < statements.length; i++) { - list.addAll(statements[i].getModifiedVariable()); + statements[i].getModifiedVariable(list); } } - return list; } /** * Get the variables used. - * @return the variables used */ - private List getUsedVariableInCode() { - final ArrayList list = new ArrayList(); + private void getUsedVariableInCode(final List list) { if (statements != null) { for (int i = 0; i < statements.length; i++) { - list.addAll(statements[i].getUsedVariable()); + statements[i].getUsedVariable(list); } } - return list; } - private boolean isVariableDeclaredBefore(List list, VariableUsage var) { + private boolean isVariableDeclaredBefore(final List list, final VariableUsage var) { final String name = var.getName(); final int pos = var.getStartOffset(); for (int i = 0; i < list.size(); i++) { - VariableUsage variableUsage = (VariableUsage) list.get(i); + final VariableUsage variableUsage = (VariableUsage) list.get(i); if (variableUsage.getName().equals(name) && variableUsage.getStartOffset() < pos) { return true; } @@ -243,22 +229,26 @@ public class MethodDeclaration extends Statement implements OutlineableWithChild } } - final List globalsVars = getGlobalVariable(); - final List modifiedVars = getAssignedVariableInCode(); - final List parameters = getParameters(new ArrayList()); + final List globalsVars = new ArrayList(); + getGlobalVariable(globalsVars); + final List modifiedVars = new ArrayList(); + getAssignedVariableInCode(modifiedVars); + final List parameters = new ArrayList(); + getParameters(parameters); final List declaredVars = new ArrayList(globalsVars.size() + modifiedVars.size()); declaredVars.addAll(globalsVars); declaredVars.addAll(modifiedVars); declaredVars.addAll(parameters); - final List usedVars = getUsedVariableInCode(); - final List readOrWriteVars = new ArrayList(modifiedVars.size()+usedVars.size()); + final List usedVars = new ArrayList(); + getUsedVariableInCode(usedVars); + final List readOrWriteVars = new ArrayList(modifiedVars.size() + usedVars.size()); readOrWriteVars.addAll(modifiedVars); readOrWriteVars.addAll(usedVars); //look for used variables that were not declared before - findUnusedParameters(readOrWriteVars,parameters); + findUnusedParameters(readOrWriteVars, parameters); findUnknownUsedVars(usedVars, declaredVars); } @@ -269,14 +259,15 @@ public class MethodDeclaration extends Statement implements OutlineableWithChild */ private void findUnusedParameters(final List vars, final List parameters) { for (int i = 0; i < parameters.size(); i++) { - VariableUsage param = ((VariableUsage)parameters.get(i)); - if (!isVariableInList(param.getName(),vars)) { + final VariableUsage param = ((VariableUsage) parameters.get(i)); + if (!isVariableInList(param.getName(), vars)) { try { - PHPParserSuperclass.setMarker("warning, the parameter "+param.getName() +" seems to be never used in your method", - param.getStartOffset(), - param.getStartOffset() + param.getName().length(), - PHPParserSuperclass.WARNING, - ""); + PHPParserSuperclass.setMarker( + "warning, the parameter " + param.getName() + " seems to be never used in your method", + param.getStartOffset(), + param.getStartOffset() + param.getName().length(), + PHPParserSuperclass.WARNING, + ""); } catch (CoreException e) { PHPeclipsePlugin.log(e); } @@ -300,15 +291,16 @@ public class MethodDeclaration extends Statement implements OutlineableWithChild */ private void findUnknownUsedVars(final List usedVars, final List declaredVars) { for (int i = 0; i < usedVars.size(); i++) { - VariableUsage variableUsage = (VariableUsage) usedVars.get(i); + final VariableUsage variableUsage = (VariableUsage) usedVars.get(i); if (variableUsage.getName().equals("this")) continue; // this is a special variable if (!isVariableDeclaredBefore(declaredVars, variableUsage)) { try { - PHPParserSuperclass.setMarker("warning, usage of a variable that seems to be unassigned yet : " + variableUsage.getName(), - variableUsage.getStartOffset(), - variableUsage.getStartOffset() + variableUsage.getName().length(), - PHPParserSuperclass.WARNING, - ""); + PHPParserSuperclass.setMarker( + "warning, usage of a variable that seems to be unassigned yet : " + variableUsage.getName(), + variableUsage.getStartOffset(), + variableUsage.getStartOffset() + variableUsage.getName().length(), + PHPParserSuperclass.WARNING, + ""); } catch (CoreException e) { PHPeclipsePlugin.log(e); }