Spec TristateHolder
Holder that can be empty, dependent, or owner.

Extends Holder
All Extended Holder
Defined in <seqan/basic.h>
Signature template <typename TValue> class Holder<TValue, Tristate>;

Template Parameters

TValue Type of the managed object.

Interface Function Overview

Interface Functions Inherited From Holder

Interface Metafunction Overview

Interface Metafunctions Inherited From Holder

Detailed Description

A tristate holder A that holds an object B has one of the following states:

  • owner: A is the owner of B. If A is destroyed, B will be destroyed automatically.
  • dependent: A depends on B. B should not be destroyed as long as A is used.
  • empty: there is currently no object reference stored in the holder A.

The state of the holder can be determined by empty and dependent.

If a holder object is in owner state when destructed, the owned object is destructed as well.