Uses of Class
org.benf.cfr.reader.bytecode.analysis.parse.utils.BlockIdentifier
-
-
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.opgraph
Fields in org.benf.cfr.reader.bytecode.analysis.opgraph declared as BlockIdentifier Modifier and Type Field Description (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 BlockIdentifier Modifier and Type Field Description private java.util.Set<BlockIdentifier>
Op04StructuredStatement. blockMembership
private java.util.Set<BlockIdentifier>
Op03SimpleStatement. containedInBlocks
private java.util.List<BlockIdentifier>
Op02WithProcessedDataAndRefs. containedInTheseBlocks
private static java.util.Set<BlockIdentifier>
Op04StructuredStatement. EMPTY_BLOCKSET
private java.util.Set<BlockIdentifier>
Op03SimpleStatement. possibleExitsFor
private java.util.Stack<Triplet<StructuredStatement,BlockIdentifier,java.util.Set<Op04StructuredStatement>>>
Op04StructuredStatement.ScopeDescendingTransformer. targets
Methods in org.benf.cfr.reader.bytecode.analysis.opgraph that return BlockIdentifier Modifier and Type Method Description BlockIdentifier
Op03SimpleStatement. getBlockStarted()
BlockIdentifier
Op04StructuredStatement. getBlockStarted()
BlockIdentifier
Op03SimpleStatement. getFirstStatementInThisBlock()
private static BlockIdentifier
Op04StructuredStatement. getStartingBlocks(java.util.Stack<BlockIdentifier> wasIn, java.util.Set<BlockIdentifier> nowIn)
BlockIdentifier
Op03SimpleStatement. getThisComparisonBlock()
Methods in org.benf.cfr.reader.bytecode.analysis.opgraph that return types with arguments of type BlockIdentifier Modifier and Type Method Description private static java.util.Set<BlockIdentifier>
Op04StructuredStatement. blockSet(java.util.Collection<BlockIdentifier> in)
private static java.util.Map<BlockIdentifier,java.lang.Integer>
Op03Blocks. findFirstInBlock(java.util.List<Op03SimpleStatement> statements, java.util.Set<BlockIdentifier> mutableMissing)
java.util.Set<BlockIdentifier>
Op03SimpleStatement. getBlockIdentifiers()
java.util.Set<BlockIdentifier>
Op04StructuredStatement. getBlockIdentifiers()
java.util.Collection<BlockIdentifier>
Op04StructuredStatement. getBlockMembership()
java.util.Set<BlockIdentifier>
Op03SimpleStatement. getBlocksEnded()
java.util.Set<BlockIdentifier>
Op04StructuredStatement. getBlocksEnded()
java.util.List<BlockIdentifier>
Op02WithProcessedDataAndRefs. getContainedInTheseBlocks()
private static java.util.Set<BlockIdentifier>
Op04StructuredStatement. getEndingBlocks(java.util.Stack<BlockIdentifier> wasIn, java.util.Set<BlockIdentifier> nowIn)
private static java.util.Map<BlockIdentifier,BlockIdentifier>
Op03Blocks. getTryBlockAliases(java.util.List<Op03SimpleStatement> statements)
private static java.util.Map<BlockIdentifier,BlockIdentifier>
Op03Blocks. getTryBlockAliases(java.util.List<Op03SimpleStatement> statements)
Methods in org.benf.cfr.reader.bytecode.analysis.opgraph with parameters of type BlockIdentifier Modifier and Type Method Description void
Op03SimpleStatement. addPossibleExitFor(BlockIdentifier ident)
private boolean
Op04StructuredStatement. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier thisBlock, java.util.Vector<BlockIdentifier> currentlyIn)
boolean
Op03SimpleStatement. isPossibleExitFor(BlockIdentifier ident)
void
Op03SimpleStatement. markBlock(BlockIdentifier blockIdentifier)
void
Op03SimpleStatement. markBlockStatement(BlockIdentifier blockIdentifier, Op03SimpleStatement lastInBlock, Op03SimpleStatement blockEnd, java.util.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 BlockIdentifier Modifier and Type Method Description private static void
Op03Blocks. applyKnownBlocksHeuristic(java.util.List<Op03Blocks.Block3> blocks, java.util.Map<BlockIdentifier,BlockIdentifier> tryBlockAliases)
private static void
Op03Blocks. applyKnownBlocksHeuristic(java.util.List<Op03Blocks.Block3> blocks, java.util.Map<BlockIdentifier,BlockIdentifier> tryBlockAliases)
private static java.util.Set<BlockIdentifier>
Op04StructuredStatement. blockSet(java.util.Collection<BlockIdentifier> in)
private boolean
Op04StructuredStatement. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier thisBlock, java.util.Vector<BlockIdentifier> currentlyIn)
protected StructuredStatement
Op04StructuredStatement.NamedBreakRemover. doTransform(StructuredStatement statement, java.util.Stack<Triplet<StructuredStatement,BlockIdentifier,java.util.Set<Op04StructuredStatement>>> targets, StructuredScope scope)
protected abstract StructuredStatement
Op04StructuredStatement.ScopeDescendingTransformer. doTransform(StructuredStatement statement, java.util.Stack<Triplet<StructuredStatement,BlockIdentifier,java.util.Set<Op04StructuredStatement>>> targets, StructuredScope scope)
protected StructuredStatement
Op04StructuredStatement.StructuredGotoRemover. doTransform(StructuredStatement statement, java.util.Stack<Triplet<StructuredStatement,BlockIdentifier,java.util.Set<Op04StructuredStatement>>> targets, StructuredScope scope)
private static java.util.Map<BlockIdentifier,java.lang.Integer>
Op03Blocks. findFirstInBlock(java.util.List<Op03SimpleStatement> statements, java.util.Set<BlockIdentifier> mutableMissing)
private static java.util.Set<BlockIdentifier>
Op04StructuredStatement. getEndingBlocks(java.util.Stack<BlockIdentifier> wasIn, java.util.Set<BlockIdentifier> nowIn)
private static java.util.Set<BlockIdentifier>
Op04StructuredStatement. getEndingBlocks(java.util.Stack<BlockIdentifier> wasIn, java.util.Set<BlockIdentifier> nowIn)
private static BlockIdentifier
Op04StructuredStatement. getStartingBlocks(java.util.Stack<BlockIdentifier> wasIn, java.util.Set<BlockIdentifier> nowIn)
private static BlockIdentifier
Op04StructuredStatement. getStartingBlocks(java.util.Stack<BlockIdentifier> wasIn, java.util.Set<BlockIdentifier> nowIn)
void
Op04StructuredStatement. informBlockMembership(java.util.Vector<BlockIdentifier> currentlyIn)
private static void
Op04StructuredStatement. processEndingBlocks(java.util.Set<BlockIdentifier> endOfTheseBlocks, java.util.Stack<BlockIdentifier> blocksCurrentlyIn, java.util.Stack<Op04StructuredStatement.StackedBlock> stackedBlocks, Op04StructuredStatement.MutableProcessingBlockState mutableProcessingBlockState)
private static void
Op04StructuredStatement. processEndingBlocks(java.util.Set<BlockIdentifier> endOfTheseBlocks, java.util.Stack<BlockIdentifier> blocksCurrentlyIn, java.util.Stack<Op04StructuredStatement.StackedBlock> stackedBlocks, Op04StructuredStatement.MutableProcessingBlockState mutableProcessingBlockState)
private static void
Op03Blocks. removeAliases(java.util.Set<BlockIdentifier> in, java.util.Map<BlockIdentifier,BlockIdentifier> aliases)
private static void
Op03Blocks. removeAliases(java.util.Set<BlockIdentifier> in, java.util.Map<BlockIdentifier,BlockIdentifier> aliases)
private static void
Op03Blocks. removeAliases(java.util.Set<BlockIdentifier> in, java.util.Map<BlockIdentifier,BlockIdentifier> aliases)
private static void
Op03Blocks. stripTryBlockAliases(java.util.List<Op03SimpleStatement> out, java.util.Map<BlockIdentifier,BlockIdentifier> tryBlockAliases)
private static void
Op03Blocks. stripTryBlockAliases(java.util.List<Op03SimpleStatement> out, java.util.Map<BlockIdentifier,BlockIdentifier> tryBlockAliases)
private static StructuredStatement
Op04StructuredStatement. transformStructuredGotoWithScope(StructuredScope scope, StructuredStatement stm, java.util.Stack<Triplet<StructuredStatement,BlockIdentifier,java.util.Set<Op04StructuredStatement>>> breaktargets)
Constructors in org.benf.cfr.reader.bytecode.analysis.opgraph with parameters of type BlockIdentifier Constructor Description StackedBlock(BlockIdentifier blockIdentifier, java.util.LinkedList<Op04StructuredStatement> statements, Op04StructuredStatement outerStart)
Constructor parameters in org.benf.cfr.reader.bytecode.analysis.opgraph with type arguments of type BlockIdentifier Constructor Description Op03SimpleStatement(java.util.Set<BlockIdentifier> containedIn, Statement statement, InstrIndex index)
Op03SimpleStatement(java.util.Set<BlockIdentifier> containedIn, Statement statement, SSAIdentifiers<LValue> ssaIdentifiers, InstrIndex index)
Op04StructuredStatement(InstrIndex instrIndex, java.util.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 BlockIdentifier Modifier and Type Field Description (package private) BlockIdentifier
LoopIdentifier.LoopResult. blockIdentifier
private 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 BlockIdentifier Modifier and Type Method Description private static BlockIdentifier
LoopIdentifier. considerAsDoLoopStart(Op03SimpleStatement start, java.util.List<Op03SimpleStatement> statements, BlockIdentifierFactory blockIdentifierFactory, java.util.Map<BlockIdentifier,Op03SimpleStatement> postBlockCache)
private static BlockIdentifier
LoopIdentifier. considerAsWhileLoopStart(Method method, Op03SimpleStatement start, java.util.List<Op03SimpleStatement> statements, BlockIdentifierFactory blockIdentifierFactory, java.util.Map<BlockIdentifier,Op03SimpleStatement> postBlockCache)
(package private) static BlockIdentifier
Misc. findOuterBlock(BlockIdentifier b1, BlockIdentifier b2, java.util.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 BlockIdentifier Modifier and Type Method Description (package private) static java.util.Set<BlockIdentifier>
FinallyRewriter. getBlocksAffectedByFinally(java.util.List<Op03SimpleStatement> statements)
private static java.util.Map<BlockIdentifier,Op03SimpleStatement>
ExceptionRewriters. getFirstByBlock(java.util.List<Op03SimpleStatement> in)
Methods in org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters with parameters of type BlockIdentifier Modifier and Type Method Description private static void
SwitchReplacer. buildSwitchCases(Op03SimpleStatement swatch, java.util.List<Op03SimpleStatement> targets, BlockIdentifier switchBlockIdentifier, java.util.List<Op03SimpleStatement> in, boolean forcedOrder)
(package private) static boolean
LoopIdentifier. containsTargetInBlock(Op03SimpleStatement stm, BlockIdentifier block)
private java.util.List<Op03SimpleStatement>
JumpsIntoLoopCloneRewriter. copyBlock(Op03SimpleStatement stm, Op03SimpleStatement caller, Op03SimpleStatement start, Op03SimpleStatement end, java.util.Set<Op03SimpleStatement> valid, BlockIdentifier containedIn, java.util.Set<Op03SimpleStatement> addSources, java.util.Map<Op03SimpleStatement,Op03SimpleStatement> orig2copy)
private static java.util.Set<LValue>
WhileRewriter. findForInvariants(Op03SimpleStatement start, BlockIdentifier whileLoop)
(package private) static BlockIdentifier
Misc. findOuterBlock(BlockIdentifier b1, BlockIdentifier b2, java.util.List<Op03SimpleStatement> statements)
(package private) static java.util.Set<Op03SimpleStatement>
Misc.GraphVisitorBlockReachable. getBlockReachable(Op03SimpleStatement start, BlockIdentifier blockIdentifier)
(package private) static Pair<java.util.Set<Op03SimpleStatement>,java.util.Set<Op03SimpleStatement>>
Misc.GraphVisitorBlockReachable. getBlockReachableAndExits(Op03SimpleStatement start, BlockIdentifier blockIdentifier)
(package private) static Op03SimpleStatement
LoopIdentifier. getCloseFwdJumpInto(Op03SimpleStatement start, BlockIdentifier blockIdentifier, java.util.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, java.util.List<Op03SimpleStatement> in, Op03SimpleStatement preBlock)
private static LinearScannedBlock
ExceptionRewriters. getLinearScannedBlock(java.util.List<Op03SimpleStatement> statements, int idx, Op03SimpleStatement stm, BlockIdentifier blockIdentifier, boolean prefix)
private static java.util.List<Op03SimpleStatement>
WhileRewriter. getMutations(java.util.List<Op03SimpleStatement> backSources, LValue loopVariable, BlockIdentifier whileBlockIdentifier)
private Op03SimpleStatement
JumpsIntoLoopCloneRewriter. getPossLast(Op03SimpleStatement stm, BlockIdentifier ident)
private static void
ExceptionRewriters. identifyCatchBlock(Op03SimpleStatement start, BlockIdentifier blockIdentifier, java.util.List<Op03SimpleStatement> statements)
private static Op03SimpleStatement
ExceptionRewriters. insertBlockPadding(java.lang.String comment, Op03SimpleStatement insertAfter, Op03SimpleStatement insertBefore, BlockIdentifier blockIdentifier, java.util.List<Op03SimpleStatement> statements)
(package private) static void
Misc. markWholeBlock(java.util.List<Op03SimpleStatement> statements, BlockIdentifier blockIdentifier)
private void
JumpsIntoLoopCloneRewriter. refactorDo(java.util.List<Op03SimpleStatement> addThese, Op03SimpleStatement stm, BlockIdentifier ident)
private void
JumpsIntoLoopCloneRewriter. refactorWhile(java.util.List<Op03SimpleStatement> addThese, Op03SimpleStatement stm, BlockIdentifier ident)
private static void
LoopIdentifier. rewriteEndLoopOverlapStatement(Op03SimpleStatement oldEnd, BlockIdentifier loopBlock)
private static void
SwitchReplacer. tightenJumpsToTerminal(java.util.List<Op03SimpleStatement> statements, BlockIdentifier switchBlock, Op03SimpleStatement following, Op03SimpleStatement followingTrans)
private static int
LoopIdentifier. validateAndAssignLoopIdentifier(java.util.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, java.util.Map<Op03SimpleStatement,Op03SimpleStatement> candidates)
Method parameters in org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters with type arguments of type BlockIdentifier Modifier and Type Method Description private static void
ClassifyGotos. classifyCatchLeaveGoto(Op03SimpleStatement gotoStm, int idx, java.util.Set<BlockIdentifier> tryBlockIdents, java.util.Map<BlockIdentifier,Op03SimpleStatement> tryStatementsByBlock, java.util.Map<BlockIdentifier,java.util.List<BlockIdentifier>> catchStatementByBlock, java.util.Map<BlockIdentifier,java.util.Set<BlockIdentifier>> catchBlockToTryBlocks, java.util.List<Op03SimpleStatement> in)
private static void
ClassifyGotos. classifyCatchLeaveGoto(Op03SimpleStatement gotoStm, int idx, java.util.Set<BlockIdentifier> tryBlockIdents, java.util.Map<BlockIdentifier,Op03SimpleStatement> tryStatementsByBlock, java.util.Map<BlockIdentifier,java.util.List<BlockIdentifier>> catchStatementByBlock, java.util.Map<BlockIdentifier,java.util.Set<BlockIdentifier>> catchBlockToTryBlocks, java.util.List<Op03SimpleStatement> in)
private static boolean
ClassifyGotos. classifyTryCatchLeaveGoto(Op03SimpleStatement gotoStm, java.util.Set<BlockIdentifier> blocks, int idx, java.util.Set<BlockIdentifier> tryBlockIdents, java.util.Map<BlockIdentifier,Op03SimpleStatement> tryStatementsByBlock, java.util.Map<BlockIdentifier,java.util.List<BlockIdentifier>> catchStatementByBlock, java.util.List<Op03SimpleStatement> in)
private static boolean
ClassifyGotos. classifyTryCatchLeaveGoto(Op03SimpleStatement gotoStm, java.util.Set<BlockIdentifier> blocks, int idx, java.util.Set<BlockIdentifier> tryBlockIdents, java.util.Map<BlockIdentifier,Op03SimpleStatement> tryStatementsByBlock, java.util.Map<BlockIdentifier,java.util.List<BlockIdentifier>> catchStatementByBlock, java.util.List<Op03SimpleStatement> in)
private static boolean
ClassifyGotos. classifyTryLeaveGoto(Op03SimpleStatement gotoStm, int idx, java.util.Set<BlockIdentifier> tryBlockIdents, java.util.Map<BlockIdentifier,Op03SimpleStatement> tryStatementsByBlock, java.util.Map<BlockIdentifier,java.util.List<BlockIdentifier>> catchStatementByBlock, java.util.List<Op03SimpleStatement> in)
private static boolean
ClassifyGotos. classifyTryLeaveGoto(Op03SimpleStatement gotoStm, int idx, java.util.Set<BlockIdentifier> tryBlockIdents, java.util.Map<BlockIdentifier,Op03SimpleStatement> tryStatementsByBlock, java.util.Map<BlockIdentifier,java.util.List<BlockIdentifier>> catchStatementByBlock, java.util.List<Op03SimpleStatement> in)
private static BlockIdentifier
LoopIdentifier. considerAsDoLoopStart(Op03SimpleStatement start, java.util.List<Op03SimpleStatement> statements, BlockIdentifierFactory blockIdentifierFactory, java.util.Map<BlockIdentifier,Op03SimpleStatement> postBlockCache)
private static BlockIdentifier
LoopIdentifier. considerAsWhileLoopStart(Method method, Op03SimpleStatement start, java.util.List<Op03SimpleStatement> statements, BlockIdentifierFactory blockIdentifierFactory, java.util.Map<BlockIdentifier,Op03SimpleStatement> postBlockCache)
private static boolean
ConditionalRewriter. detectAndRemarkJumpIntoOther(java.util.Set<BlockIdentifier> blocksAtStart, java.util.Set<BlockIdentifier> blocksAtEnd, Op03SimpleStatement realEnd, Op03SimpleStatement ifStatement)
private static void
LoopIdentifier. fixLoopOverlaps(java.util.List<Op03SimpleStatement> statements, java.util.List<LoopIdentifier.LoopResult> loopResults, java.util.Set<BlockIdentifier> relevantBlocks)
Constructors in org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters with parameters of type BlockIdentifier Constructor Description GraphVisitorBlockReachable(Op03SimpleStatement start, BlockIdentifier blockIdentifier)
LoopResult(BlockIdentifier blockIdentifier, Op03SimpleStatement blockStart)
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 BlockIdentifier Modifier and Type Field Description private 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 BlockIdentifier Modifier and Type Method Description private Expression
SwitchExpressionRewriter. extractSwitchEntry(LValue target, BlockIdentifier blockIdentifier, Op04StructuredStatement body, java.util.List<Pair<Op04StructuredStatement,StructuredStatement>> replacements, boolean last)
private Pair<StructuredCase,Expression>
SwitchExpressionRewriter. extractSwitchEntryPair(LValue target, BlockIdentifier blockIdentifier, Op04StructuredStatement item, java.util.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, java.util.Map<Op04StructuredStatement,StructuredExpressionYield> replacements, Op04StructuredStatement statement, boolean addYieldTrue)
private boolean
AssertRewriter.SwitchAssertUseCollector. getBranches(BlockIdentifier outer, BlockIdentifier swiBlockIdentifier, Block swBodyBlock, java.util.List<SwitchExpression.Branch> branches, java.util.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 java.util.List<Op04StructuredStatement>
AssertRewriter.SwitchAssertUseCollector. tryCombineSwitch(java.util.List<Op04StructuredStatement> content, BlockIdentifier outer, BlockIdentifier swiBlockIdentifier, Block swBodyBlock)
Constructors in org.benf.cfr.reader.bytecode.analysis.opgraph.op4rewriters with parameters of type BlockIdentifier Constructor Description AssertionTrackingControlFlowSwitchExpressionTransformer(BlockIdentifier trueBlock, BlockIdentifier falseBlock, java.util.Map<Op04StructuredStatement,StructuredExpressionYield> replacements)
ControlFlowSwitchExpressionTransformer(BlockIdentifier trueBlock, BlockIdentifier falseBlock, java.util.Map<Op04StructuredStatement,StructuredExpressionYield> replacements)
SwitchExpressionSearcher(BlockIdentifier blockIdentifier)
SwitchExpressionTransformer(LValue target, BlockIdentifier blockIdentifier, java.util.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 BlockIdentifier Modifier and Type Method Description private 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 BlockIdentifier Modifier and Type Method Description BlockIdentifier
StatementContainer. getBlockStarted()
Methods in org.benf.cfr.reader.bytecode.analysis.parse that return types with arguments of type BlockIdentifier Modifier and Type Method Description java.util.Set<BlockIdentifier>
StatementContainer. getBlockIdentifiers()
java.util.Set<BlockIdentifier>
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 BlockIdentifier Modifier and Type Field Description private BlockIdentifier
AnonBreakTarget. blockIdentifier
private BlockIdentifier
DoStatement. blockIdentifier
private BlockIdentifier
ForIterStatement. blockIdentifier
private BlockIdentifier
ForStatement. blockIdentifier
private BlockIdentifier
MonitorEnterStatement. blockIdentifier
private BlockIdentifier
WhileStatement. blockIdentifier
private BlockIdentifier
CaseStatement. caseBlock
private BlockIdentifier
CatchStatement. catchBlockIdent
private BlockIdentifier
FinallyStatement. finallyBlockIdent
private BlockIdentifier
IfStatement. knownElseBlock
private BlockIdentifier
IfStatement. knownIfBlock
private BlockIdentifier
CaseStatement. switchBlock
private BlockIdentifier
SwitchStatement. switchBlock
Methods in org.benf.cfr.reader.bytecode.analysis.parse.statement that return BlockIdentifier Modifier and Type Method Description BlockIdentifier
AnonBreakTarget. getBlockIdentifier()
BlockIdentifier
DoStatement. getBlockIdentifier()
BlockIdentifier
ForIterStatement. getBlockIdentifier()
BlockIdentifier
ForStatement. getBlockIdentifier()
BlockIdentifier
MonitorEnterStatement. getBlockIdentifier()
BlockIdentifier
TryStatement. getBlockIdentifier()
BlockIdentifier
WhileStatement. getBlockIdentifier()
BlockIdentifier
CaseStatement. getCaseBlock()
BlockIdentifier
CatchStatement. getCatchBlockIdent()
BlockIdentifier
FinallyStatement. getFinallyBlockIdent()
BlockIdentifier
IfStatement. getKnownIfBlock()
BlockIdentifier
CaseStatement. getSwitchBlock()
BlockIdentifier
SwitchStatement. getSwitchBlock()
protected BlockIdentifier
GotoStatement. getTargetStartBlock()
Methods in org.benf.cfr.reader.bytecode.analysis.parse.statement that return types with arguments of type BlockIdentifier Modifier and Type Method Description Pair<BlockIdentifier,BlockIdentifier>
IfStatement. getBlocks()
Pair<BlockIdentifier,BlockIdentifier>
IfStatement. getBlocks()
Methods in org.benf.cfr.reader.bytecode.analysis.parse.statement with parameters of type BlockIdentifier Modifier and Type Method Description SwitchStatement
RawSwitchStatement. 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)
-
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.parse.utils
Methods in org.benf.cfr.reader.bytecode.analysis.parse.utils that return BlockIdentifier Modifier and Type Method Description static BlockIdentifier
BlockIdentifier. getInnermostBreakable(java.util.List<BlockIdentifier> blocks)
BlockIdentifier
BlockIdentifierFactory. getNextBlockIdentifier(BlockType blockType)
static BlockIdentifier
BlockIdentifier. getOutermostContainedIn(java.util.Set<BlockIdentifier> endingBlocks, java.util.Set<BlockIdentifier> blocksInAtThisPoint)
static BlockIdentifier
BlockIdentifier. getOutermostEnding(java.util.List<BlockIdentifier> blocks, java.util.Set<BlockIdentifier> blocksEnding)
Methods in org.benf.cfr.reader.bytecode.analysis.parse.utils with parameters of type BlockIdentifier Modifier and Type Method Description static boolean
BlockIdentifier. blockIsOneOf(BlockIdentifier needle, java.util.Set<BlockIdentifier> haystack)
int
BlockIdentifier. compareTo(BlockIdentifier blockIdentifier)
Method parameters in org.benf.cfr.reader.bytecode.analysis.parse.utils with type arguments of type BlockIdentifier Modifier and Type Method Description static boolean
BlockIdentifier. blockIsOneOf(BlockIdentifier needle, java.util.Set<BlockIdentifier> haystack)
static BlockIdentifier
BlockIdentifier. getInnermostBreakable(java.util.List<BlockIdentifier> blocks)
static BlockIdentifier
BlockIdentifier. getOutermostContainedIn(java.util.Set<BlockIdentifier> endingBlocks, java.util.Set<BlockIdentifier> blocksInAtThisPoint)
static BlockIdentifier
BlockIdentifier. getOutermostEnding(java.util.List<BlockIdentifier> blocks, java.util.Set<BlockIdentifier> blocksEnding)
static BlockIdentifier
BlockIdentifier. getOutermostEnding(java.util.List<BlockIdentifier> blocks, java.util.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 BlockIdentifier Modifier and Type Field Description private java.util.Set<BlockIdentifier>
PeerTries. guessPeerTryBlocks
private java.util.Map<BlockIdentifier,Op03SimpleStatement>
PeerTries. guessPeerTryMap
Methods in org.benf.cfr.reader.bytecode.analysis.parse.utils.finalhelp that return types with arguments of type BlockIdentifier Modifier and Type Method Description (package private) java.util.Set<BlockIdentifier>
PeerTries. getGuessPeerTryBlocks()
(package private) java.util.Map<BlockIdentifier,Op03SimpleStatement>
PeerTries. getGuessPeerTryMap()
Constructor parameters in org.benf.cfr.reader.bytecode.analysis.parse.utils.finalhelp with type arguments of type BlockIdentifier Constructor Description CompositeBlockIdentifierKey(java.util.Set<BlockIdentifier> blockIdentifiers)
-
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.parse.wildcard
Subclasses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.parse.wildcard Modifier and Type Class Description class
WildcardMatch.BlockIdentifierWildcard
Fields in org.benf.cfr.reader.bytecode.analysis.parse.wildcard declared as BlockIdentifier Modifier and Type Field Description private BlockIdentifier
WildcardMatch.BlockIdentifierWildcard. matchedValue
Methods in org.benf.cfr.reader.bytecode.analysis.parse.wildcard that return BlockIdentifier Modifier and Type Method Description BlockIdentifier
WildcardMatch.BlockIdentifierWildcard. getMatch()
-
Uses of BlockIdentifier in org.benf.cfr.reader.bytecode.analysis.structured
Methods in org.benf.cfr.reader.bytecode.analysis.structured that return BlockIdentifier Modifier and Type Method Description BlockIdentifier
StructuredStatement. getBreakableBlockOrNull()
BlockIdentifier
StructuredScope. getContinueBlock()
Methods in org.benf.cfr.reader.bytecode.analysis.structured with parameters of type BlockIdentifier Modifier and Type Method Description StructuredStatement
StructuredStatement. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
Method parameters in org.benf.cfr.reader.bytecode.analysis.structured with type arguments of type BlockIdentifier Modifier and Type Method Description StructuredStatement
StructuredStatement. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
StructuredStatement. informBlockHeirachy(java.util.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 BlockIdentifier Modifier and Type Field Description protected BlockIdentifier
AbstractStructuredConditionalLoopStatement. block
private BlockIdentifier
StructuredFor. block
private BlockIdentifier
StructuredIter. block
private BlockIdentifier
UnstructuredAnonymousBreak. blockEnding
private BlockIdentifier
Block. blockIdentifier
private BlockIdentifier
StructuredCase. blockIdentifier
private BlockIdentifier
StructuredSwitch. blockIdentifier
private BlockIdentifier
UnstructuredAnonBreakTarget. blockIdentifier
private BlockIdentifier
UnstructuredCase. blockIdentifier
private BlockIdentifier
UnstructuredCatch. blockIdentifier
private BlockIdentifier
UnstructuredDo. blockIdentifier
private BlockIdentifier
UnstructuredFinally. blockIdentifier
private BlockIdentifier
UnstructuredFor. blockIdentifier
private BlockIdentifier
UnstructuredIter. blockIdentifier
private BlockIdentifier
UnstructuredSwitch. blockIdentifier
private BlockIdentifier
UnstructuredSynchronized. blockIdentifier
private BlockIdentifier
UnstructuredWhile. blockIdentifier
private BlockIdentifier
StructuredBreak. breakBlock
private BlockIdentifier
StructuredContinue. continueTgt
private BlockIdentifier
UnstructuredContinue. continueTgt
private BlockIdentifier
UnstructuredIf. knownElseBlock
private BlockIdentifier
UnstructuredIf. knownIfBlock
private BlockIdentifier
StructuredTry. tryBlockIdentifier
Fields in org.benf.cfr.reader.bytecode.analysis.structured.statement with type parameters of type BlockIdentifier Modifier and Type Field Description private java.util.Set<BlockIdentifier>
UnstructuredWhile. blocksEndedAfter
private java.util.Set<BlockIdentifier>
UnstructuredBreak. blocksEnding
private java.util.Set<BlockIdentifier>
StructuredCatch. possibleTryBlocks
Methods in org.benf.cfr.reader.bytecode.analysis.structured.statement that return types with arguments of type BlockIdentifier Modifier and Type Method Description java.util.Set<BlockIdentifier>
StructuredCatch. getPossibleTryBlocks()
Methods in org.benf.cfr.reader.bytecode.analysis.structured.statement with parameters of type BlockIdentifier Modifier and Type Method Description StructuredStatement
AbstractStructuredStatement. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredCase. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredCatch. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredDo. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredFinally. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredFor. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredIf. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredIter. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredSwitch. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredSynchronized. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredTry. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredWhile. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
static AbstractStructuredConditionalLoopStatement
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 BlockIdentifier Modifier and Type Method Description StructuredStatement
AbstractStructuredStatement. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredCase. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredCatch. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredDo. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredFinally. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredFor. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredIf. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredIter. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredSwitch. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredSynchronized. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredTry. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
UnstructuredWhile. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
AbstractStructuredStatement. informBlockHeirachy(java.util.Vector<BlockIdentifier> blockIdentifiers)
StructuredStatement
StructuredAssert. informBlockHeirachy(java.util.Vector<BlockIdentifier> blockIdentifiers)
StructuredStatement
StructuredIf. informBlockHeirachy(java.util.Vector<BlockIdentifier> blockIdentifiers)
StructuredStatement
UnstructuredAnonymousBreak. informBlockHeirachy(java.util.Vector<BlockIdentifier> blockIdentifiers)
StructuredStatement
UnstructuredBreak. informBlockHeirachy(java.util.Vector<BlockIdentifier> blockIdentifiers)
StructuredStatement
UnstructuredContinue. informBlockHeirachy(java.util.Vector<BlockIdentifier> blockIdentifiers)
StructuredStatement
UnstructuredWhile. informBlockHeirachy(java.util.Vector<BlockIdentifier> blockIdentifiers)
StructuredBreak
StructuredBreak. maybeTightenToLocal(java.util.Stack<Triplet<StructuredStatement,BlockIdentifier,java.util.Set<Op04StructuredStatement>>> scopes)
Constructor parameters in org.benf.cfr.reader.bytecode.analysis.structured.statement with type arguments of type BlockIdentifier Constructor Description StructuredCatch(java.util.Collection<JavaRefTypeInstance> catchTypes, Op04StructuredStatement catchBlock, LValue catching, java.util.Set<BlockIdentifier> possibleTryBlocks)
UnstructuredBreak(BytecodeLoc loc, java.util.Set<BlockIdentifier> blocksEnding)
UnstructuredWhile(BytecodeLoc loc, ConditionalExpression condition, BlockIdentifier blockIdentifier, java.util.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 BlockIdentifier Modifier and Type Method Description BlockIdentifier
AbstractPlaceholder. getBreakableBlockOrNull()
Methods in org.benf.cfr.reader.bytecode.analysis.structured.statement.placeholder with parameters of type BlockIdentifier Modifier and Type Method Description StructuredStatement
AbstractPlaceholder. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
Method parameters in org.benf.cfr.reader.bytecode.analysis.structured.statement.placeholder with type arguments of type BlockIdentifier Modifier and Type Method Description StructuredStatement
AbstractPlaceholder. claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, java.util.Vector<BlockIdentifier> blocksCurrentlyIn)
StructuredStatement
AbstractPlaceholder. informBlockHeirachy(java.util.Vector<BlockIdentifier> blockIdentifiers)
-
Uses of BlockIdentifier in org.benf.cfr.reader.entities.exceptions
Fields in org.benf.cfr.reader.entities.exceptions declared as BlockIdentifier Modifier and Type Field Description private BlockIdentifier
ExceptionGroup. tryBlockIdentifier
Methods in org.benf.cfr.reader.entities.exceptions that return BlockIdentifier Modifier and Type Method Description BlockIdentifier
ExceptionGroup.Entry. getTryBlockIdentifier()
BlockIdentifier
ExceptionGroup. getTryBlockIdentifier()
Constructors in org.benf.cfr.reader.entities.exceptions with parameters of type BlockIdentifier Constructor Description ExceptionGroup(int bytecodeIndexFrom, BlockIdentifier blockIdentifier, ConstantPool cp)
-