.. java:import:: fr.inria.tapenade.representation Block .. java:import:: fr.inria.tapenade.representation FGArrow .. java:import:: fr.inria.tapenade.representation FGConstants .. java:import:: fr.inria.tapenade.representation ILUtils .. java:import:: fr.inria.tapenade.representation TapEnv .. java:import:: fr.inria.tapenade.representation TapList .. java:import:: fr.inria.tapenade.utils ILLang .. java:import:: fr.inria.tapenade.utils TapIntList .. java:import:: fr.inria.tapenade.utils TapTriplet .. java:import:: fr.inria.tapenade.utils Tree SwitchStruct ============ .. java:package:: fr.inria.tapenade.ir2tree :noindex: .. java:type:: final class SwitchStruct extends ControlStruct Fields ------ naturalArrowsAfterSwitch ^^^^^^^^^^^^^^^^^^^^^^^^ .. java:field:: protected TapList naturalArrowsAfterSwitch :outertype: SwitchStruct Constructors ------------ SwitchStruct ^^^^^^^^^^^^ .. java:constructor:: protected SwitchStruct(Block block) :outertype: SwitchStruct Methods ------- addControlStruct ^^^^^^^^^^^^^^^^ .. java:method:: @Override protected void addControlStruct(ControlStruct struct, FGArrow arrow) :outertype: SwitchStruct Insert the given "struct" into this ControlStruct, at the correct place determined by "arrow". dump ^^^^ .. java:method:: @Override public void dump(int indent) throws java.io.IOException :outertype: SwitchStruct generateTree ^^^^^^^^^^^^ .. java:method:: @Override protected void generateTree(boolean delayGoto, TapList> toFutureIncludes, TapList fileUserHelpStrings) :outertype: SwitchStruct (Recursive) final regeneration of the structured Tree. insertLetStructure ^^^^^^^^^^^^^^^^^^ .. java:method:: @Override protected void insertLetStructure() :outertype: SwitchStruct (Recursive) Inserts Let structures into the tree of ControlStruct's to reflect nested local SymbolTable's. preGenerateTree ^^^^^^^^^^^^^^^ .. java:method:: @Override protected TapList preGenerateTree(TapList naturalArrows, TapList> toFutureIncludes, TapList fileUserHelpStrings, TapList enclosingStructs, boolean skipSubUnits) :outertype: SwitchStruct (Recursive) preparation before tree regeneration. Labels the arrows that need explicit jumps, prepares the skeleton of the future Tree. :return: a TapList of FGArrow propagateNaturalFlow ^^^^^^^^^^^^^^^^^^^^ .. java:method:: @Override protected TapList propagateNaturalFlow() :outertype: SwitchStruct (Recursive) precomputation of the "naturalFlow: info: the TapList of FGArrow that would naturally flow out of this ControlStruct, i.e. without any additional explicit jump. propagateNaturalNext ^^^^^^^^^^^^^^^^^^^^ .. java:method:: @Override protected void propagateNaturalNext(Block naturalNext) :outertype: SwitchStruct (Recursive) precomputation of the "naturalNext" info: the next Block reached by natural flow from each ControlStruct. reorderBody ^^^^^^^^^^^ .. java:method:: @Override protected void reorderBody() :outertype: SwitchStruct (Recursive) Orders the lists of control structures inside, following all available indications on position... toString ^^^^^^^^ .. java:method:: @Override public String toString() :outertype: SwitchStruct