diff --git a/docs/header_graph.mmd b/docs/header_graph.mmd new file mode 100644 index 0000000..b771ba7 --- /dev/null +++ b/docs/header_graph.mmd @@ -0,0 +1,107 @@ +flowchart BT + %% level 0 + compiler(compiler.hpp) + + %% level 1 + array(array.hpp) + atomic(atomic.hpp) + ct_conversions(ct_conversions.hpp) + array ~~~ compiler + atomic ~~~ compiler + ct_conversions --> compiler + priority(priority.hpp) + numeric(numeric.hpp) + priority ~~~ compiler + numeric ~~~ compiler + + %% level 2 + type_traits(type_traits.hpp) + type_traits --> ct_conversions + + %% level 3 + memory(memory.hpp) + memory --> type_traits + iterator(iterator.hpp) + iterator --> type_traits + concepts(concepts.hpp) + concepts --> type_traits + udls(udls.hpp) + udls --> type_traits + function_traits(function_traits.hpp) + function_traits --> type_traits + + %% level 4 + cx_vector(cx_vector.hpp) + cx_vector --> iterator + cx_vector --> concepts + rollover(rollover.hpp) + rollover --> concepts + utility(utility.hpp) + utility --> concepts + utility --> udls + + %% level 5 + cx_map(cx_map.hpp) + cx_map ---> iterator + cx_map --> utility + bit(bit.hpp) + bit --> utility + ct_string(ct_string.hpp) + ct_string --> utility + tuple(tuple.hpp) + tuple --> utility + + %% level 6 + span(span.hpp) + span ----> memory + span ----> iterator + span --> bit + byterator(byterator.hpp) + byterator ----> memory + byterator --> bit + cx_set(cx_set.hpp) + cx_set ---> cx_map + bitset(bitset.hpp) + bitset --> bit + bitset --> ct_string + panic(panic.hpp) + panic --> ct_string + A(env.hpp
static_assert.hpp) + A --> ct_string + tuple_algorithms(tuple_algorithms.hpp) + tuple_algorithms --> tuple + functional(functional.hpp) + functional --> tuple + C(algorithm.hpp
tuple_destructure.hpp) + C --> tuple + for_each_n_args(for_each_n_args.hpp) + for_each_n_args ----> function_traits + for_each_n_args --> tuple + + %% level 7 + cx_multimap(cx_multimap.hpp) + cx_multimap --> cx_set + cx_queue(cx_queue.hpp) + cx_queue ----> iterator + cx_queue --> panic + atomic_bitset(atomic_bitset.hpp) + atomic_bitset ---> bitset + B(intrusive_forward_list.hpp
intrusive_list.hpp) + B --> panic + ct_format(ct_format.hpp) + pp_map(pp_map.hpp) + ranges(ranges.hpp) + ct_format ----> ct_string + ct_format ---> tuple_algorithms + ct_format --> pp_map + ct_format --> ranges + call_by_need(call_by_need.hpp) + call_by_need --> tuple_algorithms + latched(latched.hpp) + latched --> functional + optional(optional.hpp) + optional --> functional + + %% level 8 + cached(cached.hpp) + cached --> latched diff --git a/docs/intro.adoc b/docs/intro.adoc index 68cd3e4..1a3764e 100644 --- a/docs/intro.adoc +++ b/docs/intro.adoc @@ -104,3 +104,10 @@ The following headers are available: * https://github.com/intel/cpp-std-extensions/blob/main/include/stdx/type_traits.hpp[`type_traits.hpp`] * https://github.com/intel/cpp-std-extensions/blob/main/include/stdx/udls.hpp[`udls.hpp`] * https://github.com/intel/cpp-std-extensions/blob/main/include/stdx/utility.hpp[`utility.hpp`] + + +=== Header Graph + +mermaid::header_graph.mmd[format="svg" config="mermaid.conf"] + +(The rendering makes this small. Either right-click and open in new tab, or https://github.com/intel/cpp-std-extensions/blob/main/docs/header_graph.mmd[view the file on GitHub].)