YOrch 1.0.0
Loading...
Searching...
No Matches
layout.hpp File Reference
#include <array>
#include <cstddef>
Include dependency graph for layout.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  yorch::detail::child_layout< N >
 Flat direct-child adjacency storage for a tree-shaped plan. More...
 

Namespaces

namespace  yorch
 
namespace  yorch::detail
 

Functions

template<typename... Nodes>
consteval auto yorch::detail::make_level_array ()
 
template<std::size_t N>
consteval auto yorch::detail::make_slot_index_array ()
 
template<std::size_t N>
consteval auto yorch::detail::make_parent_index_array (const std::array< std::size_t, N > &levels)
 Reconstructs each node's direct parent index from the recorded level sequence.
 
template<std::size_t N>
consteval auto yorch::detail::make_child_layout (const std::array< std::size_t, N > &parents)
 Builds a flat direct-child adjacency layout from per-node parent indices.
 

Variables

template<typename... Nodes>
constexpr auto yorch::detail::compiled_levels_v = make_level_array<Nodes...>()
 
template<typename... Nodes>
constexpr auto yorch::detail::compiled_parent_indices_v
 
template<typename... Nodes>
constexpr auto yorch::detail::compiled_child_layout_v
 
template<typename... Nodes>
constexpr auto yorch::detail::compiled_slot_indices_v