インタフェースTableSwitchInstruction
- すべてのスーパー・インタフェース:
ClassFileElement,CodeElement,Instruction
public sealed interface TableSwitchInstruction extends Instruction
Code属性のcode配列のtableswitch命令をモデル化します。 CodeModelの要素をトラバースするときに、CodeElementとして提供されます。
表スイッチ命令はコンポジットです:
TableSwitchInstruction(
int lowValue,
int highValue,
Label defaultTarget,
List<SwitchCase> cases
)
classファイルから読み取る場合、casesはデフォルトのターゲットを複製するケースを省略できます。 リストは、caseValueで昇順でソートされます。
classファイルに書き込む場合、表スイッチ・エントリの物理表現に有効な順序は1つのみであるため、casesリストの順序は問題になりません。 値がlowValueより小さいかhighValueより大きいcasesの要素および値が別の要素と重複する要素の処理は指定されません。
- Java Virtual Machine仕様を参照してください:
-
「6.5.tableswitch 表スイッチ」
- 導入されたバージョン:
- 24
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明cases()スイッチのケースを返します。スイッチのデフォルトのターゲットを返します。intスイッチのターゲット範囲の上限値(包含)を返します。intlowValue()スイッチのターゲット範囲の下限値(包含)を返します。static TableSwitchInstructionof(int lowValue, int highValue, Label defaultTarget, List<SwitchCase> cases) 表スイッチ命令を返します。インタフェースjava.lang.classfile.Instructionで宣言されたメソッド
opcode, sizeInBytes
-
メソッドの詳細
-
lowValue
int lowValue()スイッチのターゲット範囲の下限値(包含)を返します。- 戻り値:
- スイッチのターゲット範囲の下限値(包含)
-
highValue
int highValue()スイッチのターゲット範囲の上限値(包含)を返します。- 戻り値:
- スイッチのターゲット範囲の上限値(包含)
-
defaultTarget
-
cases
-
of
static TableSwitchInstruction of(int lowValue, int highValue, Label defaultTarget, List<SwitchCase> cases) 表スイッチ命令を返します。- パラメータ:
lowValue- スイッチのターゲット範囲の下限値(包含)highValue- スイッチのターゲット範囲の上限値(包含)defaultTarget- スイッチのデフォルトのターゲットcases- スイッチのケース。重複またはバインド外ケース処理が指定されていません- 戻り値:
- 表スイッチ命令
-