インタフェースBranchInstruction

すべてのスーパー・インタフェース:
ClassFileElement, CodeElement, Instruction

public sealed interface BranchInstruction extends Instruction
Code属性の code配列の分岐命令(条件付きまたは無条件)をモデル化します。 対応するopcodesのkindOpcode.Kind.BRANCHです。 CodeModelの要素をトラバースするときに、CodeElementとして提供されます。

ブランチ命令はコンポジットです:

BranchInstruction(
    Opcode opcode,
    Label target
)

物理的な制限により、一部のタイプの命令では、コード要素のリストでラベルをエンコードしすぎません。 このような場合、ClassFile.ShortJumpsOptionは、無効なブランチ命令モデルがCodeBuilderによってどのように書き込まれるかを制御します。

導入されたバージョン:
24
関連項目:
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    of(Opcode op, Label target)
    分岐命令を返します。
    この命令のブランチ・ターゲットを返します。

    インタフェースjava.lang.classfile.Instructionで宣言されたメソッド

    opcode, sizeInBytes
  • メソッドの詳細

    • target

      Label target()
      この命令のブランチ・ターゲットを返します。
      戻り値:
      この命令のブランチ・ターゲット
    • of

      static BranchInstruction of(Opcode op, Label target)
      分岐命令を返します。
      パラメータ:
      op - 特定のタイプのブランチ命令のopcode。Opcode.Kind.BRANCHの種類である必要があります
      target - ブランチのターゲット
      戻り値:
      branch instruction
      スロー:
      IllegalArgumentException - opcodeの種類がOpcode.Kind.BRANCHでない場合