class Variant

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

Public Methods

void Variant (ObjectPoolGroup * group_)

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

void ~Variant ()

Defined at line 1439 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 1446 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 1453 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 1456 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 1476 of file ../../third_party/spirv-cross/src/spirv_common.hpp

void set (IVariant * val, Types new_type)

Defined at line 1498 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 1517 of file ../../third_party/spirv-cross/src/spirv_common.hpp

template <typename T>
T & get ()

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

template <typename T>
const T & get ()

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

Types get_type ()

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

ID get_id ()

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

bool empty ()

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

void reset ()

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

void set_allow_type_rewrite ()

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