Skip to content

T_CodeJam_Ranges_CompositeRange_1

Andrew Koryavchenko edited this page Jul 4, 2017 · 3 revisions

CompositeRange(T) Structure

Describes a composite range that contains some subranges.

Namespace: CodeJam.Ranges
Assembly: CodeJam (in CodeJam.dll) Version: 1.1.0.0 (1.1.0.0)

Syntax

C#

[SerializableAttribute]
public struct CompositeRange<T> : IEquatable<CompositeRange<T>>, 
	IFormattable, ICompositeRange<T>

VB

<SerializableAttribute>
Public Structure CompositeRange(Of T)
	Implements IEquatable(Of CompositeRange(Of T)), IFormattable, 
	ICompositeRange(Of T)

F#

[<SealedAttribute>]
[<SerializableAttribute>]
type CompositeRange<'T> =  
    struct
        interface IEquatable<CompositeRange<'T>>
        interface IFormattable
        interface ICompositeRange<'T>
    end

Type Parameters

 

T
The type of the value. Should implement or .
  The CompositeRange(T) type exposes the following members.

Constructors

 

Name Description
Public method CompositeRange(T)(Range(T)) Creates instance of .
Public method CompositeRange(T)(IEnumerable(Range(T))) Creates instance of .
  Back to Top

Properties

 

Name Description
Public property ContainingRange Range that contains all subranges.
Public property IsEmpty The composite range is empty, ∅.
Public property IsMerged The composite range cannot be simplified anymore. Subranges do not intersect and start one exactly after another.
Public property IsNotEmpty The composite range is NOT empty, ≠ ∅
Public property SubRanges Collection of subranges.
  Back to Top

Methods

 

Name Description
Public method Equals(Object) Indicates whether the current range and a specified object are equal. (Overrides ValueType.Equals(Object).)
Public method Equals(CompositeRange(T)) Indicates whether the current range is equal to another.
Public method GetHashCode Returns a hash code for the current range. (Overrides ValueType.GetHashCode().)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method Merge Returns simplified composite range. Adjacent ranges with same keys will be merged.
Public method ToString() Returns string representation of the range. (Overrides ValueType.ToString().)
Public method ToString(IFormatProvider) Returns string representation of the range using the specified format string. If T does not implement the format string is ignored.
Public method ToString(String) Returns string representation of the range using the specified format string. If T does not implement the format string is ignored.
Public method ToString(String, IFormatProvider) Returns string representation of the range using the specified format string. If T does not implement the format string is ignored.
  Back to Top

Operators

 

Name Description
Public operatorStatic member Equality Implements the operator ==.
Public operatorStatic member Inequality Implements the operator !=.
  Back to Top

Fields

 

Name Description
Public fieldStatic member Empty Empty range, ∅
Public fieldStatic member Infinite Infinite range, (-∞..+∞)
  Back to Top

Extension Methods

 

Name Description
Public Extension Method Contains(T)(T) Overloaded.
Determines whether the composite range contains the specified value. (Defined by CompositeRangeExtensions.)
Public Extension Method Contains(T)(Range(T)) Overloaded.
Determines whether the composite range contains another range. (Defined by CompositeRangeExtensions.)
Public Extension Method Contains(T)(RangeBoundaryFrom(T)) Overloaded.
Determines whether the composite range contains the specified range boundary. (Defined by CompositeRangeExtensions.)
Public Extension Method Contains(T)(RangeBoundaryTo(T)) Overloaded.
Determines whether the composite range contains the specified range boundary. (Defined by CompositeRangeExtensions.)
Public Extension Method Contains(T)(T, T) Overloaded.
Determines whether the composite range contains another range. (Defined by CompositeRangeExtensions.)
Public Extension Method Contains(T, TCompositeRange)(TCompositeRange) Overloaded.
Determines whether the composite range contains another range. (Defined by CompositeRangeExtensions.)
Public Extension Method Contains(T, TKey2)(Range(T, TKey2)) Overloaded.
Determines whether the composite range contains another range. (Defined by CompositeRangeExtensions.)
Public Extension Method Except(T)(Range(T)) Overloaded.
Returns source range with other range excluded. (Defined by CompositeRangeExtensions.)
Public Extension Method Except(T)(T, T) Overloaded.
Returns source range with other range excluded. (Defined by CompositeRangeExtensions.)
Public Extension Method Except(T, TCompositeRange)(TCompositeRange) Overloaded.
Returns source range with other range excluded. (Defined by CompositeRangeExtensions.)
Public Extension Method Except(T, TKey2)(Range(T, TKey2)) Overloaded.
Returns source range with other range excluded. (Defined by CompositeRangeExtensions.)
Public Extension Method ExtendFrom(T)(T) Overloaded.
Extends the range from the left. (Defined by CompositeRangeExtensions.)
Public Extension Method ExtendFrom(T)(RangeBoundaryFrom(T)) Overloaded.
Extends the range from the left. (Defined by CompositeRangeExtensions.)
Public Extension Method ExtendTo(T)(T) Overloaded.
Extends the range from the right. (Defined by CompositeRangeExtensions.)
Public Extension Method ExtendTo(T)(RangeBoundaryTo(T)) Overloaded.
Extends the range from the right. (Defined by CompositeRangeExtensions.)
Public Extension Method GetComplementation(T) Returns complementation composite range. Result range contains result of (infinityRange.Exclude(compositeRange). (Defined by CompositeRangeExtensions.)
Public Extension Method GetIntersection(T)(T) Overloaded.
Returns ranges that has intersections with passed range. (Defined by CompositeRangeExtensions.)
Public Extension Method GetIntersection(T)(Range(T)) Overloaded.
Returns ranges that has intersections with passed range. (Defined by CompositeRangeExtensions.)
Public Extension Method GetIntersection(T)(T, T) Overloaded.
Returns ranges that has intersections with passed range. (Defined by CompositeRangeExtensions.)
Public Extension Method GetIntersection(T, TKey2)(Range(T, TKey2)) Overloaded.
Returns ranges that has intersections with passed range. (Defined by CompositeRangeExtensions.)
Public Extension Method GetIntersections(T) Returns all range intersections from the composite range. (Defined by CompositeRangeExtensions.)
Public Extension Method HasIntersection(T)(Range(T)) Overloaded.
Determines whether the composite range has intersection with another range. (Defined by CompositeRangeExtensions.)
Public Extension Method HasIntersection(T)(T, T) Overloaded.
Determines whether the composite has intersection with another range. (Defined by CompositeRangeExtensions.)
Public Extension Method HasIntersection(T, TCompositeRange)(TCompositeRange) Overloaded.
Determines whether the composite range has intersection with another range. (Defined by CompositeRangeExtensions.)
Public Extension Method HasIntersection(T, TKey2)(Range(T, TKey2)) Overloaded.
Determines whether the composite range has intersection with another range. (Defined by CompositeRangeExtensions.)
Public Extension Method Intersect(T)(Range(T)) Overloaded.
Returns an intersection of the the ranges. (Defined by CompositeRangeExtensions.)
Public Extension Method Intersect(T)(T, T) Overloaded.
Returns an intersection of the the ranges. (Defined by CompositeRangeExtensions.)
Public Extension Method Intersect(T, TCompositeRange)(TCompositeRange) Overloaded.
Returns an intersection of the the ranges. (Defined by CompositeRangeExtensions.)
Public Extension Method Intersect(T, TKey2)(Range(T, TKey2)) Overloaded.
Returns an intersection of the the ranges. (Defined by CompositeRangeExtensions.)
Public Extension Method MakeExclusive(T) Replaces inclusive boundaries with exclusive ones with the values from the selector callbacks (Defined by CompositeRangeExtensions.)
Public Extension Method MakeInclusive(T) Replaces exclusive boundaries with inclusive ones with the values from the selector callbacks (Defined by CompositeRangeExtensions.)
Public Extension Method TrimFrom(T)(T) Overloaded.
Trims the range from the left. (Defined by CompositeRangeExtensions.)
Public Extension Method TrimFrom(T)(RangeBoundaryFrom(T)) Overloaded.
Trims the range from the left. (Defined by CompositeRangeExtensions.)
Public Extension Method TrimTo(T)(T) Overloaded.
Trims the range from the right. (Defined by CompositeRangeExtensions.)
Public Extension Method TrimTo(T)(RangeBoundaryTo(T)) Overloaded.
Trims the range from the right. (Defined by CompositeRangeExtensions.)
Public Extension Method Union(T)(CompositeRange(T)) Overloaded.
Returns a union range containing all subranges. (Defined by CompositeRangeExtensions.)
Public Extension Method Union(T)(Range(T)) Overloaded.
Returns a union range containing all subranges. (Defined by CompositeRangeExtensions.)
Public Extension Method WithKeys(T, TKey2) Creates a new composite range with the key specified. (Defined by CompositeRangeExtensions.)
Public Extension Method WithValues(T, T2)(Func(T, T2)) Overloaded.
Creates a new composite range with the key specified. (Defined by CompositeRangeExtensions.)
Public Extension Method WithValues(T, T2)(Func(T, T2), Func(T, T2)) Overloaded.
Creates a new composite range with the key specified. (Defined by CompositeRangeExtensions.)
  Back to Top

See Also

Reference

CodeJam.Ranges Namespace
System.IComparable(T)
System.IComparable

Clone this wiki locally