ILifetimeStrategy<T>

Overview

Lifetime stategy interface. See Lifetime strategies

Location

Implemented in

Required Methods


constructor    (declared in Object)

Default constructor.

 

constructor

 

ILifetimeStrategy<T>()

 

init()

 

ILifetimeStrategy<T>()

Equals  virtual    (declared in Object)

Returns true if the target object matches this one, by default compares the reference.

 

method Equals(obj: Object): Boolean

 

Boolean Equals(Object obj)

 

func Equals(_ obj: Object) -> Boolean

 

Boolean Equals(Object obj)

Parameters:

  • obj: the reference to compare this with.

Finalize  protected virtual    (declared in Object)

Finalizer implementation. If not overriden it's not called at all, the runtime checks if there is an override before calling a finalizer.

 

method Finalize

 

void Finalize()

 

func Finalize()

 

void Finalize()

GetHashCode  virtual    (declared in Object)

Returns a hashcode for this object. Overriden implementations should make sure that the number returned here is constant given the same object.

 

method GetHashCode: Int32

 

Int32 GetHashCode()

 

func GetHashCode() -> Int32

 

Int32 GetHashCode()

GetType    (declared in Object)

Returns the actual type of this class

 

method GetType: Type

 

Type GetType()

 

func GetType() -> Type

 

Type GetType()

ToString  virtual    (declared in Object)

Gets the string representation of this method.

 

method ToString: String

 

String ToString()

 

func ToString() -> String

 

String ToString()

Assign

Assigns aSource to aDest. Should do nothing if they point to the same value. Should cleanup aDest first.

 

class method Assign(var aDest: T; var aSource: T)

 

static void Assign(ref T aDest, ref T aSource)

 

static func Assign(_ aDest: T, _ aSource: T)

 

static void Assign(__ref T aDest, __ref T aSource)

Parameters:

  • aDest:
  • aSource:

Copy

Assigns aSource to aDest. Should do nothing if they point to the same value. Should not cleanup aDest first.

 

class method Copy(var aDest: T; var aSource: T)

 

static void Copy(ref T aDest, ref T aSource)

 

static func Copy(_ aDest: T, _ aSource: T)

 

static void Copy(__ref T aDest, __ref T aSource)

Parameters:

  • aDest:
  • aSource:

Init

Initializes a value to it's default value (usually nil).

 

class method Init(var Dest: T)

 

static void Init(ref T Dest)

 

static func Init(_ Dest: T)

 

static void Init(__ref T Dest)

Parameters:

  • Dest:

New

Create a new object for a given type; aTTY is the type info which should be in the object at offset 0, aSize should be size allocated.

 

class method New(aTTY: ^void; aSize: NativeInt): ^void

 

static void* New(void* aTTY, NativeInt aSize)

 

static func New(_ aTTY: UnsafeMutablePointer<void>, _ aSize: NativeInt) -> UnsafeMutablePointer<void>

 

static void* New(void* aTTY, NativeInt aSize)

Parameters:

  • aTTY:
  • aSize:

ReferenceEquals    (declared in Object)

Compares two references for equivalence (even if they have an equals operator)

 

class method ReferenceEquals(a: Object; b: Object): Boolean

 

static Boolean ReferenceEquals(Object a, Object b)

 

static func ReferenceEquals(_ a: Object, _ b: Object) -> Boolean

 

static Boolean ReferenceEquals(Object a, Object b)

Parameters:

  • a: left value
  • b: right value

Release

Release a value.

 

class method Release(var Dest: T)

 

static void Release(ref T Dest)

 

static func Release(_ Dest: T)

 

static void Release(__ref T Dest)

Parameters:

  • Dest: