Uses of Class
org.benf.cfr.reader.bytecode.analysis.parse.utils.BlockIdentifier
Packages that use BlockIdentifier
Package
Description
-
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.opgraph
Fields in org.benf.cfr.reader.bytecode.analysis.opgraph declared as BlockIdentifierModifier and TypeFieldDescription(package private) BlockIdentifier
Op04StructuredStatement.StackedBlock.blockIdentifier
(package private) BlockIdentifier
Op04StructuredStatement.MutableProcessingBlockState.currentBlockIdentifier
private BlockIdentifier
Op03SimpleStatement.firstStatementInThisBlock
private BlockIdentifier
Op03SimpleStatement.thisComparisonBlock
Fields in org.benf.cfr.reader.bytecode.analysis.opgraph with type parameters of type BlockIdentifierModifier and TypeFieldDescriptionprivate Set<BlockIdentifier>
Op04StructuredStatement.blockMembership
private final Set<BlockIdentifier>
Op03SimpleStatement.containedInBlocks
private List<BlockIdentifier>
Op02WithProcessedDataAndRefs.containedInTheseBlocks
private static final Set<BlockIdentifier>
Op04StructuredStatement.EMPTY_BLOCKSET
private Set<BlockIdentifier>
Op03SimpleStatement.possibleExitsFor
private final Stack<Triplet<StructuredStatement,
BlockIdentifier, Set<Op04StructuredStatement>>> Op04StructuredStatement.ScopeDescendingTransformer.targets
Methods in org.benf.cfr.reader.bytecode.analysis.opgraph that return BlockIdentifierModifier and TypeMethodDescriptionOp03SimpleStatement.getBlockStarted()
Op04StructuredStatement.getBlockStarted()
Op03SimpleStatement.getFirstStatementInThisBlock()
private static BlockIdentifier
Op04StructuredStatement.getStartingBlocks
(Stack<BlockIdentifier> wasIn, Set<BlockIdentifier> nowIn) Op03SimpleStatement.getThisComparisonBlock()
Methods in org.benf.cfr.reader.bytecode.analysis.opgraph that return types with arguments of type BlockIdentifierModifier and TypeMethodDescriptionprivate static Set<BlockIdentifier>
Op04StructuredStatement.blockSet
(Collection<BlockIdentifier> in) private static Map<BlockIdentifier,
Integer> Op03Blocks.findFirstInBlock
(List<Op03SimpleStatement> statements, Set<BlockIdentifier> mutableMissing) Op03SimpleStatement.getBlockIdentifiers()
Op04StructuredStatement.getBlockIdentifiers()
Op04StructuredStatement.getBlockMembership()
Op03SimpleStatement.getBlocksEnded()
Op04StructuredStatement.getBlocksEnded()
Op02WithProcessedDataAndRefs.getContainedInTheseBlocks()
private static Set<BlockIdentifier>
Op04StructuredStatement.getEndingBlocks
(Stack<BlockIdentifier> wasIn, Set<BlockIdentifier> nowIn) private static Map<BlockIdentifier,
BlockIdentifier> Op03Blocks.getTryBlockAliases
(List<Op03SimpleStatement> statements) private static Map<BlockIdentifier,
BlockIdentifier> Op03Blocks.getTryBlockAliases
(List<Op03SimpleStatement> statements) Methods in org.benf.cfr.reader.bytecode.analysis.opgraph with parameters of type BlockIdentifierModifier and TypeMethodDescriptionvoid
Op03SimpleStatement.addPossibleExitFor
(BlockIdentifier ident) private boolean
Op04StructuredStatement.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier thisBlock, Vector<BlockIdentifier> currentlyIn) boolean
Op03SimpleStatement.isPossibleExitFor
(BlockIdentifier ident) void
Op03SimpleStatement.markBlock
(BlockIdentifier blockIdentifier) void
Op03SimpleStatement.markBlockStatement
(BlockIdentifier blockIdentifier, Op03SimpleStatement lastInBlock, Op03SimpleStatement blockEnd, List<Op03SimpleStatement> statements) void
Op03SimpleStatement.markFirstStatementInBlock
(BlockIdentifier blockIdentifier) void
Op04StructuredStatement.removeLastContinue
(BlockIdentifier block) (package private) void
Op03SimpleStatement.replaceBlockIfIn
(BlockIdentifier oldB, BlockIdentifier newB) void
Op03SimpleStatement.setFirstStatementInThisBlock
(BlockIdentifier firstStatementInThisBlock) Method parameters in org.benf.cfr.reader.bytecode.analysis.opgraph with type arguments of type BlockIdentifierModifier and TypeMethodDescriptionprivate static void
Op03Blocks.applyKnownBlocksHeuristic
(List<Op03Blocks.Block3> blocks, Map<BlockIdentifier, BlockIdentifier> tryBlockAliases) private static void
Op03Blocks.applyKnownBlocksHeuristic
(List<Op03Blocks.Block3> blocks, Map<BlockIdentifier, BlockIdentifier> tryBlockAliases) private static Set<BlockIdentifier>
Op04StructuredStatement.blockSet
(Collection<BlockIdentifier> in) private boolean
Op04StructuredStatement.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier thisBlock, Vector<BlockIdentifier> currentlyIn) protected StructuredStatement
Op04StructuredStatement.NamedBreakRemover.doTransform
(StructuredStatement statement, Stack<Triplet<StructuredStatement, BlockIdentifier, Set<Op04StructuredStatement>>> targets, StructuredScope scope) protected abstract StructuredStatement
Op04StructuredStatement.ScopeDescendingTransformer.doTransform
(StructuredStatement statement, Stack<Triplet<StructuredStatement, BlockIdentifier, Set<Op04StructuredStatement>>> targets, StructuredScope scope) protected StructuredStatement
Op04StructuredStatement.StructuredGotoRemover.doTransform
(StructuredStatement statement, Stack<Triplet<StructuredStatement, BlockIdentifier, Set<Op04StructuredStatement>>> targets, StructuredScope scope) private static Map<BlockIdentifier,
Integer> Op03Blocks.findFirstInBlock
(List<Op03SimpleStatement> statements, Set<BlockIdentifier> mutableMissing) private static Set<BlockIdentifier>
Op04StructuredStatement.getEndingBlocks
(Stack<BlockIdentifier> wasIn, Set<BlockIdentifier> nowIn) private static Set<BlockIdentifier>
Op04StructuredStatement.getEndingBlocks
(Stack<BlockIdentifier> wasIn, Set<BlockIdentifier> nowIn) private static BlockIdentifier
Op04StructuredStatement.getStartingBlocks
(Stack<BlockIdentifier> wasIn, Set<BlockIdentifier> nowIn) private static BlockIdentifier
Op04StructuredStatement.getStartingBlocks
(Stack<BlockIdentifier> wasIn, Set<BlockIdentifier> nowIn) void
Op04StructuredStatement.informBlockMembership
(Vector<BlockIdentifier> currentlyIn) private static void
Op04StructuredStatement.processEndingBlocks
(Set<BlockIdentifier> endOfTheseBlocks, Stack<BlockIdentifier> blocksCurrentlyIn, Stack<Op04StructuredStatement.StackedBlock> stackedBlocks, Op04StructuredStatement.MutableProcessingBlockState mutableProcessingBlockState) private static void
Op04StructuredStatement.processEndingBlocks
(Set<BlockIdentifier> endOfTheseBlocks, Stack<BlockIdentifier> blocksCurrentlyIn, Stack<Op04StructuredStatement.StackedBlock> stackedBlocks, Op04StructuredStatement.MutableProcessingBlockState mutableProcessingBlockState) private static void
Op03Blocks.removeAliases
(Set<BlockIdentifier> in, Map<BlockIdentifier, BlockIdentifier> aliases) private static void
Op03Blocks.removeAliases
(Set<BlockIdentifier> in, Map<BlockIdentifier, BlockIdentifier> aliases) private static void
Op03Blocks.removeAliases
(Set<BlockIdentifier> in, Map<BlockIdentifier, BlockIdentifier> aliases) private static void
Op03Blocks.stripTryBlockAliases
(List<Op03SimpleStatement> out, Map<BlockIdentifier, BlockIdentifier> tryBlockAliases) private static void
Op03Blocks.stripTryBlockAliases
(List<Op03SimpleStatement> out, Map<BlockIdentifier, BlockIdentifier> tryBlockAliases) private static StructuredStatement
Op04StructuredStatement.transformStructuredGotoWithScope
(StructuredScope scope, StructuredStatement stm, Stack<Triplet<StructuredStatement, BlockIdentifier, Set<Op04StructuredStatement>>> breaktargets) Constructors in org.benf.cfr.reader.bytecode.analysis.opgraph with parameters of type BlockIdentifierModifierConstructorDescriptionprivate
StackedBlock
(BlockIdentifier blockIdentifier, LinkedList<Op04StructuredStatement> statements, Op04StructuredStatement outerStart) Constructor parameters in org.benf.cfr.reader.bytecode.analysis.opgraph with type arguments of type BlockIdentifierModifierConstructorDescriptionOp03SimpleStatement
(Set<BlockIdentifier> containedIn, Statement statement, InstrIndex index) Op03SimpleStatement
(Set<BlockIdentifier> containedIn, Statement statement, SSAIdentifiers<LValue> ssaIdentifiers, InstrIndex index) Op04StructuredStatement
(InstrIndex instrIndex, Collection<BlockIdentifier> blockMembership, StructuredStatement structuredStatement) -
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters
Fields in org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters declared as BlockIdentifierModifier and TypeFieldDescription(package private) final BlockIdentifier
LoopIdentifier.LoopResult.blockIdentifier
private final BlockIdentifier
Misc.GraphVisitorBlockReachable.blockIdentifier
(package private) BlockIdentifier
ExceptionRewriters.SingleExceptionAddressing.catchBlockIdent
(package private) BlockIdentifier
ExceptionRewriters.SingleExceptionAddressing.tryBlockIdent
Methods in org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters that return BlockIdentifierModifier and TypeMethodDescriptionprivate static BlockIdentifier
LoopIdentifier.considerAsDoLoopStart
(Op03SimpleStatement start, List<Op03SimpleStatement> statements, BlockIdentifierFactory blockIdentifierFactory, Map<BlockIdentifier, Op03SimpleStatement> postBlockCache) private static BlockIdentifier
LoopIdentifier.considerAsWhileLoopStart
(Method method, Op03SimpleStatement start, List<Op03SimpleStatement> statements, BlockIdentifierFactory blockIdentifierFactory, Map<BlockIdentifier, Op03SimpleStatement> postBlockCache) (package private) static BlockIdentifier
Misc.findOuterBlock
(BlockIdentifier b1, BlockIdentifier b2, List<Op03SimpleStatement> statements) private static BlockIdentifier
TryRewriter.getBlockStart
(Statement statement) Methods in org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters that return types with arguments of type BlockIdentifierModifier and TypeMethodDescription(package private) static Set<BlockIdentifier>
FinallyRewriter.getBlocksAffectedByFinally
(List<Op03SimpleStatement> statements) private static Map<BlockIdentifier,
Op03SimpleStatement> ExceptionRewriters.getFirstByBlock
(List<Op03SimpleStatement> in) Methods in org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters with parameters of type BlockIdentifierModifier and TypeMethodDescriptionprivate static void
SwitchReplacer.buildSwitchCases
(Op03SimpleStatement swatch, List<Op03SimpleStatement> targets, BlockIdentifier switchBlockIdentifier, List<Op03SimpleStatement> in, boolean forcedOrder) (package private) static boolean
LoopIdentifier.containsTargetInBlock
(Op03SimpleStatement stm, BlockIdentifier block) private List<Op03SimpleStatement>
JumpsIntoLoopCloneRewriter.copyBlock
(Op03SimpleStatement stm, Op03SimpleStatement caller, Op03SimpleStatement start, Op03SimpleStatement end, Set<Op03SimpleStatement> valid, BlockIdentifier containedIn, Set<Op03SimpleStatement> addSources, Map<Op03SimpleStatement, Op03SimpleStatement> orig2copy) WhileRewriter.findForInvariants
(Op03SimpleStatement start, BlockIdentifier whileLoop) (package private) static BlockIdentifier
Misc.findOuterBlock
(BlockIdentifier b1, BlockIdentifier b2, List<Op03SimpleStatement> statements) (package private) static Set<Op03SimpleStatement>
Misc.GraphVisitorBlockReachable.getBlockReachable
(Op03SimpleStatement start, BlockIdentifier blockIdentifier) (package private) static Pair<Set<Op03SimpleStatement>,
Set<Op03SimpleStatement>> Misc.GraphVisitorBlockReachable.getBlockReachableAndExits
(Op03SimpleStatement start, BlockIdentifier blockIdentifier) (package private) static Op03SimpleStatement
LoopIdentifier.getCloseFwdJumpInto
(Op03SimpleStatement start, BlockIdentifier blockIdentifier, List<Op03SimpleStatement> statements, int startIdx, int lastIdx) private static Op03SimpleStatement
WhileRewriter.getForInvariant
(Op03SimpleStatement start, LValue invariant, BlockIdentifier whileLoop) private static Op03SimpleStatement
TryRewriter.getLastContiguousBlockStatement
(BlockIdentifier blockIdentifier, List<Op03SimpleStatement> in, Op03SimpleStatement preBlock) private static LinearScannedBlock
ExceptionRewriters.getLinearScannedBlock
(List<Op03SimpleStatement> statements, int idx, Op03SimpleStatement stm, BlockIdentifier blockIdentifier, boolean prefix) private static List<Op03SimpleStatement>
WhileRewriter.getMutations
(List<Op03SimpleStatement> backSources, LValue loopVariable, BlockIdentifier whileBlockIdentifier) private Op03SimpleStatement
JumpsIntoLoopCloneRewriter.getPossLast
(Op03SimpleStatement stm, BlockIdentifier ident) private static void
ExceptionRewriters.identifyCatchBlock
(Op03SimpleStatement start, BlockIdentifier blockIdentifier, List<Op03SimpleStatement> statements) private static Op03SimpleStatement
ExceptionRewriters.insertBlockPadding
(String comment, Op03SimpleStatement insertAfter, Op03SimpleStatement insertBefore, BlockIdentifier blockIdentifier, List<Op03SimpleStatement> statements) (package private) static void
Misc.markWholeBlock
(List<Op03SimpleStatement> statements, BlockIdentifier blockIdentifier) private void
JumpsIntoLoopCloneRewriter.refactorDo
(List<Op03SimpleStatement> addThese, Op03SimpleStatement stm, BlockIdentifier ident) private void
JumpsIntoLoopCloneRewriter.refactorWhile
(List<Op03SimpleStatement> addThese, Op03SimpleStatement stm, BlockIdentifier ident) private static void
LoopIdentifier.rewriteEndLoopOverlapStatement
(Op03SimpleStatement oldEnd, BlockIdentifier loopBlock) private static void
SwitchReplacer.tightenJumpsToTerminal
(List<Op03SimpleStatement> statements, BlockIdentifier switchBlock, Op03SimpleStatement following, Op03SimpleStatement followingTrans) private static int
LoopIdentifier.validateAndAssignLoopIdentifier
(List<Op03SimpleStatement> statements, int idxTestStart, int idxAfterEnd, BlockIdentifier blockIdentifier, Op03SimpleStatement start) private static boolean
SynchronizedRewriter.verifyLinearBlock
(Op03SimpleStatement current, BlockIdentifier block, int num) private GraphVisitor<Op03SimpleStatement>
JumpsIntoLoopCloneRewriter.visitCandidates
(BlockIdentifier blockIdent, Op03SimpleStatement possLast, Map<Op03SimpleStatement, Op03SimpleStatement> candidates) Method parameters in org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters with type arguments of type BlockIdentifierModifier and TypeMethodDescriptionprivate static void
ClassifyGotos.classifyCatchLeaveGoto
(Op03SimpleStatement gotoStm, int idx, Set<BlockIdentifier> tryBlockIdents, Map<BlockIdentifier, Op03SimpleStatement> tryStatementsByBlock, Map<BlockIdentifier, List<BlockIdentifier>> catchStatementByBlock, Map<BlockIdentifier, Set<BlockIdentifier>> catchBlockToTryBlocks, List<Op03SimpleStatement> in) private static void
ClassifyGotos.classifyCatchLeaveGoto
(Op03SimpleStatement gotoStm, int idx, Set<BlockIdentifier> tryBlockIdents, Map<BlockIdentifier, Op03SimpleStatement> tryStatementsByBlock, Map<BlockIdentifier, List<BlockIdentifier>> catchStatementByBlock, Map<BlockIdentifier, Set<BlockIdentifier>> catchBlockToTryBlocks, List<Op03SimpleStatement> in) private static boolean
ClassifyGotos.classifyTryCatchLeaveGoto
(Op03SimpleStatement gotoStm, Set<BlockIdentifier> blocks, int idx, Set<BlockIdentifier> tryBlockIdents, Map<BlockIdentifier, Op03SimpleStatement> tryStatementsByBlock, Map<BlockIdentifier, List<BlockIdentifier>> catchStatementByBlock, List<Op03SimpleStatement> in) private static boolean
ClassifyGotos.classifyTryCatchLeaveGoto
(Op03SimpleStatement gotoStm, Set<BlockIdentifier> blocks, int idx, Set<BlockIdentifier> tryBlockIdents, Map<BlockIdentifier, Op03SimpleStatement> tryStatementsByBlock, Map<BlockIdentifier, List<BlockIdentifier>> catchStatementByBlock, List<Op03SimpleStatement> in) private static boolean
ClassifyGotos.classifyTryLeaveGoto
(Op03SimpleStatement gotoStm, int idx, Set<BlockIdentifier> tryBlockIdents, Map<BlockIdentifier, Op03SimpleStatement> tryStatementsByBlock, Map<BlockIdentifier, List<BlockIdentifier>> catchStatementByBlock, List<Op03SimpleStatement> in) private static boolean
ClassifyGotos.classifyTryLeaveGoto
(Op03SimpleStatement gotoStm, int idx, Set<BlockIdentifier> tryBlockIdents, Map<BlockIdentifier, Op03SimpleStatement> tryStatementsByBlock, Map<BlockIdentifier, List<BlockIdentifier>> catchStatementByBlock, List<Op03SimpleStatement> in) private static BlockIdentifier
LoopIdentifier.considerAsDoLoopStart
(Op03SimpleStatement start, List<Op03SimpleStatement> statements, BlockIdentifierFactory blockIdentifierFactory, Map<BlockIdentifier, Op03SimpleStatement> postBlockCache) private static BlockIdentifier
LoopIdentifier.considerAsWhileLoopStart
(Method method, Op03SimpleStatement start, List<Op03SimpleStatement> statements, BlockIdentifierFactory blockIdentifierFactory, Map<BlockIdentifier, Op03SimpleStatement> postBlockCache) private static boolean
ConditionalRewriter.detectAndRemarkJumpIntoOther
(Set<BlockIdentifier> blocksAtStart, Set<BlockIdentifier> blocksAtEnd, Op03SimpleStatement realEnd, Op03SimpleStatement ifStatement) private static void
LoopIdentifier.fixLoopOverlaps
(List<Op03SimpleStatement> statements, List<LoopIdentifier.LoopResult> loopResults, Set<BlockIdentifier> relevantBlocks) Constructors in org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters with parameters of type BlockIdentifierModifierConstructorDescriptionprivate
GraphVisitorBlockReachable
(Op03SimpleStatement start, BlockIdentifier blockIdentifier) private
LoopResult
(BlockIdentifier blockIdentifier, Op03SimpleStatement blockStart) private
SingleExceptionAddressing
(BlockIdentifier tryBlockIdent, BlockIdentifier catchBlockIdent, LinearScannedBlock tryBlock, LinearScannedBlock catchBlock) -
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.opgraph.op4rewriters
Fields in org.benf.cfr.reader.bytecode.analysis.opgraph.op4rewriters declared as BlockIdentifierModifier and TypeFieldDescriptionprivate BlockIdentifier
SwitchExpressionRewriter.SwitchExpressionSearcher.blockIdentifier
private BlockIdentifier
SwitchExpressionRewriter.SwitchExpressionTransformer.blockIdentifier
private BlockIdentifier
AssertRewriter.ControlFlowSwitchExpressionTransformer.falseBlock
private BlockIdentifier
AssertRewriter.ControlFlowSwitchExpressionTransformer.trueBlock
Methods in org.benf.cfr.reader.bytecode.analysis.opgraph.op4rewriters with parameters of type BlockIdentifierModifier and TypeMethodDescriptionprivate Expression
SwitchExpressionRewriter.extractSwitchEntry
(LValue target, BlockIdentifier blockIdentifier, Op04StructuredStatement body, List<Pair<Op04StructuredStatement, StructuredStatement>> replacements, boolean last) private Pair<StructuredCase,
Expression> SwitchExpressionRewriter.extractSwitchEntryPair
(LValue target, BlockIdentifier blockIdentifier, Op04StructuredStatement item, List<Pair<Op04StructuredStatement, StructuredStatement>> replacements, boolean last) private LValue
SwitchExpressionRewriter.extractSwitchLValue
(BlockIdentifier blockIdentifier, Op04StructuredStatement item, boolean last) private SwitchExpression.Branch
AssertRewriter.SwitchAssertUseCollector.getBranch
(BlockIdentifier outer, BlockIdentifier swiBlockIdentifier, Map<Op04StructuredStatement, StructuredExpressionYield> replacements, Op04StructuredStatement statement, boolean addYieldTrue) private boolean
AssertRewriter.SwitchAssertUseCollector.getBranches
(BlockIdentifier outer, BlockIdentifier swiBlockIdentifier, Block swBodyBlock, List<SwitchExpression.Branch> branches, Map<Op04StructuredStatement, StructuredExpressionYield> replacements, boolean addYieldTrue) private StructuredStatement
AssertRewriter.SwitchAssertUseCollector.processSwitchAndThrow
(StructuredStatement ifStm, BlockIdentifier outer, BlockIdentifier swiBlockIdentifier, Block swBodyBlock, StructuredSwitch struSwi, Op04StructuredStatement throwStm) private StructuredStatement
AssertRewriter.SwitchAssertUseCollector.processSwitchEmbeddedThrow
(StructuredStatement ifStm, BlockIdentifier outer, Block swBodyBlock, Op04StructuredStatement switchStm, StructuredSwitch struSwi) private List<Op04StructuredStatement>
AssertRewriter.SwitchAssertUseCollector.tryCombineSwitch
(List<Op04StructuredStatement> content, BlockIdentifier outer, BlockIdentifier swiBlockIdentifier, Block swBodyBlock) Constructors in org.benf.cfr.reader.bytecode.analysis.opgraph.op4rewriters with parameters of type BlockIdentifierModifierConstructorDescription(package private)
AssertionTrackingControlFlowSwitchExpressionTransformer
(BlockIdentifier trueBlock, BlockIdentifier falseBlock, Map<Op04StructuredStatement, StructuredExpressionYield> replacements) private
ControlFlowSwitchExpressionTransformer
(BlockIdentifier trueBlock, BlockIdentifier falseBlock, Map<Op04StructuredStatement, StructuredExpressionYield> replacements) (package private)
SwitchExpressionSearcher
(BlockIdentifier blockIdentifier) private
SwitchExpressionTransformer
(LValue target, BlockIdentifier blockIdentifier, List<Pair<Op04StructuredStatement, StructuredStatement>> replacements, boolean last) -
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.opgraph.op4rewriters.transformers
Methods in org.benf.cfr.reader.bytecode.analysis.opgraph.op4rewriters.transformers with parameters of type BlockIdentifierModifier and TypeMethodDescriptionprivate void
InfiniteAssertRewriter.replaceThrow
(Op04StructuredStatement thrw, Op04StructuredStatement whil, BlockIdentifier ident, ConditionalExpression cond) -
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.parse
Methods in org.benf.cfr.reader.bytecode.analysis.parse that return BlockIdentifierMethods in org.benf.cfr.reader.bytecode.analysis.parse that return types with arguments of type BlockIdentifierModifier and TypeMethodDescriptionStatementContainer.getBlockIdentifiers()
StatementContainer.getBlocksEnded()
-
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.parse.statement
Fields in org.benf.cfr.reader.bytecode.analysis.parse.statement declared as BlockIdentifierModifier and TypeFieldDescriptionprivate final BlockIdentifier
AnonBreakTarget.blockIdentifier
private final BlockIdentifier
DoStatement.blockIdentifier
private BlockIdentifier
ForIterStatement.blockIdentifier
private BlockIdentifier
ForStatement.blockIdentifier
private final BlockIdentifier
MonitorEnterStatement.blockIdentifier
private BlockIdentifier
WhileStatement.blockIdentifier
private final BlockIdentifier
CaseStatement.caseBlock
private BlockIdentifier
CatchStatement.catchBlockIdent
private BlockIdentifier
FinallyStatement.finallyBlockIdent
private BlockIdentifier
IfStatement.knownElseBlock
private BlockIdentifier
IfStatement.knownIfBlock
private final BlockIdentifier
CaseStatement.switchBlock
private final BlockIdentifier
SwitchStatement.switchBlock
Methods in org.benf.cfr.reader.bytecode.analysis.parse.statement that return BlockIdentifierModifier and TypeMethodDescriptionAnonBreakTarget.getBlockIdentifier()
DoStatement.getBlockIdentifier()
ForIterStatement.getBlockIdentifier()
ForStatement.getBlockIdentifier()
MonitorEnterStatement.getBlockIdentifier()
TryStatement.getBlockIdentifier()
WhileStatement.getBlockIdentifier()
CaseStatement.getCaseBlock()
CatchStatement.getCatchBlockIdent()
FinallyStatement.getFinallyBlockIdent()
IfStatement.getKnownIfBlock()
CaseStatement.getSwitchBlock()
SwitchStatement.getSwitchBlock()
protected BlockIdentifier
GotoStatement.getTargetStartBlock()
Methods in org.benf.cfr.reader.bytecode.analysis.parse.statement that return types with arguments of type BlockIdentifierMethods in org.benf.cfr.reader.bytecode.analysis.parse.statement with parameters of type BlockIdentifierModifier and TypeMethodDescriptionRawSwitchStatement.getSwitchStatement
(BlockIdentifier blockIdentifier) boolean
CatchStatement.hasCatchBlockFor
(BlockIdentifier tryBlockIdent) void
CatchStatement.removeCatchBlockFor
(BlockIdentifier tryBlockIdent) void
IfStatement.replaceWithWhileLoopEnd
(BlockIdentifier blockIdentifier) void
IfStatement.replaceWithWhileLoopStart
(BlockIdentifier blockIdentifier) void
CatchStatement.setCatchBlockIdent
(BlockIdentifier catchBlockIdent) void
IfStatement.setKnownBlocks
(BlockIdentifier ifBlock, BlockIdentifier elseBlock) Constructors in org.benf.cfr.reader.bytecode.analysis.parse.statement with parameters of type BlockIdentifierModifierConstructorDescriptionAnonBreakTarget
(BlockIdentifier blockIdentifier) CaseStatement
(BytecodeLoc loc, List<Expression> values, InferredJavaType caseType, BlockIdentifier switchBlock, BlockIdentifier caseBlock) DoStatement
(BytecodeLoc loc, BlockIdentifier blockIdentifier) FinallyStatement
(BytecodeLoc loc, BlockIdentifier finallyBlockIdent) ForIterStatement
(BytecodeLoc loc, BlockIdentifier blockIdentifier, LValue iterator, Expression list, LValue hiddenList) (package private)
ForStatement
(BytecodeLoc loc, ConditionalExpression conditionalExpression, BlockIdentifier blockIdentifier, AssignmentSimple initial, List<AbstractAssignmentExpression> assignments) MonitorEnterStatement
(BytecodeLoc loc, Expression monitor, BlockIdentifier blockIdentifier) (package private)
SwitchStatement
(BytecodeLoc loc, Expression switchOn, BlockIdentifier switchBlock) WhileStatement
(BytecodeLoc loc, ConditionalExpression conditionalExpression, BlockIdentifier blockIdentifier) -
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.parse.utils
Methods in org.benf.cfr.reader.bytecode.analysis.parse.utils that return BlockIdentifierModifier and TypeMethodDescriptionstatic BlockIdentifier
BlockIdentifier.getInnermostBreakable
(List<BlockIdentifier> blocks) BlockIdentifierFactory.getNextBlockIdentifier
(BlockType blockType) static BlockIdentifier
BlockIdentifier.getOutermostContainedIn
(Set<BlockIdentifier> endingBlocks, Set<BlockIdentifier> blocksInAtThisPoint) static BlockIdentifier
BlockIdentifier.getOutermostEnding
(List<BlockIdentifier> blocks, Set<BlockIdentifier> blocksEnding) Methods in org.benf.cfr.reader.bytecode.analysis.parse.utils with parameters of type BlockIdentifierModifier and TypeMethodDescriptionstatic boolean
BlockIdentifier.blockIsOneOf
(BlockIdentifier needle, Set<BlockIdentifier> haystack) int
BlockIdentifier.compareTo
(BlockIdentifier blockIdentifier) Method parameters in org.benf.cfr.reader.bytecode.analysis.parse.utils with type arguments of type BlockIdentifierModifier and TypeMethodDescriptionstatic boolean
BlockIdentifier.blockIsOneOf
(BlockIdentifier needle, Set<BlockIdentifier> haystack) static BlockIdentifier
BlockIdentifier.getInnermostBreakable
(List<BlockIdentifier> blocks) static BlockIdentifier
BlockIdentifier.getOutermostContainedIn
(Set<BlockIdentifier> endingBlocks, Set<BlockIdentifier> blocksInAtThisPoint) static BlockIdentifier
BlockIdentifier.getOutermostEnding
(List<BlockIdentifier> blocks, Set<BlockIdentifier> blocksEnding) static BlockIdentifier
BlockIdentifier.getOutermostEnding
(List<BlockIdentifier> blocks, Set<BlockIdentifier> blocksEnding) -
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.parse.utils.finalhelp
Fields in org.benf.cfr.reader.bytecode.analysis.parse.utils.finalhelp with type parameters of type BlockIdentifierModifier and TypeFieldDescriptionprivate Set<BlockIdentifier>
PeerTries.guessPeerTryBlocks
private Map<BlockIdentifier,
Op03SimpleStatement> PeerTries.guessPeerTryMap
Methods in org.benf.cfr.reader.bytecode.analysis.parse.utils.finalhelp that return types with arguments of type BlockIdentifierModifier and TypeMethodDescription(package private) Set<BlockIdentifier>
PeerTries.getGuessPeerTryBlocks()
(package private) Map<BlockIdentifier,
Op03SimpleStatement> PeerTries.getGuessPeerTryMap()
Constructor parameters in org.benf.cfr.reader.bytecode.analysis.parse.utils.finalhelp with type arguments of type BlockIdentifier -
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.parse.wildcard
Subclasses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.parse.wildcardFields in org.benf.cfr.reader.bytecode.analysis.parse.wildcard declared as BlockIdentifierModifier and TypeFieldDescriptionprivate BlockIdentifier
WildcardMatch.BlockIdentifierWildcard.matchedValue
Methods in org.benf.cfr.reader.bytecode.analysis.parse.wildcard that return BlockIdentifier -
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.structured
Methods in org.benf.cfr.reader.bytecode.analysis.structured that return BlockIdentifierModifier and TypeMethodDescriptionStructuredStatement.getBreakableBlockOrNull()
StructuredScope.getContinueBlock()
Methods in org.benf.cfr.reader.bytecode.analysis.structured with parameters of type BlockIdentifierModifier and TypeMethodDescriptionStructuredStatement.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) Method parameters in org.benf.cfr.reader.bytecode.analysis.structured with type arguments of type BlockIdentifierModifier and TypeMethodDescriptionStructuredStatement.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) StructuredStatement.informBlockHeirachy
(Vector<BlockIdentifier> blockIdentifiers) -
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.structured.statement
Fields in org.benf.cfr.reader.bytecode.analysis.structured.statement declared as BlockIdentifierModifier and TypeFieldDescriptionprotected final BlockIdentifier
AbstractStructuredConditionalLoopStatement.block
private final BlockIdentifier
StructuredFor.block
private final BlockIdentifier
StructuredIter.block
private final BlockIdentifier
UnstructuredAnonymousBreak.blockEnding
private BlockIdentifier
Block.blockIdentifier
private final BlockIdentifier
StructuredCase.blockIdentifier
private final BlockIdentifier
StructuredSwitch.blockIdentifier
private BlockIdentifier
UnstructuredAnonBreakTarget.blockIdentifier
private final BlockIdentifier
UnstructuredCase.blockIdentifier
private final BlockIdentifier
UnstructuredCatch.blockIdentifier
private BlockIdentifier
UnstructuredDo.blockIdentifier
private final BlockIdentifier
UnstructuredFinally.blockIdentifier
private BlockIdentifier
UnstructuredFor.blockIdentifier
private BlockIdentifier
UnstructuredIter.blockIdentifier
private final BlockIdentifier
UnstructuredSwitch.blockIdentifier
private BlockIdentifier
UnstructuredSynchronized.blockIdentifier
private BlockIdentifier
UnstructuredWhile.blockIdentifier
private final BlockIdentifier
StructuredBreak.breakBlock
private final BlockIdentifier
StructuredContinue.continueTgt
private final BlockIdentifier
UnstructuredContinue.continueTgt
private BlockIdentifier
UnstructuredIf.knownElseBlock
private BlockIdentifier
UnstructuredIf.knownIfBlock
private final BlockIdentifier
StructuredTry.tryBlockIdentifier
Fields in org.benf.cfr.reader.bytecode.analysis.structured.statement with type parameters of type BlockIdentifierModifier and TypeFieldDescriptionprivate Set<BlockIdentifier>
UnstructuredWhile.blocksEndedAfter
private final Set<BlockIdentifier>
UnstructuredBreak.blocksEnding
private final Set<BlockIdentifier>
StructuredCatch.possibleTryBlocks
Methods in org.benf.cfr.reader.bytecode.analysis.structured.statement that return BlockIdentifierModifier and TypeMethodDescriptionAbstractStructuredConditionalLoopStatement.getBlock()
StructuredFor.getBlock()
StructuredCase.getBlockIdentifier()
StructuredSwitch.getBlockIdentifier()
UnstructuredAnonBreakTarget.getBlockIdentifier()
AbstractStructuredConditionalLoopStatement.getBreakableBlockOrNull()
AbstractStructuredStatement.getBreakableBlockOrNull()
AbstractUnStructuredStatement.getBreakableBlockOrNull()
Block.getBreakableBlockOrNull()
StructuredFor.getBreakableBlockOrNull()
StructuredIter.getBreakableBlockOrNull()
StructuredSwitch.getBreakableBlockOrNull()
StructuredBreak.getBreakBlock()
abstract BlockIdentifier
AbstractStructuredContinue.getContinueTgt()
StructuredContinue.getContinueTgt()
UnstructuredContinue.getContinueTgt()
StructuredTry.getTryBlockIdentifier()
Methods in org.benf.cfr.reader.bytecode.analysis.structured.statement that return types with arguments of type BlockIdentifierMethods in org.benf.cfr.reader.bytecode.analysis.structured.statement with parameters of type BlockIdentifierModifier and TypeMethodDescriptionAbstractStructuredStatement.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredCase.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredCatch.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredDo.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredFinally.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredFor.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredIf.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredIter.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredSwitch.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredSynchronized.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredTry.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredWhile.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) StructuredDo.create
(ConditionalExpression condition, Op04StructuredStatement body, BlockIdentifier block) boolean
Block.removeLastContinue
(BlockIdentifier block) (package private) StructuredStatement
UnstructuredAnonymousBreak.tryExplicitlyPlaceInBlock
(BlockIdentifier block) Method parameters in org.benf.cfr.reader.bytecode.analysis.structured.statement with type arguments of type BlockIdentifierModifier and TypeMethodDescriptionAbstractStructuredStatement.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredCase.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredCatch.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredDo.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredFinally.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredFor.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredIf.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredIter.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredSwitch.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredSynchronized.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredTry.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) UnstructuredWhile.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) AbstractStructuredStatement.informBlockHeirachy
(Vector<BlockIdentifier> blockIdentifiers) StructuredAssert.informBlockHeirachy
(Vector<BlockIdentifier> blockIdentifiers) StructuredIf.informBlockHeirachy
(Vector<BlockIdentifier> blockIdentifiers) UnstructuredAnonymousBreak.informBlockHeirachy
(Vector<BlockIdentifier> blockIdentifiers) UnstructuredBreak.informBlockHeirachy
(Vector<BlockIdentifier> blockIdentifiers) UnstructuredContinue.informBlockHeirachy
(Vector<BlockIdentifier> blockIdentifiers) UnstructuredWhile.informBlockHeirachy
(Vector<BlockIdentifier> blockIdentifiers) StructuredBreak.maybeTightenToLocal
(Stack<Triplet<StructuredStatement, BlockIdentifier, Set<Op04StructuredStatement>>> scopes) Constructors in org.benf.cfr.reader.bytecode.analysis.structured.statement with parameters of type BlockIdentifierModifierConstructorDescription(package private)
AbstractStructuredConditionalLoopStatement
(BytecodeLoc loc, ConditionalExpression condition, BlockIdentifier block, Op04StructuredStatement body) Block
(LinkedList<Op04StructuredStatement> containedStatements, boolean indenting, BlockIdentifier blockIdentifier) StructuredBreak
(BytecodeLoc loc, BlockIdentifier breakBlock, boolean localBreak) StructuredCase
(BytecodeLoc loc, List<Expression> values, InferredJavaType inferredJavaTypeOfSwitch, Op04StructuredStatement body, BlockIdentifier blockIdentifier) StructuredCase
(BytecodeLoc loc, List<Expression> values, InferredJavaType inferredJavaTypeOfSwitch, Op04StructuredStatement body, BlockIdentifier blockIdentifier, boolean enumSwitch) (package private)
StructuredContinue
(BytecodeLoc loc, BlockIdentifier continueTgt, boolean localContinue) private
StructuredDo
(ConditionalExpression condition, Op04StructuredStatement body, BlockIdentifier block) StructuredFor
(BytecodeLoc loc, ConditionalExpression condition, AssignmentSimple initial, List<AbstractAssignmentExpression> assignments, Op04StructuredStatement body, BlockIdentifier block) (package private)
StructuredIter
(BytecodeLoc loc, BlockIdentifier block, LValue iterator, Expression list, Op04StructuredStatement body) StructuredSwitch
(BytecodeLoc loc, Expression switchOn, Op04StructuredStatement body, BlockIdentifier blockIdentifier) StructuredSwitch
(BytecodeLoc loc, Expression switchOn, Op04StructuredStatement body, BlockIdentifier blockIdentifier, boolean safeExpression) StructuredTry
(Op04StructuredStatement tryBlock, BlockIdentifier tryBlockIdentifier) StructuredWhile
(ConditionalExpression condition, Op04StructuredStatement body, BlockIdentifier block) UnstructuredAnonBreakTarget
(BlockIdentifier blockIdentifier) UnstructuredAnonymousBreak
(BytecodeLoc loc, BlockIdentifier blockEnding) UnstructuredCase
(List<Expression> values, InferredJavaType caseType, BlockIdentifier blockIdentifier) UnstructuredCatch
(List<ExceptionGroup.Entry> exceptions, BlockIdentifier blockIdentifier, LValue catching) UnstructuredContinue
(BytecodeLoc loc, BlockIdentifier continueTgt) UnstructuredDo
(BlockIdentifier blockIdentifier) UnstructuredFinally
(BlockIdentifier blockIdentifier) UnstructuredFor
(BytecodeLoc loc, ConditionalExpression condition, BlockIdentifier blockIdentifier, AssignmentSimple initial, List<AbstractAssignmentExpression> assignments) UnstructuredIf
(BytecodeLoc loc, ConditionalExpression conditionalExpression, BlockIdentifier knownIfBlock, BlockIdentifier knownElseBlock) UnstructuredIter
(BytecodeLoc loc, BlockIdentifier blockIdentifier, LValue iterator, Expression list) UnstructuredSwitch
(BytecodeLoc loc, Expression switchOn, BlockIdentifier blockIdentifier, boolean safeExpression) UnstructuredSynchronized
(BytecodeLoc loc, Expression monitor, BlockIdentifier blockIdentifier) UnstructuredWhile
(BytecodeLoc loc, ConditionalExpression condition, BlockIdentifier blockIdentifier, Set<BlockIdentifier> blocksEndedAfter) Constructor parameters in org.benf.cfr.reader.bytecode.analysis.structured.statement with type arguments of type BlockIdentifierModifierConstructorDescriptionStructuredCatch
(Collection<JavaRefTypeInstance> catchTypes, Op04StructuredStatement catchBlock, LValue catching, Set<BlockIdentifier> possibleTryBlocks) UnstructuredBreak
(BytecodeLoc loc, Set<BlockIdentifier> blocksEnding) UnstructuredWhile
(BytecodeLoc loc, ConditionalExpression condition, BlockIdentifier blockIdentifier, Set<BlockIdentifier> blocksEndedAfter) -
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.structured.statement.placeholder
Methods in org.benf.cfr.reader.bytecode.analysis.structured.statement.placeholder that return BlockIdentifierMethods in org.benf.cfr.reader.bytecode.analysis.structured.statement.placeholder with parameters of type BlockIdentifierModifier and TypeMethodDescriptionAbstractPlaceholder.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) Method parameters in org.benf.cfr.reader.bytecode.analysis.structured.statement.placeholder with type arguments of type BlockIdentifierModifier and TypeMethodDescriptionAbstractPlaceholder.claimBlock
(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) AbstractPlaceholder.informBlockHeirachy
(Vector<BlockIdentifier> blockIdentifiers) -
Uses of BlockIdentifier in org.benf.cfr.reader.entities.exceptions
Fields in org.benf.cfr.reader.entities.exceptions declared as BlockIdentifierMethods in org.benf.cfr.reader.entities.exceptions that return BlockIdentifierModifier and TypeMethodDescriptionExceptionGroup.Entry.getTryBlockIdentifier()
ExceptionGroup.getTryBlockIdentifier()
Constructors in org.benf.cfr.reader.entities.exceptions with parameters of type BlockIdentifierModifierConstructorDescriptionExceptionGroup
(int bytecodeIndexFrom, BlockIdentifier blockIdentifier, ConstantPool cp)