new version with WorkingCopy Management
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / compiler / lookup / SyntheticArgumentBinding.java
index 5ef5fbf..1afe5b8 100644 (file)
@@ -1,15 +1,17 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2001, 2002 International Business Machines Corp. and others.
+ * Copyright (c) 2000, 2003 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v0.5 
+ * are made available under the terms of the Common Public License v1.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
+ * http://www.eclipse.org/legal/cpl-v10.html
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
- ******************************************************************************/
+ *******************************************************************************/
 package net.sourceforge.phpdt.internal.compiler.lookup;
 
+import net.sourceforge.phpdt.core.compiler.CharOperation;
+
 /**
  * Specific local variable location used to:
  * - either provide emulation for outer local variables used from within innerclass constructs,
@@ -21,14 +23,13 @@ package net.sourceforge.phpdt.internal.compiler.lookup;
  * the user arguments.
  */
 
-import net.sourceforge.phpdt.internal.compiler.util.CharOperation;
-
 public class SyntheticArgumentBinding extends LocalVariableBinding {
 
        {       
                this.isArgument = true;
-               this.used = true;
+               this.useFlag = USED;
        }
+       
        // if the argument is mapping to an outer local variable, this denotes the outer actual variable
        public LocalVariableBinding actualOuterLocalVariable;
        // if the argument has a matching synthetic field
@@ -36,21 +37,25 @@ public class SyntheticArgumentBinding extends LocalVariableBinding {
 
        final static char[] OuterLocalPrefix = { 'v', 'a', 'l', '$' };
        final static char[] EnclosingInstancePrefix = { 't', 'h', 'i', 's', '$' };
-public SyntheticArgumentBinding(LocalVariableBinding actualOuterLocalVariable) {
-       super(
-               CharOperation.concat(OuterLocalPrefix, actualOuterLocalVariable.name), 
-               actualOuterLocalVariable.type, 
-               AccFinal,
-               true);
-       this.actualOuterLocalVariable = actualOuterLocalVariable;
-}
-public SyntheticArgumentBinding(ReferenceBinding enclosingType) {
-       super(
-               CharOperation.concat(
-                       SyntheticArgumentBinding.EnclosingInstancePrefix,
-                       String.valueOf(enclosingType.depth()).toCharArray()),
-               enclosingType, 
-               AccFinal,
-               true);
-}
+       
+       public SyntheticArgumentBinding(LocalVariableBinding actualOuterLocalVariable) {
+
+               super(
+                       CharOperation.concat(OuterLocalPrefix, actualOuterLocalVariable.name), 
+                       actualOuterLocalVariable.type, 
+                       AccFinal,
+                       true);
+               this.actualOuterLocalVariable = actualOuterLocalVariable;
+       }
+
+       public SyntheticArgumentBinding(ReferenceBinding enclosingType) {
+
+               super(
+                       CharOperation.concat(
+                               SyntheticArgumentBinding.EnclosingInstancePrefix,
+                               String.valueOf(enclosingType.depth()).toCharArray()),
+                       enclosingType, 
+                       AccFinal,
+                       true);
+       }
 }