Struct LinkStruct<T1, T2, T3, T4, T5, T6>
Represents a link between objects.
Implements
Namespace: Towel.DataStructures
Assembly: Towel.dll
Syntax
public struct LinkStruct<T1, T2, T3, T4, T5, T6> : Link, IDataStructure<object>, ISteppable<object>, System.Collections.Generic.IEnumerable<object>, System.Runtime.CompilerServices.ITuple, ICloneable<LinkStruct<T1, T2, T3, T4, T5, T6>>
Type Parameters
Name | Description |
---|---|
T1 | The type of #1 value in the link. |
T2 | The type of #2 value in the link. |
T3 | The type of #3 value in the link. |
T4 | The type of #4 value in the link. |
T5 | The type of #5 value in the link. |
T6 | The type of #6 value in the link. |
Constructors
| Improve this Doc View SourceLinkStruct(T1, T2, T3, T4, T5, T6)
Creates a link between objects.
Declaration
public LinkStruct(T1 value1, T2 value2, T3 value3, T4 value4, T5 value5, T6 value6)
Parameters
Type | Name | Description |
---|---|---|
T1 | value1 | The #1 value to be linked. |
T2 | value2 | The #2 value to be linked. |
T3 | value3 | The #3 value to be linked. |
T4 | value4 | The #4 value to be linked. |
T5 | value5 | The #5 value to be linked. |
T6 | value6 | The #6 value to be linked. |
Properties
| Improve this Doc View SourceItem[Int32]
Declaration
public object this[int index] { get; }
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | index |
Property Value
Type | Description |
---|---|
System.Object |
Size
The number of values in the tuple.
Declaration
public int Size { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Value1
The #1 value of the link.
Declaration
public T1 Value1 { get; set; }
Property Value
Type | Description |
---|---|
T1 |
Value2
The #2 value of the link.
Declaration
public T2 Value2 { get; set; }
Property Value
Type | Description |
---|---|
T2 |
Value3
The #3 value of the link.
Declaration
public T3 Value3 { get; set; }
Property Value
Type | Description |
---|---|
T3 |
Value4
The #4 value of the link.
Declaration
public T4 Value4 { get; set; }
Property Value
Type | Description |
---|---|
T4 |
Value5
The #5 value of the link.
Declaration
public T5 Value5 { get; set; }
Property Value
Type | Description |
---|---|
T5 |
Value6
The #6 value of the link.
Declaration
public T6 Value6 { get; set; }
Property Value
Type | Description |
---|---|
T6 |
Methods
| Improve this Doc View SourceClone()
Clones a T
.
Declaration
public LinkStruct<T1, T2, T3, T4, T5, T6> Clone()
Returns
Type | Description |
---|---|
LinkStruct<T1, T2, T3, T4, T5, T6> | A clone of the |
Deconstruct(out T1, out T2, out T3, out T4, out T5, out T6)
Deconstructs the link.
Declaration
public void Deconstruct(out T1 value1, out T2 value2, out T3 value3, out T4 value4, out T5 value5, out T6 value6)
Parameters
Type | Name | Description |
---|---|---|
T1 | value1 | The #1 value of the link. |
T2 | value2 | The #2 value of the link. |
T3 | value3 | The #3 value of the link. |
T4 | value4 | The #4 value of the link. |
T5 | value5 | The #5 value of the link. |
T6 | value6 | The #6 value of the link. |
Equals(Object)
Declaration
public override bool Equals(object obj)
Parameters
Type | Name | Description |
---|---|---|
System.Object | obj |
Returns
Type | Description |
---|---|
System.Boolean |
Equals(LinkStruct<T1, T2, T3, T4, T5, T6>)
Check for equality with another link.
Declaration
public bool Equals(LinkStruct<T1, T2, T3, T4, T5, T6> b)
Parameters
Type | Name | Description |
---|---|---|
LinkStruct<T1, T2, T3, T4, T5, T6> | b | The other link to check for equality with. |
Returns
Type | Description |
---|---|
System.Boolean | True if equal; false if not. |
GetEnumerator()
Declaration
public System.Collections.Generic.IEnumerator<object> GetEnumerator()
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerator<System.Object> |
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Type | Description |
---|---|
System.Int32 |
StepperBreak<TStep>(TStep)
Traverses values and invokes a function on every T
value.
Declaration
public StepStatus StepperBreak<TStep>(TStep step = default(TStep))
where TStep : struct, IFunc<object, StepStatus>
Parameters
Type | Name | Description |
---|---|---|
TStep | step | The function to invoke on every |
Returns
Type | Description |
---|---|
StepStatus | The status of the traversal. |
Type Parameters
Name | Description |
---|---|
TStep | The type of function to invoke on every |
ToArray()
Constructs an array with the values of this data structure.
Declaration
public object[] ToArray()
Returns
Type | Description |
---|---|
System.Object[] | An array with the values of this data structure. |
Types()
Gets the types of the values of this link.
Declaration
public Type[] Types()
Returns
Type | Description |
---|---|
Type[] | The types of the values of this link. |
Operators
| Improve this Doc View SourceImplicit((T1, T2, T3, T4, T5, T6) to LinkStruct<T1, T2, T3, T4, T5, T6>)
Converts a tuple to a link.
Declaration
public static implicit operator LinkStruct<T1, T2, T3, T4, T5, T6>((T1, T2, T3, T4, T5, T6) tuple)
Parameters
Type | Name | Description |
---|---|---|
System.ValueTuple<T1, T2, T3, T4, T5, T6> | tuple | The tuple to convert to a link. |
Returns
Type | Description |
---|---|
LinkStruct<T1, T2, T3, T4, T5, T6> |
Implicit(Link<T1, T2, T3, T4, T5, T6> to LinkStruct<T1, T2, T3, T4, T5, T6>)
Converts a class link to a struct link.
Declaration
public static implicit operator LinkStruct<T1, T2, T3, T4, T5, T6>(Link<T1, T2, T3, T4, T5, T6> link)
Parameters
Type | Name | Description |
---|---|---|
Link<T1, T2, T3, T4, T5, T6> | link | The class link to convert to a struct link. |
Returns
Type | Description |
---|---|
LinkStruct<T1, T2, T3, T4, T5, T6> |
Implicit(LinkStruct<T1, T2, T3, T4, T5, T6> to (T1, T2, T3, T4, T5, T6))
Converts a link to a tuple.
Declaration
public static implicit operator (T1, T2, T3, T4, T5, T6)(LinkStruct<T1, T2, T3, T4, T5, T6> link)
Parameters
Type | Name | Description |
---|---|---|
LinkStruct<T1, T2, T3, T4, T5, T6> | link | The link to convert to a tuple. |
Returns
Type | Description |
---|---|
System.ValueTuple<T1, T2, T3, T4, T5, T6> |
Implicit(LinkStruct<T1, T2, T3, T4, T5, T6> to Tuple<T1, T2, T3, T4, T5, T6>)
Converts a link to a tuple.
Declaration
public static implicit operator Tuple<T1, T2, T3, T4, T5, T6>(LinkStruct<T1, T2, T3, T4, T5, T6> link)
Parameters
Type | Name | Description |
---|---|---|
LinkStruct<T1, T2, T3, T4, T5, T6> | link | The link to convert to a tuple. |
Returns
Type | Description |
---|---|
Tuple<T1, T2, T3, T4, T5, T6> |
Implicit(Tuple<T1, T2, T3, T4, T5, T6> to LinkStruct<T1, T2, T3, T4, T5, T6>)
Converts a tuple to a link.
Declaration
public static implicit operator LinkStruct<T1, T2, T3, T4, T5, T6>(Tuple<T1, T2, T3, T4, T5, T6> tuple)
Parameters
Type | Name | Description |
---|---|---|
Tuple<T1, T2, T3, T4, T5, T6> | tuple | The tuple to convert to a link. |
Returns
Type | Description |
---|---|
LinkStruct<T1, T2, T3, T4, T5, T6> |