Iuvo Unity 0.5.1
This is library containing a variety of helper classes and extension methods for the Unity gane engine.
GitHub | Iuvo Unity Updates | Creator
Loading...
Searching...
No Matches
IuvoUnity.DataStructs.Link< T > Class Template Reference

Public Member Functions

 Link ()
 Link (T data)
void SetData (T data)
GetData ()
void SetNext (Link< T > next)
void SetPrevious (Link< T > prev)
Link< T > TryGetNext ()
Link< T > TryGetPrevious ()
bool IsNextNull ()
bool IsPreviousNull ()
IEnumerable< Link< T > > TraverseForward (int maxSteps=1000)
Link< T > Clone ()

Private Attributes

_data
Link< T > _previous
Link< T > _next

Member Function Documentation

◆ Clone()

Link< T > IuvoUnity.DataStructs.Link< T >.Clone ( )
59 {
60 return new Link<T>(_data);
61 }

References _data, and Link().

◆ GetData()

T IuvoUnity.DataStructs.Link< T >.GetData ( )
28=> _data;

References _data.

◆ IsNextNull()

bool IuvoUnity.DataStructs.Link< T >.IsNextNull ( )
44=> _next == null;

References _next.

◆ IsPreviousNull()

bool IuvoUnity.DataStructs.Link< T >.IsPreviousNull ( )
45=> _previous == null;

References _previous.

◆ Link() [1/2]

IuvoUnity.DataStructs.Link< T >.Link ( )
14 {
15 SetData(default);
16 _previous = null;
17 _next = null;
18 }

References _next, _previous, and SetData().

Referenced by Clone(), SetNext(), SetPrevious(), TryGetNext(), and TryGetPrevious().

◆ Link() [2/2]

IuvoUnity.DataStructs.Link< T >.Link ( T data)
21 {
22 SetData(data);
23 _previous = null;
24 _next = null;
25 }

References _next, _previous, and SetData().

◆ SetData()

void IuvoUnity.DataStructs.Link< T >.SetData ( T data)
27=> _data = data;

References _data.

Referenced by Link(), and Link().

◆ SetNext()

void IuvoUnity.DataStructs.Link< T >.SetNext ( Link< T > next)

◆ SetPrevious()

void IuvoUnity.DataStructs.Link< T >.SetPrevious ( Link< T > prev)

◆ TraverseForward()

IEnumerable< Link< T > > IuvoUnity.DataStructs.Link< T >.TraverseForward ( int maxSteps = 1000)
48 {
49 var current = this;
50 int count = 0;
51 while (current != null && count++ < maxSteps)
52 {
53 yield return current;
54 current = current.TryGetNext();
55 }
56 }

◆ TryGetNext()

Link< T > IuvoUnity.DataStructs.Link< T >.TryGetNext ( )
41=> _next;

References _next, and Link().

Referenced by IuvoUnity.DataStructs.Chain< T >.Remove().

◆ TryGetPrevious()

Link< T > IuvoUnity.DataStructs.Link< T >.TryGetPrevious ( )
42=> _previous;

References _previous, and Link().

Referenced by IuvoUnity.DataStructs.Chain< T >.Remove().

Member Data Documentation

◆ _data

T IuvoUnity.DataStructs.Link< T >._data
private

Referenced by Clone(), GetData(), and SetData().

◆ _next

Link<T> IuvoUnity.DataStructs.Link< T >._next
private

◆ _previous

Link<T> IuvoUnity.DataStructs.Link< T >._previous
private

The documentation for this class was generated from the following file:
  • D:/Unity/IuvoUnityCore/Assets/IuvoUnity/Runtime/DataStructs/Link.cs