All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.aspectj.org.eclipse.jdt.core.util.IStackMapFrame Maven / Gradle / Ivy

/*******************************************************************************
 * Copyright (c) 2000, 2019 IBM Corporation and others.
 *
 * This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License 2.0
 * which accompanies this distribution, and is available at
 * https://www.eclipse.org/legal/epl-2.0/
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/
package org.aspectj.org.eclipse.jdt.core.util;

/**
 * Description of a stack map frame as specified in the JVM specifications.
 *
 * This interface may be implemented by clients.
 *
 * @since 3.2
 */
public interface IStackMapFrame {

	/**
	 * Answer back the frame type for this entry.
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
	 * 
TypeRange
SAME0-63
SAME_LOCALS_1_STACK_ITEM64-127
SAME_LOCALS_1_STACK_ITEM_EXTENDED247
CHOP248-250
SAME_FRAME_EXTENDED251
APPEND252-254
FULL_FRAME255
* * @return the frame type for this entry */ int getFrameType(); /** * Answer back the offset delta. *

This is not defined only for the frame types SAME and SAME_LOCALS_1_STACK_ITEM.

* * @return the offset delta */ int getOffsetDelta(); /** * Answer back the number of locals. *

This is defined only for the frame type FULL_FRAME.

* * @return the number of locals */ int getNumberOfLocals(); /** * Answer back verification infos for the defined locals. *

This is defined only for frame types APPEND and FULL_FRAME. * * @return verification infos for the defined locals */ IVerificationTypeInfo[] getLocals(); /** * Answer back the number of stack items *

This is defined only for the frame types SAME_LOCALS_1_STACK_ITEM, SAME_LOCALS_1_STACK_ITEM_EXTENDED and FULL_FRAME. * For SAME_LOCALS_1_STACK_ITEM and SAME_LOCALS_1_STACK_ITEM_EXTENDED, the answer is implicitely 1.

* * @return the number of stack items */ int getNumberOfStackItems(); /** * Answer back the verification infos for the stack items. * * @return the verification infos for the stack items */ IVerificationTypeInfo[] getStackItems(); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy