Table of Contents

Struct SectionReplacement<T>

Namespace
ChartTools.Extensions.Linq
Assembly
ChartTools.dll

Defines a set of rules for performing a section replacement operation in a collection.

public readonly record struct SectionReplacement<T> : IEquatable<SectionReplacement<T>>

Type Parameters

T
Implements
Inherited Members

Remarks

Items matching the and EndReplace predicates should not be included in the output.

Constructors

SectionReplacement(IEnumerable<T>, Predicate<T>, Predicate<T>, bool)

Defines a set of rules for performing a section replacement operation in a collection.

public SectionReplacement(IEnumerable<T> Replacement, Predicate<T> StartReplace, Predicate<T> EndReplace, bool AddIfMissing)

Parameters

Replacement IEnumerable<T>

Items to replace with

StartReplace Predicate<T>

Method that defines if a source marks the start of the section to replace

EndReplace Predicate<T>

Method that defines if a source item marks the end of the section to replace

AddIfMissing bool

The replacement should be appended to the collection if the section to replace is not found

Remarks

Items matching the and EndReplace predicates should not be included in the output.

Properties

AddIfMissing

The replacement should be appended to the collection if the section to replace is not found

public bool AddIfMissing { get; init; }

Property Value

bool

EndReplace

Method that defines if a source item marks the end of the section to replace

public Predicate<T> EndReplace { get; init; }

Property Value

Predicate<T>

Replacement

Items to replace with

public IEnumerable<T> Replacement { get; init; }

Property Value

IEnumerable<T>

StartReplace

Method that defines if a source marks the start of the section to replace

public Predicate<T> StartReplace { get; init; }

Property Value

Predicate<T>