First try for AST structure. A lot of things to change
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / compiler / ast / AbstractVariableDeclaration.java
index 32835cb..9fbe9ae 100644 (file)
@@ -1,39 +1,30 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2001, 2002 International Business Machines Corp. and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v0.5 
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- ******************************************************************************/
 package net.sourceforge.phpdt.internal.compiler.ast;
 
-public abstract class AbstractVariableDeclaration extends Statement {
-       public int modifiers;
 
-       public TypeReference type;
-       public Expression initialization;
+/**
+ * An abstract variable declaration.
+ * @author Matthieu Casanova
+ */
+public abstract class AbstractVariableDeclaration extends Expression {
+  /** The name of the variable. */
+  public char[] name;
 
-       public char[] name;
-       public int declarationEnd;
-       public int declarationSourceStart;
-       public int declarationSourceEnd;
-       public int modifiersSourceStart;
-       public AbstractVariableDeclaration() {
-       }
-       public abstract String name();
-       
-       public String toString(int tab) {
+  /**
+   * Create a node giving starting and ending offset
+   * @param sourceStart starting offset
+   * @param sourceEnd ending offset
+   * @param name the name of the variable
+   */
+  public AbstractVariableDeclaration(char[] name, int sourceStart, int sourceEnd) {
+    super(sourceStart, sourceEnd);
+    this.name = name;
+  }
 
-               String s = tabString(tab);
-               if (modifiers != AccDefault) {
-                       s += modifiersString(modifiers);
-               }
-               s += type.toString(0) + " " + new String(name()); //$NON-NLS-1$
-               if (initialization != null)
-                       s += " = " + initialization.toStringExpression(tab); //$NON-NLS-1$
-               return s;
-       }
-}
\ No newline at end of file
+  /**
+   * Get the name of the field as String.
+   * @return the name of the String
+   */
+  public String name() {
+    return new String(name);
+  }
+}