C# Class GameMaker.Ast.LoopsAndConditions

Show file Open project: WarlockD/GMdsam

Public Methods

Method Description
BuildGraph ( IList nodes, ILLabel entryLabel ) : ControlFlowGraph
FindConditions ( ILBlock block ) : void
FindDominatedNodes ( HashSet scope, ControlFlowNode head ) : HashSet
FindLoopContent ( HashSet scope, ControlFlowNode head ) : HashSet
FindLoops ( ILBlock block ) : void
HasSingleEdgeEnteringBlock ( ControlFlowNode node ) : bool
LabelToNode ( ILLabel l ) : ControlFlowNode
LoopsAndConditions ( ErrorContext error ) : System

Private Methods

Method Description
CreateEdge ( ControlFlowNode source, ControlFlowNode destination ) : void
FindConditions ( HashSet scope, ControlFlowNode entryNode ) : List
FindLoops ( HashSet scope, ControlFlowNode entryPoint, bool excludeEntryPoint ) : List

Method Details

BuildGraph() public method

public BuildGraph ( IList nodes, ILLabel entryLabel ) : ControlFlowGraph
nodes IList
entryLabel ILLabel
return GameMaker.FlowAnalysis.ControlFlowGraph

FindConditions() public method

public FindConditions ( ILBlock block ) : void
block ILBlock
return void

FindDominatedNodes() public static method

public static FindDominatedNodes ( HashSet scope, ControlFlowNode head ) : HashSet
scope HashSet
head GameMaker.FlowAnalysis.ControlFlowNode
return HashSet

FindLoopContent() public static method

public static FindLoopContent ( HashSet scope, ControlFlowNode head ) : HashSet
scope HashSet
head GameMaker.FlowAnalysis.ControlFlowNode
return HashSet

FindLoops() public method

public FindLoops ( ILBlock block ) : void
block ILBlock
return void

HasSingleEdgeEnteringBlock() public static method

public static HasSingleEdgeEnteringBlock ( ControlFlowNode node ) : bool
node GameMaker.FlowAnalysis.ControlFlowNode
return bool

LabelToNode() public method

public LabelToNode ( ILLabel l ) : ControlFlowNode
l ILLabel
return GameMaker.FlowAnalysis.ControlFlowNode

LoopsAndConditions() public method

public LoopsAndConditions ( ErrorContext error ) : System
error ErrorContext
return System