Jode 1.90-CVS
Build Aug 6, 2004

Uses of Class
net.sf.jode.flow.StructuredBlock

Packages that use StructuredBlock
net.sf.jode.decompiler   
net.sf.jode.flow   
 

Uses of StructuredBlock in net.sf.jode.decompiler
 

Methods in net.sf.jode.decompiler with parameters of type StructuredBlock
 void MethodAnalyzer.insertStructuredBlock(StructuredBlock insertBlock)
          Inserts a structured block to the beginning of the method.
 void ClassAnalyzer.addBlockInitializer(int index, StructuredBlock initializer)
           
 

Uses of StructuredBlock in net.sf.jode.flow
 

Subclasses of StructuredBlock in net.sf.jode.flow
 class BreakBlock
           
 class CaseBlock
          This block represents a case instruction.
 class CatchBlock
           
 class ConditionalBlock
          An ConditionalBlock is the structured block representing an if instruction.
 class ContinueBlock
           
 class DescriptionBlock
          This is a block which contains a comment/description of what went wrong.
 class EmptyBlock
          This is the structured block for an empty block.
 class FinallyBlock
           
 class IfThenElseBlock
          An IfThenElseBlock is the structured block representing an if instruction.
 class InstructionBlock
          This is the structured block for atomic instructions.
 class InstructionContainer
          This is a method for block containing a single instruction.
 class JsrBlock
          This block represents a jsr instruction.
 class LoopBlock
          This is the structured block for an Loop block.
 class RetBlock
          This block represents a ret instruction.
 class ReturnBlock
          This is the structured block for a Return block.
 class SequentialBlock
          A sequential block combines exactly two structured blocks to a new one.
 class SpecialBlock
          This is the structured block for atomic instructions.
 class SwitchBlock
          This is the structured block for an empty block.
 class SynchronizedBlock
          This class represents a synchronized structured block.
 class ThrowBlock
          This is the structured block for an Throw block.
 class TryBlock
          A TryBlock is created for each exception in the ExceptionHandlers attribute.
 

Methods in net.sf.jode.flow that return StructuredBlock
 StructuredBlock[] JsrBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock FlowBlock.getBlock()
          Returns the structured block, that this flow block contains.
 StructuredBlock LoopBlock.getNextBlock(StructuredBlock subBlock)
          Returns the block where the control will normally flow to, when the given sub block is finished (not ignoring the jump after this block).
 StructuredBlock[] LoopBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock[] ConditionalBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock ContinueBlock.getNextBlock()
          Returns the block where the control will normally flow to, when this block is finished (not ignoring the jump after this block).
 StructuredBlock[] FinallyBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock FinallyBlock.getNextBlock(StructuredBlock subBlock)
          Returns the block where the control will normally flow to, when the given sub block is finished (not ignoring the jump after this block).
 StructuredBlock[] CatchBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock SwitchBlock.findCase(FlowBlock destination)
          Find the case that jumps directly to destination.
 StructuredBlock SwitchBlock.prevCase(StructuredBlock block)
          Find the case that precedes the given case.
 StructuredBlock SwitchBlock.getNextBlock(StructuredBlock subBlock)
          Returns the block where the control will normally flow to, when the given sub block is finished (not ignoring the jump after this block).
 StructuredBlock[] SwitchBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock[] IfThenElseBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock BreakBlock.getNextBlock()
          Returns the block where the control will normally flow to, when this block is finished.
 StructuredBlock[] CaseBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock SequentialBlock.getNextBlock(StructuredBlock subBlock)
          Returns the block where the control will normally flow to, when the given sub block is finished (not ignoring the jump after this block).
 StructuredBlock[] SequentialBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock EmptyBlock.appendBlock(StructuredBlock block)
          Appends a block to this block.
 StructuredBlock EmptyBlock.prependBlock(StructuredBlock block)
          Prepends a block to this block.
 StructuredBlock[] SynchronizedBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock[] TryBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock StructuredBlock.getNextBlock()
          Returns the block where the control will normally flow to, when this block is finished.
 StructuredBlock StructuredBlock.getNextBlock(StructuredBlock subBlock)
          Returns the block where the control will normally flow to, when the given sub block is finished.
 StructuredBlock[] StructuredBlock.getSubBlocks()
          Returns all sub block of this structured block.
 StructuredBlock StructuredBlock.appendBlock(StructuredBlock block)
          Appends a block to this block.
 StructuredBlock StructuredBlock.prependBlock(StructuredBlock block)
          Prepends a block to this block.
 

Methods in net.sf.jode.flow with parameters of type StructuredBlock
static boolean CreateAssignExpression.transform(InstructionContainer ic, StructuredBlock last)
           
static boolean CreateAssignExpression.createAssignOp(InstructionContainer ic, StructuredBlock last)
           
static boolean CreateAssignExpression.createAssignExpression(InstructionContainer ic, StructuredBlock last)
           
static boolean CreatePrePostIncExpression.transform(InstructionContainer ic, StructuredBlock last)
           
static boolean CreatePrePostIncExpression.createLocalPrePostInc(InstructionContainer ic, StructuredBlock last)
           
static boolean CreatePrePostIncExpression.createPostInc(InstructionContainer ic, StructuredBlock last)
           
 boolean JsrBlock.replaceSubBlock(StructuredBlock oldBlock, StructuredBlock newBlock)
          Replaces the given sub block with a new block.
static boolean CreateExpression.transform(InstructionContainer ic, StructuredBlock last)
          This does the transformation.
 void FlowBlock.prependBlock(StructuredBlock insertBlock)
           
 void FlowBlock.appendReadBlock(StructuredBlock newBlock, LocalInfo local)
           
 void FlowBlock.appendWriteBlock(StructuredBlock newBlock, LocalInfo local)
           
 void FlowBlock.appendBlock(StructuredBlock newBlock)
           
 void FlowBlock.oldAppendBlock(StructuredBlock newBlock)
           
 StructuredBlock LoopBlock.getNextBlock(StructuredBlock subBlock)
          Returns the block where the control will normally flow to, when the given sub block is finished (not ignoring the jump after this block).
 FlowBlock LoopBlock.getNextFlowBlock(StructuredBlock subBlock)
           
 void LoopBlock.setBody(StructuredBlock body)
           
 boolean LoopBlock.replaceSubBlock(StructuredBlock oldBlock, StructuredBlock newBlock)
          Replaces the given sub block with a new block.
 boolean ConditionalBlock.replaceSubBlock(StructuredBlock oldBlock, StructuredBlock newBlock)
          Replaces the given sub block with a new block.
 void FinallyBlock.setCatchBlock(StructuredBlock subBlock)
          Sets the catch block.
 boolean FinallyBlock.replaceSubBlock(StructuredBlock oldBlock, StructuredBlock newBlock)
          Replaces the given sub block with a new block.
 StructuredBlock FinallyBlock.getNextBlock(StructuredBlock subBlock)
          Returns the block where the control will normally flow to, when the given sub block is finished (not ignoring the jump after this block).
 FlowBlock FinallyBlock.getNextFlowBlock(StructuredBlock subBlock)
           
 boolean SpecialBlock.removeSwap(StructuredBlock last)
           
 boolean SpecialBlock.removePop(StructuredBlock last)
           
static boolean CreateClassField.transform(IfThenElseBlock ifBlock, StructuredBlock last)
           
 void CatchBlock.setCatchBlock(StructuredBlock catchBlock)
          Sets the catch block.
 boolean CatchBlock.replaceSubBlock(StructuredBlock oldBlock, StructuredBlock newBlock)
          Replaces the given sub block with a new block.
 StructuredBlock SwitchBlock.prevCase(StructuredBlock block)
          Find the case that precedes the given case.
 StructuredBlock SwitchBlock.getNextBlock(StructuredBlock subBlock)
          Returns the block where the control will normally flow to, when the given sub block is finished (not ignoring the jump after this block).
 FlowBlock SwitchBlock.getNextFlowBlock(StructuredBlock subBlock)
           
 void IfThenElseBlock.setThenBlock(StructuredBlock thenBlock)
          Sets the then block.
 void IfThenElseBlock.setElseBlock(StructuredBlock elseBlock)
          Sets the else block.
 boolean IfThenElseBlock.replaceSubBlock(StructuredBlock oldBlock, StructuredBlock newBlock)
          Replaces the given sub block with a new block.
static boolean CreateForInitializer.transform(LoopBlock forBlock, StructuredBlock last)
          This combines an variable initializer into a for statement
 boolean CaseBlock.replaceSubBlock(StructuredBlock oldBlock, StructuredBlock newBlock)
          Replaces the given sub block with a new block.
static boolean CreateNewConstructor.transform(InstructionContainer ic, StructuredBlock last)
           
 void SequentialBlock.setFirst(StructuredBlock sb)
           
 void SequentialBlock.setSecond(StructuredBlock sb)
           
 StructuredBlock SequentialBlock.getNextBlock(StructuredBlock subBlock)
          Returns the block where the control will normally flow to, when the given sub block is finished (not ignoring the jump after this block).
 FlowBlock SequentialBlock.getNextFlowBlock(StructuredBlock subBlock)
           
 boolean SequentialBlock.isSingleExit(StructuredBlock subBlock)
          Tells if the sub block is the single exit point of the current block.
 boolean SequentialBlock.replaceSubBlock(StructuredBlock oldBlock, StructuredBlock newBlock)
          Replaces the given sub block with a new block.
static boolean CreateIfThenElseOperator.createFunny(ConditionalBlock cb, StructuredBlock last)
          This handles the more complicated form of the ?
static boolean CreateIfThenElseOperator.create(InstructionContainer ic, StructuredBlock last)
          This handles the normal form of the ?
static boolean CombineIfGotoExpressions.transform(ConditionalBlock cb, StructuredBlock last)
           
static boolean CreateCheckNull.transformJavac(InstructionContainer ic, StructuredBlock last)
          Transforms the code DUP POP.getClass() to a CheckNullOperator.
static boolean CreateCheckNull.transformJikes(IfThenElseBlock ifBlock, StructuredBlock last)
          Transforms the code DUP if (POP == null) { throw null } to a CheckNullOperator.
 StructuredBlock EmptyBlock.appendBlock(StructuredBlock block)
          Appends a block to this block.
 StructuredBlock EmptyBlock.prependBlock(StructuredBlock block)
          Prepends a block to this block.
 void SynchronizedBlock.setBodyBlock(StructuredBlock body)
          Sets the body block.
 boolean SynchronizedBlock.replaceSubBlock(StructuredBlock oldBlock, StructuredBlock newBlock)
          Replaces the given sub block with a new block.
static boolean CompleteSynchronized.enter(SynchronizedBlock synBlock, StructuredBlock last)
          This combines the monitorenter into a synchronized statement.
static boolean CompleteSynchronized.combineObject(SynchronizedBlock synBlock, StructuredBlock last)
          This combines the initial expression describing the object into a synchronized statement.
static boolean CreateConstantArray.transform(InstructionContainer ic, StructuredBlock last)
           
 void TryBlock.addCatchBlock(StructuredBlock catchBlock)
           
 boolean TryBlock.replaceSubBlock(StructuredBlock oldBlock, StructuredBlock newBlock)
          Replaces the given sub block with a new block.
 StructuredBlock StructuredBlock.getNextBlock(StructuredBlock subBlock)
          Returns the block where the control will normally flow to, when the given sub block is finished.
 FlowBlock StructuredBlock.getNextFlowBlock(StructuredBlock subBlock)
           
 boolean StructuredBlock.isSingleExit(StructuredBlock subBlock)
          Tells if the sub block is the single exit point of the current block.
 boolean StructuredBlock.replaceSubBlock(StructuredBlock oldBlock, StructuredBlock newBlock)
          Replaces the given sub block with a new block.
 boolean StructuredBlock.contains(StructuredBlock child)
          Returns if this block contains the given block.
 void StructuredBlock.replace(StructuredBlock sb)
          This function replaces sb with this block.
 void StructuredBlock.swapJump(StructuredBlock block)
          This function swaps the jump with another block.
 StructuredBlock StructuredBlock.appendBlock(StructuredBlock block)
          Appends a block to this block.
 StructuredBlock StructuredBlock.prependBlock(StructuredBlock block)
          Prepends a block to this block.
 


Jode 1.90-CVS
Build Aug 6, 2004

Copyright © 1998-2004 by Jochen Hoenicke.