class Variant

Defined at line 1569 of file ../../third_party/spirv-cross/src/spirv_common.hpp

Public Methods

void Variant (ObjectPoolGroup * group_)

Defined at line 1572 of file ../../third_party/spirv-cross/src/spirv_common.hpp

void ~Variant ()

Defined at line 1577 of file ../../third_party/spirv-cross/src/spirv_common.hpp

void Variant (Variant && other)

Marking custom move constructor as noexcept is important.

Defined at line 1584 of file ../../third_party/spirv-cross/src/spirv_common.hpp

void Variant (const Variant & variant)

We cannot copy from other variant without our own pool group.

Have to explicitly copy.

Defined at line 1591 of file ../../third_party/spirv-cross/src/spirv_common.hpp

Variant & operator= (Variant && other)

Marking custom move constructor as noexcept is important.

Defined at line 1594 of file ../../third_party/spirv-cross/src/spirv_common.hpp

Variant & operator= (const Variant & other)

This copy/clone should only be called in the Compiler constructor.

If this is called inside ::compile(), we invalidate any references we took higher in the stack.

This should never happen.

Defined at line 1614 of file ../../third_party/spirv-cross/src/spirv_common.hpp

void set (IVariant * val, Types new_type)

Defined at line 1636 of file ../../third_party/spirv-cross/src/spirv_common.hpp

template <typename T, typename... Ts>
T * allocate_and_set (Types new_type, Ts &&... ts)

Defined at line 1655 of file ../../third_party/spirv-cross/src/spirv_common.hpp

template <typename T>
T & get ()

Defined at line 1663 of file ../../third_party/spirv-cross/src/spirv_common.hpp

template <typename T>
const T & get ()

Defined at line 1673 of file ../../third_party/spirv-cross/src/spirv_common.hpp

Types get_type ()

Defined at line 1682 of file ../../third_party/spirv-cross/src/spirv_common.hpp

ID get_id ()

Defined at line 1687 of file ../../third_party/spirv-cross/src/spirv_common.hpp

bool empty ()

Defined at line 1692 of file ../../third_party/spirv-cross/src/spirv_common.hpp

void reset ()

Defined at line 1697 of file ../../third_party/spirv-cross/src/spirv_common.hpp

void set_allow_type_rewrite ()

Defined at line 1705 of file ../../third_party/spirv-cross/src/spirv_common.hpp