class Geo GeoUniquePtr

This is the documentation for Enlighten.

class Geo GeoUniquePtr

template<typename, typename>
class Geo::GeoUniquePtr

    └>D    └>Geo::NonCopyable

A value type to take ownership of a raw object allocated on the heap and bind its life-time to the scope of this class.

Virtually identical to std::auto_ptr, but with policy-based destruction semantics.

Functions

Name

Description

Name

Description

~GeoUniquePtr()

Destructor - Delete the internal object.

Delete()

Explicitly delete the internal object.

Detach()

Release ownership of the internal object and return it to the client.

GeoUniquePtr(T *)

Take ownership of the raw-ptr obj. Explicit so that you don't unknowingly change ownership.

GeoUniquePtr(GeoUniquePtr &&)

Move constructor.

GetPtr()

Explicitly return the contained type.

operator bool_type()

Is the object valid?

operator!=(const GeoUniquePtr &)

Equivalence/comparison tests.

operator*()

Allow dereferencing of the contained type.

operator[](Geo::s32)

Allow array referencing of the contained type.

operator<(const GeoUniquePtr &)

Equivalence/comparison tests.

operator=(GeoUniquePtr &&)

Move assignment operator.

operator==(const GeoUniquePtr &)

Equivalence/comparison tests.

operator>(const GeoUniquePtr &)

Equivalence/comparison tests.

operator->()

Access members of the owned object.

Reset(T *)

Hold new object, destroying current.

Friends

Name

Description

Name

Description

friend void Swap(GeoUniquePtr &a, GeoUniquePtr &b)

Specialized swap.



Geo::GeoUniquePtr< T, D >::~GeoUniquePtr


public: ~GeoUniquePtr()


Destructor - Delete the internal object.



void Geo::GeoUniquePtr< T, D >::Delete


public: void Delete()


Explicitly delete the internal object.



T* Geo::GeoUniquePtr< T, D >::Detach


public: T * Detach()