From 10ea0d649b349ff85472088fa8a14c8057cb88ad Mon Sep 17 00:00:00 2001 From: kpouer Date: Mon, 11 Aug 2003 22:24:37 +0000 Subject: [PATCH 1/1] changed how special variables are detected --- .../phpdt/internal/compiler/ast/Variable.java | 36 +++++++++++++------ 1 files changed, 24 insertions(+), 12 deletions(-) diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/Variable.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/Variable.java index cd38e79..bd3c0fd 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/Variable.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/Variable.java @@ -4,6 +4,7 @@ import net.sourceforge.phpdt.internal.compiler.ast.declarations.VariableUsage; import java.util.List; import java.util.ArrayList; +import java.util.Arrays; /** * A variable. @@ -18,12 +19,28 @@ public class Variable extends AbstractVariable { /** A variable inside ($$varname). */ private AbstractVariable variable; - private static final String _GET = "_GET"; - private static final String _POST = "_POST"; - private static final String _REQUEST = "_REQUEST"; - private static final String _SERVER = "_SERVER"; - private static final String _SESSION = "_SESSION"; - private static final String _this = "this"; + public static final String _GET = "_GET"; + public static final String _POST = "_POST"; + public static final String _REQUEST = "_REQUEST"; + public static final String _SERVER = "_SERVER"; + public static final String _SESSION = "_SESSION"; + public static final String _this = "this"; + public static final String GLOBALS = "GLOBALS"; + public static final String _COOKIE = "_COOKIE"; + public static final String _FILES = "_FILES"; + public static final String _ENV = "_ENV"; + + /** Here is an array of all superglobals variables and the special "this". */ + public static final String[] SPECIAL_VARS = {_GET, + _POST, + _REQUEST, + _SERVER, + _SESSION, + _this, + GLOBALS, + _COOKIE, + _FILES, + _ENV}; /** * Create a new simple variable. @@ -93,12 +110,7 @@ public class Variable extends AbstractVariable { } else { varName = name; } - if (name.equals(_GET) || - name.equals(_POST) || - name.equals(_REQUEST) || - name.equals(_SERVER) || - name.equals(_SESSION) || - name.equals(_this)) { + if (arrayContains(SPECIAL_VARS, name)) { return new ArrayList(1); } final ArrayList list = new ArrayList(1); -- 1.7.1