public class LabelRange
extends java.lang.Object
Labels as described in Bytecode.
Created by covers1624 on 6/4/21.
| Modifier and Type | Field and Description |
|---|---|
org.objectweb.asm.Label |
end |
java.util.List<org.objectweb.asm.Label> |
range |
org.objectweb.asm.Label |
start |
| Constructor and Description |
|---|
LabelRange(java.util.List<org.objectweb.asm.Label> range) |
| Modifier and Type | Method and Description |
|---|---|
static LabelRange |
compute(org.objectweb.asm.tree.InsnList list,
org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
boolean exclusiveEnd)
Computes a
LabelRange from the given InsnList. |
boolean |
containsLabel(org.objectweb.asm.Label label)
Checks if a given label is contained within the range.
|
boolean |
equals(java.lang.Object o) |
static @Nullable LabelRange |
extractRange(org.objectweb.asm.tree.InsnList list) |
org.objectweb.asm.Label |
getEnd()
Gets the last label included in this range.
|
static org.objectweb.asm.Label |
getLabelAfter(org.objectweb.asm.tree.InsnList list,
org.objectweb.asm.Label target)
Get the label declared immediately after the target label.
|
java.util.List<org.objectweb.asm.Label> |
getRange()
Gets the ordered list of labels included in this range.
|
org.objectweb.asm.Label |
getStart()
Gets the first label included in this range.
|
int |
hashCode() |
public final org.objectweb.asm.Label start
public final org.objectweb.asm.Label end
public final java.util.List<org.objectweb.asm.Label> range
public org.objectweb.asm.Label getStart()
Label.public org.objectweb.asm.Label getEnd()
getStart()Label.public java.util.List<org.objectweb.asm.Label> getRange()
public boolean containsLabel(org.objectweb.asm.Label label)
label - The label to check.public boolean equals(java.lang.Object o)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic static LabelRange compute(org.objectweb.asm.tree.InsnList list, org.objectweb.asm.Label start, org.objectweb.asm.Label end, boolean exclusiveEnd)
LabelRange from the given InsnList.list - The InsnList to extract the range from.start - The first Label to be included in the range.end - The last Label to be included in the range.exclusiveEnd - If the provided end Label should be exclusive or inclusive.java.lang.IllegalStateException - If either the start or end label are
not included in the provided InsnList.public static org.objectweb.asm.Label getLabelAfter(org.objectweb.asm.tree.InsnList list,
org.objectweb.asm.Label target)
list - The InsnList to search.target - The target label to search for.@Nullable public static @Nullable LabelRange extractRange(org.objectweb.asm.tree.InsnList list)