org.eclipse.elk.alg.mrtree.p1treeify.DFSTreeifyer.class Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of plantuml Show documentation
Show all versions of plantuml Show documentation
PlantUML is a component that allows to quickly write :
* sequence diagram,
* use case diagram,
* class diagram,
* activity diagram,
* component diagram,
* state diagram
* object diagram
???? 7 ? 1org/eclipse/elk/alg/mrtree/p1treeify/DFSTreeifyer java/lang/Object %org/eclipse/elk/core/alg/ILayoutPhase INTERMEDIATE_PROCESSING_CONFIG 7Lorg/eclipse/elk/core/alg/LayoutProcessorConfiguration; Signature ?Lorg/eclipse/elk/core/alg/LayoutProcessorConfiguration; visited [I
eliminated Ljava/util/List; :Ljava/util/List; @$SWITCH_TABLE$org$eclipse$elk$alg$mrtree$options$TreeifyingOrder ()V Code
5org/eclipse/elk/core/alg/LayoutProcessorConfiguration create 9()Lorg/eclipse/elk/core/alg/LayoutProcessorConfiguration; +org/eclipse/elk/alg/mrtree/TreeLayoutPhases P3_NODE_PLACEMENT -Lorg/eclipse/elk/alg/mrtree/TreeLayoutPhases; ! # " Eorg/eclipse/elk/alg/mrtree/intermediate/IntermediateProcessorStrategy $ % DETREEIFYING_PROC GLorg/eclipse/elk/alg/mrtree/intermediate/IntermediateProcessorStrategy;
' ( ) addAfter {(Ljava/lang/Enum;Lorg/eclipse/elk/core/alg/ILayoutProcessorFactory;)Lorg/eclipse/elk/core/alg/LayoutProcessorConfiguration; + LineNumberTable LocalVariableTable
0 . this 3Lorg/eclipse/elk/alg/mrtree/p1treeify/DFSTreeifyer; process [(Lorg/eclipse/elk/alg/mrtree/graph/TGraph;Lorg/eclipse/elk/core/util/IElkProgressMonitor;)V 6 DFS Treeifying phase 8 : 9 -org/eclipse/elk/core/util/IElkProgressMonitor ; < begin (Ljava/lang/String;F)Z
> ? @ init ,(Lorg/eclipse/elk/alg/mrtree/graph/TGraph;)V
B C @ collectEdges E
G 8 I J done tGraph )Lorg/eclipse/elk/alg/mrtree/graph/TGraph; progressMonitor /Lorg/eclipse/elk/core/util/IElkProgressMonitor; getLayoutProcessorConfiguration b(Lorg/eclipse/elk/alg/mrtree/graph/TGraph;)Lorg/eclipse/elk/core/alg/LayoutProcessorConfiguration; ?(Lorg/eclipse/elk/alg/mrtree/graph/TGraph;)Lorg/eclipse/elk/core/alg/LayoutProcessorConfiguration; graph
T V U 'org/eclipse/elk/alg/mrtree/graph/TGraph W X getNodes ()Ljava/util/List; Z \ [ java/util/List ] ^ size ()I ` java/util/LinkedList
_ 0 Z c d e iterator ()Ljava/util/Iterator; g i h java/util/Iterator j k next ()Ljava/lang/Object; m &org/eclipse/elk/alg/mrtree/graph/TNode l o p q id I g s t u hasNext ()Z node (Lorg/eclipse/elk/alg/mrtree/graph/TNode;
StackMapTable z | { 0org/eclipse/elk/alg/mrtree/options/MrTreeOptions } ~ SEARCH_ORDER ,Lorg/eclipse/elk/graph/properties/IProperty;
T ? ? ? getProperty @(Lorg/eclipse/elk/graph/properties/IProperty;)Ljava/lang/Object; ? 2org/eclipse/elk/alg/mrtree/options/TreeifyingOrder
? ? ()[I
? ? ? ^ ordinal
? ? ? dfs +(Lorg/eclipse/elk/alg/mrtree/graph/TNode;)V
? ? ? bfs ? &org/eclipse/elk/alg/mrtree/graph/TEdge
? ? ? ? getSource *()Lorg/eclipse/elk/alg/mrtree/graph/TNode;
l ? ? X getOutgoingEdges Z ? ? ? remove (Ljava/lang/Object;)Z
? ? ? ? getTarget
l ? ? X getIncomingEdges ? ? ? 5org/eclipse/elk/alg/mrtree/options/InternalProperties ? ~ REMOVABLE_EDGES
T ? ? ? setProperty t(Lorg/eclipse/elk/graph/properties/IProperty;Ljava/lang/Object;)Lorg/eclipse/elk/graph/properties/MapPropertyHolder; treeifyingOrder 4Lorg/eclipse/elk/alg/mrtree/options/TreeifyingOrder; tNode tEdge (Lorg/eclipse/elk/alg/mrtree/graph/TEdge; Z ? ? ? add target
_ ?
_ ? ? k removeFirst
_ ? ? ? addLast (Ljava/lang/Object;)V
_ ? ? u isEmpty startNode nodeQueue Ljava/util/LinkedList; LocalVariableTypeTable @Ljava/util/LinkedList; D(Ljava/lang/Object;Lorg/eclipse/elk/core/util/IElkProgressMonitor;)V
? 3 4 K(Ljava/lang/Object;)Lorg/eclipse/elk/core/alg/LayoutProcessorConfiguration;
? O P ?
? ? ? ? values 7()[Lorg/eclipse/elk/alg/mrtree/options/TreeifyingOrder; ? ? ? ? BFS ? ? ? ? DFS ? java/lang/NoSuchFieldError
SourceFile DFSTreeifyer.java ?Ljava/lang/Object;Lorg/eclipse/elk/core/alg/ILayoutPhase; !
J <