1 /******************************************************************************* 2 * Copyright (c) 2000, 2009 IBM Corporation and others. 3 * 4 * This program and the accompanying materials 5 * are made available under the terms of the Eclipse Public License 2.0 6 * which accompanies this distribution, and is available at 7 * https://www.eclipse.org/legal/epl-2.0/ 8 * 9 * SPDX-License-Identifier: EPL-2.0 10 * 11 * Contributors: 12 * IBM Corporation - initial API and implementation 13 *******************************************************************************/ 14 package org.eclipse.jdt.core.util; 15 16 /** 17 * This class represents a generic class file attribute. It is intended to be extended 18 * for any new attribute. 19 * 20 * @since 2.0 21 */ 22 public interface IClassFileAttribute { 23 24 /** 25 * Answer back the attribute name index in the constant pool as specified 26 * in the JVM specifications. 27 * 28 * @return the attribute name index in the constant pool 29 */ getAttributeNameIndex()30 int getAttributeNameIndex(); 31 32 /** 33 * Answer back the attribute name as specified 34 * in the JVM specifications. 35 * 36 * @return the attribute name 37 */ getAttributeName()38 char[] getAttributeName(); 39 40 /** 41 * Answer back the attribute length as specified 42 * in the JVM specifications. 43 * 44 * @return the attribute length 45 */ getAttributeLength()46 long getAttributeLength(); 47 } 48