1 /*******************************************************************************
2 * Copyright (c) 2000, 2003 IBM Corporation and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Common Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/cpl-v10.html
9 * IBM Corporation - initial API and implementation
10 *******************************************************************************/
11 package net.sourceforge.phpdt.internal.core;
13 import net.sourceforge.phpdt.core.IJavaElement;
14 import net.sourceforge.phpdt.internal.core.JavaElement;
16 import net.sourceforge.phpdt.core.IField;
17 import net.sourceforge.phpdt.core.JavaModelException;
18 import net.sourceforge.phpdt.core.Signature;
19 import net.sourceforge.phpdt.core.jdom.IDOMNode;
25 /* package */ class SourceField extends Member implements IField {
28 * Constructs a handle to the field with the given name in the specified type.
30 protected SourceField(JavaElement parent, String name) {
33 public boolean equals(Object o) {
34 if (!(o instanceof SourceField)) return false;
35 return super.equals(o);
38 * @see JavaElement#equalsDOMNode
40 protected boolean equalsDOMNode(IDOMNode node) throws JavaModelException {
41 return (node.getNodeType() == IDOMNode.FIELD) && super.equalsDOMNode(node);
46 public Object getConstant() throws JavaModelException {
47 SourceFieldElementInfo info = (SourceFieldElementInfo) getElementInfo();
48 return info.initializationSource;
53 public int getElementType() {
57 * @see JavaElement#getHandleMemento()
59 protected char getHandleMementoDelimiter() {
60 return JavaElement.JEM_FIELD;
65 public String getTypeSignature() throws JavaModelException {
66 // SourceFieldElementInfo info = (SourceFieldElementInfo) getElementInfo();
67 // return info.getTypeSignature();
71 * @private Debugging purposes
73 protected void toStringInfo(int tab, StringBuffer buffer, Object info) {
74 buffer.append(this.tabString(tab));
76 buffer.append(getElementName());
77 buffer.append(" (not open)"); //$NON-NLS-1$
78 } else if (info == NO_INFO) {
79 buffer.append(getElementName());
82 buffer.append(Signature.toString(this.getTypeSignature()));
83 buffer.append(" "); //$NON-NLS-1$
84 buffer.append(this.getElementName());
85 } catch (JavaModelException e) {
86 buffer.append("<JavaModelException in toString of " + getElementName()); //$NON-NLS-1$