This sorting class is meant to be released and garbage collected after use.
More...
|
void | GenerateInitialNodeList (List< Type > types) |
|
void | InsertDefaultOrderNodes () |
|
OrderNode | RegisterNode (Type type) |
| Create the node without searching for attributes yet. More...
|
|
OrderNode[] | Run () |
| Returns sorted list of Types. More...
|
|
OrderNode[] | RunConversion (List< Type > group) |
| Orders a list of types based on SortOrder attributes and returns an array of OrderNode structs. More...
|
|
|
static void | InsertAfter (OrderNode existing, OrderNode insert, ref OrderNode lastNode) |
|
static void | InsertBefore (OrderNode insert, OrderNode existing, ref OrderNode firstNode) |
|
static bool | MergeChains (List< OrderNode > unorderedNodes) |
| Merge Before and Afters based on the logic: If A is Before B, and B is Before C, then A is Before C... etc This allows obvious conflicts to be quickly spotted. More...
|
|
static void | Remove (OrderNode node, ref OrderNode firstNode, ref OrderNode lastNode) |
|
static bool | ResortNode (OrderNode node, ref OrderNode firstNode, ref OrderNode lastNode) |
|
static void | Sort (List< OrderNode > unorderedNodes, ref OrderNode firstNode, ref OrderNode lastNode) |
|
|
OrderNode | FirstNode |
|
Dictionary< Type, OrderNode > | NodeLookup = new Dictionary<Type, OrderNode>() |
|
OrderNode[] | SortedNodes |
|
This sorting class is meant to be released and garbage collected after use.
◆ MergeChains()
static bool MergeChains |
( |
List< OrderNode > |
unorderedNodes | ) |
|
|
static |
Merge Before and Afters based on the logic: If A is Before B, and B is Before C, then A is Before C... etc This allows obvious conflicts to be quickly spotted.
- Returns
◆ RegisterNode()
OrderNode RegisterNode |
( |
Type |
type | ) |
|
Create the node without searching for attributes yet.
◆ Run()
Returns sorted list of Types.
- Returns
◆ RunConversion()
OrderNode [] RunConversion |
( |
List< Type > |
group | ) |
|
Orders a list of types based on SortOrder attributes and returns an array of OrderNode structs.