Table of Contents

Class NamedTypesDecorator<TLinkAddress>

Namespace
Foundation.Data.Doublets.Cli
Assembly
Foundation.Data.Doublets.Cli.dll
public sealed class NamedTypesDecorator<TLinkAddress> : LinksDecoratorBase<TLinkAddress>, INamedTypesLinks<TLinkAddress>, ILinks<TLinkAddress>, ILinks<TLinkAddress, LinksConstants<TLinkAddress>>, INamedTypes<TLinkAddress>, IPinnedTypes<TLinkAddress>, IEnumerable<TLinkAddress>, IEnumerable, IDisposable where TLinkAddress : struct, IUnsignedNumber<TLinkAddress>, IComparisonOperators<TLinkAddress, TLinkAddress, bool>, IShiftOperators<TLinkAddress, int, TLinkAddress>, IBitwiseOperators<TLinkAddress, TLinkAddress, TLinkAddress>, IMinMaxValue<TLinkAddress>

Type Parameters

TLinkAddress
Inheritance
LinksOperatorBase<TLinkAddress>
LinksDecoratorBase<TLinkAddress>
NamedTypesDecorator<TLinkAddress>
Implements
INamedTypesLinks<TLinkAddress>
ILinks<TLinkAddress>
ILinks<TLinkAddress, LinksConstants<TLinkAddress>>
INamedTypes<TLinkAddress>
IPinnedTypes<TLinkAddress>
IEnumerable<TLinkAddress>
Inherited Members
LinksDecoratorBase<TLinkAddress>.Facade
LinksDecoratorBase<TLinkAddress>.Constants
LinksOperatorBase<TLinkAddress>.Links
Extension Methods

Constructors

NamedTypesDecorator(PinnedTypesDecorator<TLinkAddress>, string, bool)

[SuppressMessage("Reliability", "CA2000:Dispose objects before losing scope", Justification = "The names database memory and links are owned by this instance and released by Dispose.")]
public NamedTypesDecorator(PinnedTypesDecorator<TLinkAddress> pinnedTypesDecorator, string namesDatabaseFilename, bool tracingEnabled = false)

Parameters

pinnedTypesDecorator PinnedTypesDecorator<TLinkAddress>
namesDatabaseFilename string
tracingEnabled bool
public NamedTypesDecorator(ILinks<TLinkAddress> links, string namesDatabaseFilename, bool tracingEnabled = false)

Parameters

links ILinks<TLinkAddress>
namesDatabaseFilename string
tracingEnabled bool

NamedTypesDecorator(string, bool)

public NamedTypesDecorator(string databaseFilename, bool tracingEnabled = false)

Parameters

databaseFilename string
tracingEnabled bool

Fields

public readonly NamedLinks<TLinkAddress> NamedLinks

Field Value

NamedLinks<TLinkAddress>

NamedLinksDatabaseFileName

public readonly string NamedLinksDatabaseFileName

Field Value

string

PinnedTypesDecorator

public readonly PinnedTypesDecorator<TLinkAddress> PinnedTypesDecorator

Field Value

PinnedTypesDecorator<TLinkAddress>

Methods

Deconstruct(out TLinkAddress, out TLinkAddress, out TLinkAddress)

public void Deconstruct(out TLinkAddress type1, out TLinkAddress type2, out TLinkAddress type3)

Parameters

type1 TLinkAddress
type2 TLinkAddress
type3 TLinkAddress

Delete(IList<TLinkAddress>?, WriteHandler<TLinkAddress>?)

Deletes the restriction.

public override TLinkAddress Delete(IList<TLinkAddress>? restriction, WriteHandler<TLinkAddress>? handler)

Parameters

restriction IList<TLinkAddress>

The restriction.

handler WriteHandler<TLinkAddress>

Returns

TLinkAddress

Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

public void Dispose()

GetByName(string)

public TLinkAddress GetByName(string name)

Parameters

name string

Returns

TLinkAddress

GetEnumerator()

Returns an enumerator that iterates through the collection.

public IEnumerator<TLinkAddress> GetEnumerator()

Returns

IEnumerator<TLinkAddress>

An enumerator that can be used to iterate through the collection.

GetName(TLinkAddress)

public string? GetName(TLinkAddress link)

Parameters

link TLinkAddress

Returns

string
[SuppressMessage("Reliability", "CA2000:Dispose objects before losing scope", Justification = "Ownership of the links facade is transferred to the caller, which releases it through Dispose.")]
public static ILinks<TLinkAddress> MakeLinks(string databaseFilename)

Parameters

databaseFilename string

Returns

ILinks<TLinkAddress>

MakeNamesDatabaseFilename(string)

public static string MakeNamesDatabaseFilename(string databaseFilename)

Parameters

databaseFilename string

Returns

string

RemoveName(TLinkAddress)

public void RemoveName(TLinkAddress link)

Parameters

link TLinkAddress

SetName(TLinkAddress, string)

public TLinkAddress SetName(TLinkAddress link, string name)

Parameters

link TLinkAddress
name string

Returns

TLinkAddress

Update(IList<TLinkAddress>?, IList<TLinkAddress>?, WriteHandler<TLinkAddress>?)

Updates the restriction.

public override TLinkAddress Update(IList<TLinkAddress>? restriction, IList<TLinkAddress>? substitution, WriteHandler<TLinkAddress>? handler)

Parameters

restriction IList<TLinkAddress>

The restriction.

substitution IList<TLinkAddress>

The substitution.

handler WriteHandler<TLinkAddress>

Returns

TLinkAddress

The link