Package com.strobel.expressions
Class LabelInfo
java.lang.Object
com.strobel.expressions.LabelInfo
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate boolean
private final boolean
private final HashSet
<LabelScopeInfo> private final CodeGenerator
private Label
private boolean
private final LabelTarget
private OpCode
private final ArrayList
<LabelScopeInfo> private LocalBuilder
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) final boolean
(package private) final boolean
(package private) final void
define
(LabelScopeInfo block) (package private) void
emitJump()
private void
(package private) final Label
getLabel()
(package private) final void
mark()
(package private) final void
(package private) final void
reference
(LabelScopeInfo block) private void
(package private) void
private void
validateJump
(LabelScopeInfo reference)
-
Field Details
-
_node
-
_label
-
_labelDefined
private boolean _labelDefined -
_value
-
_definitions
-
_references
-
_canReturn
private final boolean _canReturn -
_acrossBlockJump
private boolean _acrossBlockJump -
_opCode
-
_generator
-
-
Constructor Details
-
LabelInfo
-
-
Method Details
-
getLabel
-
canReturn
final boolean canReturn() -
canBranch
final boolean canBranch() -
reference
-
define
-
validateJump
-
validateFinish
void validateFinish() -
emitJump
void emitJump() -
storeValue
private void storeValue() -
mark
final void mark() -
markWithEmptyStack
final void markWithEmptyStack() -
ensureLabelAndValue
private void ensureLabelAndValue()
-