Struct Range<T>
Define un rango de valores.
Inherited Members
Namespace: TheXDS.MCART.Types
Assembly: MCART.dll
Syntax
public struct Range<T> : IRange<T>, IEquatable<IRange<T>>, ICloneable<Range<T>>, ICloneable where T : IComparable<T>
Type Parameters
Name | Description |
---|---|
T | Tipo base del rango de valores. |
Constructors
| Edit this page View SourceRange(T)
Inicializa una nueva instancia de la estructura Range<T>
Declaration
public Range(T maximum)
Parameters
Type | Name | Description |
---|---|---|
T | maximum | Valor máximo del rango, inclusive. |
Range(T, bool)
Inicializa una nueva instancia de la estructura Range<T>
Declaration
public Range(T maximum, bool inclusive)
Parameters
Type | Name | Description |
---|---|---|
T | maximum | Valor máximo del rango. |
bool | inclusive | Si se establece en true, el valor máximo será incluido dentro del rango. |
Range(T, T)
Inicializa una nueva instancia de la estructura Range<T>
Declaration
public Range(T minimum, T maximum)
Parameters
Type | Name | Description |
---|---|---|
T | minimum | Valor mínimo del rango, inclusive. |
T | maximum | Valor máximo del rango, inclusive. |
Range(T, T, bool)
Inicializa una nueva instancia de la estructura Range<T>
Declaration
public Range(T minimum, T maximum, bool inclusive)
Parameters
Type | Name | Description |
---|---|---|
T | minimum | Valor mínimo del rango. |
T | maximum | Valor máximo del rango. |
bool | inclusive | Si se establece en true, los valores mínimo y máximo serán incluidos dentro del rango. |
Range(T, T, bool, bool)
Inicializa una nueva instancia de la estructura Range<T>
Declaration
public Range(T minimum, T maximum, bool minInclusive, bool maxInclusive)
Parameters
Type | Name | Description |
---|---|---|
T | minimum | Valor mínimo del rango. |
T | maximum | Valor máximo del rango. |
bool | minInclusive | Si se establece en true, el valor mínimo será incluido dentro del rango. |
bool | maxInclusive | Si se establece en true, el valor máximo será incluido dentro del rango. |
Properties
| Edit this page View SourceMaxInclusive
Obtiene o establece un valor que determina si el valor máximo es parte del rango.
Declaration
public bool MaxInclusive { readonly get; set; }
Property Value
Type | Description |
---|---|
bool |
Maximum
Valor máximo del rango.
Declaration
public T Maximum { readonly get; set; }
Property Value
Type | Description |
---|---|
T |
MinInclusive
Obtiene o establece un valor que determina si el valor mínimo es parte del rango.
Declaration
public bool MinInclusive { readonly get; set; }
Property Value
Type | Description |
---|---|
bool |
Minimum
Valor mínimo del rango.
Declaration
public T Minimum { readonly get; set; }
Property Value
Type | Description |
---|---|
T |
Methods
| Edit this page View SourceClone()
Creates a copy of this instance.
Declaration
public readonly Range<T> Clone()
Returns
Type | Description |
---|---|
Range<T> | A copy of this instance of type Range<T>. |
Equals(object?)
Indica si esta instancia y un objeto especificado son iguales.
Declaration
public override readonly bool Equals(object? obj)
Parameters
Type | Name | Description |
---|---|---|
object | obj | Objeto que se va a compara con la instancia actual. |
Returns
Type | Description |
---|---|
bool | true si esta instancia y
|
Overrides
| Edit this page View SourceEquals(IRange<T>?)
Indica si esta instancia y un objeto especificado son iguales.
Declaration
public readonly bool Equals(IRange<T>? other)
Parameters
Type | Name | Description |
---|---|---|
IRange<T> | other | Objeto que se va a compara con la instancia actual. |
Returns
Type | Description |
---|---|
bool | true si esta instancia y
|
GetHashCode()
Devuelve el código Hash de esta instancia.
Declaration
public override readonly int GetHashCode()
Returns
Type | Description |
---|---|
int | El código Hash de esta instancia. |
Overrides
| Edit this page View SourceIntersect(IRange<T>)
Obtiene un rango de intersección a partir de este y otro rango especificado.
Declaration
public readonly Range<T> Intersect(IRange<T> other)
Parameters
Type | Name | Description |
---|---|---|
IRange<T> | other | Rango a intersectar. |
Returns
Type | Description |
---|---|
Range<T> | La intersección entre este rango y |
Intersects(IRange<T>)
Determina si un Range<T> intersecta a este.
Declaration
public readonly bool Intersects(IRange<T> other)
Parameters
Type | Name | Description |
---|---|---|
IRange<T> | other | Rango a comprobar. |
Returns
Type | Description |
---|---|
bool | true si |
IsWithin(T)
Comprueba si un valor T
se encuentra dentro de este Range<T>.
Declaration
public readonly bool IsWithin(T value)
Parameters
Type | Name | Description |
---|---|---|
T | value | Valor a comprobar. |
Returns
Type | Description |
---|---|
bool | true si el valor se encuentra dentro de este Range<T>, false en caso contrario. |
Join(IRange<T>)
Combina este Range<T> con otro.
Declaration
public readonly Range<T> Join(IRange<T> other)
Parameters
Type | Name | Description |
---|---|---|
IRange<T> | other |
Returns
Type | Description |
---|---|
Range<T> |
Parse(string)
Crea un Range<T> a partir de una cadena.
Declaration
public static Range<T> Parse(string value)
Parameters
Type | Name | Description |
---|---|---|
string | value | Valor a partir del cual crear un Range<T>. |
Returns
Type | Description |
---|---|
Range<T> | Range<T> que ha sido creado. |
Exceptions
Type | Condition |
---|---|
FormatException | Se produce si la conversión ha fallado. |
ToString()
Convierte este Range<T> en su representación como una cadena.
Declaration
public override readonly string ToString()
Returns
Type | Description |
---|---|
string | Una representación de este Range<T> como una cadena. |
Overrides
| Edit this page View SourceTryParse(string, out Range<T>)
Intenta crear un Range<T> a partir de una cadena.
Declaration
public static bool TryParse(string value, out Range<T> range)
Parameters
Type | Name | Description |
---|---|---|
string | value | Valor a partir del cual crear un Range<T>. |
Range<T> | range | Range<T> que ha sido creado. |
Returns
Type | Description |
---|---|
bool | true si la conversión ha tenido éxito, false en caso contrario. |
Operators
| Edit this page View Sourceoperator +(Range<T>, Range<T>)
Une dos rangos de valores.
Declaration
public static Range<T> operator +(Range<T> left, Range<T> right)
Parameters
Type | Name | Description |
---|---|---|
Range<T> | left | Operador de la izquierda. |
Range<T> | right | Operador de la derecha. |
Returns
Type | Description |
---|---|
Range<T> | La unión de ambos Range<T>. Si los rangos no intersectan, se incluirán todos los valores faltantes. |
operator ==(Range<T>, Range<T>)
Compara la igualdad entre dos instancias de Range<T>.
Declaration
public static bool operator ==(Range<T> left, Range<T> right)
Parameters
Type | Name | Description |
---|---|---|
Range<T> | left | Objeto a comparar |
Range<T> | right | Objeto contra el cual comparar. |
Returns
Type | Description |
---|---|
bool | true si ambas instancias son iguales, false en caso contrario. |
operator !=(Range<T>, Range<T>)
Declaration
public static bool operator !=(Range<T> left, Range<T> right)
Parameters
Type | Name | Description |
---|---|---|
Range<T> | left | Objeto a comparar |
Range<T> | right | Objeto contra el cual comparar. |
Returns
Type | Description |
---|---|
bool | true si ambas instancias son distintas, false en caso contrario. |