shader: improve to structural conversion transform

fix memory leak in spv::dump
properly print blocks
add loop, continue and selection construct nodes
add getParent() and print(...) to RegionLike
This commit is contained in:
DH 2025-09-20 22:05:32 +03:00
parent 4b854f46a8
commit 67f3ece45a
29 changed files with 2172 additions and 1211 deletions

View file

@ -1,6 +1,7 @@
#pragma once
#include <compare>
#include <type_traits>
#include <utility>
namespace rx {
@ -12,7 +13,7 @@ template <typename RT, typename... ArgsT> class FunctionRef<RT(ArgsT...)> {
public:
constexpr FunctionRef() = default;
template <typename T>
template <typename T> requires (!std::is_same_v<std::remove_cvref_t<T>, FunctionRef>)
constexpr FunctionRef(T &&object)
requires requires(ArgsT... args) { RT(object(args...)); }
: context(