Struct Piled<T>
Represents a PilePointer scoped by PileID. PileID uniquelly identifies the pile on the pointed-to machine.
Piled is used for deferred load/deserialization from pile. This is a useful optimization technique for tree serialization,
on deserialization Piled is returned, without having to deserialize the whole sub-graph of objects.
Upon the first access to Pile.Value the Get from pile takes place transparently.
When writing to pile, the Piled instance is written as a separate Pile entity with a distinct pointer
Implements
System.IEquatable<
Piled<T>>
Inherited Members
System.Object.Equals(System.Object, System.Object)
System.Object.GetType()
System.Object.ReferenceEquals(System.Object, System.Object)
Assembly: NFX.dll
Syntax
public struct Piled<T> : IEquatable<Piled<T>>
Type Parameters
Constructors
Piled(Int32, PilePointer)
Creates distributed pointer
Declaration
public Piled(int pileId, PilePointer ptr)
Parameters
Type |
Name |
Description |
System.Int32 |
pileId |
|
PilePointer |
ptr |
|
Fields
PileID
PileID uniquely identifies Pile instance on this or remote machine (if Pointer is distributed)
Declaration
public readonly int PileID
Field Value
Type |
Description |
System.Int32 |
|
Pointer
Pointer within the pile identoified by PileID
Declaration
public readonly PilePointer Pointer
Field Value
Properties
Invalid
Returns a -1:-1 non-valid pointer (either local or distributed)
Declaration
public static Piled<T> Invalid { get; }
Property Value
Type |
Description |
Piled<T> |
|
Valid
Returns true if PileID and Pointer hold values, however this does not mean that pointed-to data exists
Declaration
public bool Valid { get; }
Property Value
Type |
Description |
System.Boolean |
|
Value
Declaration
public T Value { get; set; }
Property Value
Methods
Equals(Piled<T>)
Declaration
public bool Equals(Piled<T> other)
Parameters
Type |
Name |
Description |
Piled<T> |
other |
|
Returns
Type |
Description |
System.Boolean |
|
Equals(Object)
Declaration
public override bool Equals(object obj)
Parameters
Type |
Name |
Description |
System.Object |
obj |
|
Returns
Type |
Description |
System.Boolean |
|
Overrides
System.ValueType.Equals(System.Object)
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Type |
Description |
System.Int32 |
|
Overrides
System.ValueType.GetHashCode()
ToString()
Declaration
public override string ToString()
Returns
Type |
Description |
System.String |
|
Overrides
System.ValueType.ToString()
Operators
Equality(Piled<T>, Piled<T>)
Declaration
public static bool operator ==(Piled<T> l, Piled<T> r)
Parameters
Returns
Type |
Description |
System.Boolean |
|
Inequality(Piled<T>, Piled<T>)
Declaration
public static bool operator !=(Piled<T> l, Piled<T> r)
Parameters
Returns
Type |
Description |
System.Boolean |
|
Implements
System.IEquatable<T>
Extension Methods