question: @ Override public void visualizeBlock ( Block bb , Analysis < A , S , T > analysis ) { this . sbBlock . setLength ( 0 ) ; List < Node > contents = new LinkedList < > ( ) ; switch ( bb . getType ( ) ) { case REGULAR_BLOCK : contents . addAll ( ( ( RegularBlock ) bb ) . getContents ( ) ) ; break ; case EXCEPTION_BLOCK : contents . add ( ( ( ExceptionBlock ) bb ) . getNode ( ) ) ; break ; case CONDITIONAL_BLOCK : break ; case SPECIAL_BLOCK : break ; default : assert false : "All types of basic blocks covered" ; } boolean notFirst = false ; for ( Node t : contents ) { if ( notFirst ) { this . sbBlock . append ( "\\n" ) ; } notFirst = true ; visualizeBlockNode ( t , analysis ) ; } boolean centered = false ; if ( this . sbBlock . length ( ) == 0 ) { centered = true ; if ( bb . getType ( ) == BlockType . SPECIAL_BLOCK ) { visualizeSpecialBlock ( ( SpecialBlock ) bb ) ; } else if ( bb . getType ( ) == BlockType . CONDITIONAL_BLOCK ) { this . sbDigraph . append ( " \",];\n" ) ; return ; } else { this . sbDigraph . append ( "?? empty ?? \",];\n" ) ; return ; } } if ( analysis != null ) { visualizeBlockTransferInput ( bb , analysis ) ; } this . sbDigraph . append ( ( this . sbBlock . toString ( ) + ( centered ? "" : "\\n" ) ) . replace ( "\\n" , "\\l" ) + " \",];\n" ) ; }
target:  Produce a representation of the contests of a basic block.