/*******************************************************************************
* Copyright (c) 2000, 2009 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.che.ide.ext.java.jdt.internal.compiler.env;
import org.eclipse.che.ide.ext.java.jdt.internal.compiler.impl.Constant;
public interface IBinaryField extends IGenericField {
/** Answer the runtime visible and invisible annotations for this field or null if none. */
IBinaryAnnotation[] getAnnotations();
/** @return org.eclipse.jdt.internal.compiler.Constant */
Constant getConstant();
/**
* Answer the receiver's signature which describes the parameter & return types as specified in section 4.4.4 of the Java 2 VM
* spec.
*/
char[] getGenericSignature();
/** Answer the name of the field. */
char[] getName();
/** Answer the tagbits set according to the bits for annotations. */
long getTagBits();
/**
* Answer the resolved name of the receiver's type in the class file format as specified in section 4.3.2 of the Java 2 VM
* spec.
* <p/>
* For example: - java.lang.String is Ljava/lang/String; - an int is I - a 2 dimensional array of strings is
* [[Ljava/lang/String; - an array of floats is [F
*/
char[] getTypeName();
}