public static AvlTreeEdge <T> For(AvlTreeNode <T> source, AvlTreeNodeDirection direction) { if (source == null) { return(Root); } return(new AvlTreeEdge <T>(source, direction)); }
private AvlTreeEdge(AvlTreeNode <T> source, AvlTreeNodeDirection direction) { Source = source; Direction = direction; }
public static AvlTreeEdge <T> EdgeTo <T>(this AvlTreeNode <T> source, AvlTreeNodeDirection direction) { return(For(source, direction)); }
public static AvlTreeEdge <T> For <T>(AvlTreeNode <T> source, AvlTreeNodeDirection direction) { return(AvlTreeEdge <T> .For(source, direction)); }