Class LinksTargetsRecursionlessSizeBalancedTreeMethods<TLinkAddress>

Namespace
Platform.Data.Doublets.Memory.United.Generic
Assembly
Platform.Data.Doublets.dll

Represents the links targets recursionless size balanced tree methods.

public class LinksTargetsRecursionlessSizeBalancedTreeMethods<TLinkAddress> : LinksRecursionlessSizeBalancedTreeMethodsBase<TLinkAddress>, ILinksTreeMethods<TLinkAddress> where TLinkAddress : IUnsignedNumber<TLinkAddress>, IComparisonOperators<TLinkAddress, TLinkAddress, bool>

Type Parameters

TLinkAddress
Inheritance
SizedBinaryTreeMethodsBase<TLinkAddress>
RecursionlessSizeBalancedTreeMethods<TLinkAddress>
LinksTargetsRecursionlessSizeBalancedTreeMethods<TLinkAddress>
Implements
ILinksTreeMethods<TLinkAddress>
Inherited Members
RecursionlessSizeBalancedTreeMethods<TLinkAddress>.AttachCore(ref TLinkAddress, TLinkAddress)
RecursionlessSizeBalancedTreeMethods<TLinkAddress>.DetachCore(ref TLinkAddress, TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.GetLeftOrDefault(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.GetRightOrDefault(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.IncrementSize(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.DecrementSize(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.GetLeftSize(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.GetRightSize(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.GetSizeOrZero(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.FixSize(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.LeftRotate(ref TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.LeftRotate(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.RightRotate(ref TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.RightRotate(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.GetRightest(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.GetLeftest(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.GetNext(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.GetPrevious(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.Contains(TLinkAddress, TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.Attach(ref TLinkAddress, TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.BeforeAttach()
SizedBinaryTreeMethodsBase<TLinkAddress>.AfterAttach()
SizedBinaryTreeMethodsBase<TLinkAddress>.Detach(ref TLinkAddress, TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.FixSizes(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.ValidateSizes(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.ValidateSize(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.PrintNodes(TLinkAddress)
SizedBinaryTreeMethodsBase<TLinkAddress>.PrintNode(TLinkAddress)

Constructors

LinksTargetsRecursionlessSizeBalancedTreeMethods(LinksConstants<TLinkAddress>, byte*, byte*)

public LinksTargetsRecursionlessSizeBalancedTreeMethods(LinksConstants<TLinkAddress> constants, byte* links, byte* header)

Parameters

constants LinksConstants<TLinkAddress>

A constants.

links byte*

A links.

header byte*

A header.

Methods

ClearNode(TLinkAddress)

Clears the node using the specified node.

protected override void ClearNode(TLinkAddress node)

Parameters

node TLinkAddress

The node.

FirstIsToTheLeftOfSecond(TLinkAddress, TLinkAddress, TLinkAddress, TLinkAddress)

Determines whether this instance first is to the left of second.

protected override bool FirstIsToTheLeftOfSecond(TLinkAddress firstSource, TLinkAddress firstTarget, TLinkAddress secondSource, TLinkAddress secondTarget)

Parameters

firstSource TLinkAddress

The first source.

firstTarget TLinkAddress

The first target.

secondSource TLinkAddress

The second source.

secondTarget TLinkAddress

The second target.

Returns

bool

The bool

FirstIsToTheRightOfSecond(TLinkAddress, TLinkAddress, TLinkAddress, TLinkAddress)

Determines whether this instance first is to the right of second.

protected override bool FirstIsToTheRightOfSecond(TLinkAddress firstSource, TLinkAddress firstTarget, TLinkAddress secondSource, TLinkAddress secondTarget)

Parameters

firstSource TLinkAddress

The first source.

firstTarget TLinkAddress

The first target.

secondSource TLinkAddress

The second source.

secondTarget TLinkAddress

The second target.

Returns

bool

The bool

GetBasePartValue(TLinkAddress)

Gets the base part value using the specified link.

protected override TLinkAddress GetBasePartValue(TLinkAddress link)

Parameters

link TLinkAddress

The link.

Returns

TLinkAddress

The link

GetLeft(TLinkAddress)

Gets the left using the specified node.

protected override TLinkAddress GetLeft(TLinkAddress node)

Parameters

node TLinkAddress

The node.

Returns

TLinkAddress

The link

GetLeftReference(TLinkAddress)

Gets the left reference using the specified node.

protected override ref TLinkAddress GetLeftReference(TLinkAddress node)

Parameters

node TLinkAddress

The node.

Returns

TLinkAddress

The ref link

GetRight(TLinkAddress)

Gets the right using the specified node.

protected override TLinkAddress GetRight(TLinkAddress node)

Parameters

node TLinkAddress

The node.

Returns

TLinkAddress

The link

GetRightReference(TLinkAddress)

Gets the right reference using the specified node.

protected override ref TLinkAddress GetRightReference(TLinkAddress node)

Parameters

node TLinkAddress

The node.

Returns

TLinkAddress

The ref link

GetSize(TLinkAddress)

Gets the size using the specified node.

protected override TLinkAddress GetSize(TLinkAddress node)

Parameters

node TLinkAddress

The node.

Returns

TLinkAddress

The link

GetTreeRoot()

Gets the tree root.

protected override TLinkAddress GetTreeRoot()

Returns

TLinkAddress

The link

SetLeft(TLinkAddress, TLinkAddress)

Sets the left using the specified node.

protected override void SetLeft(TLinkAddress node, TLinkAddress left)

Parameters

node TLinkAddress

The node.

left TLinkAddress

The left.

SetRight(TLinkAddress, TLinkAddress)

Sets the right using the specified node.

protected override void SetRight(TLinkAddress node, TLinkAddress right)

Parameters

node TLinkAddress

The node.

right TLinkAddress

The right.

SetSize(TLinkAddress, TLinkAddress)

Sets the size using the specified node.

protected override void SetSize(TLinkAddress node, TLinkAddress size)

Parameters

node TLinkAddress

The node.

size TLinkAddress

The size.

See Also