digraph "Graphical Class Hierarchy"
{
 // LATEX_PDF_SIZE
  bgcolor="transparent";
  edge [fontname=Helvetica,fontsize=10,labelfontname=Helvetica,labelfontsize=10];
  node [fontname=Helvetica,fontsize=10,shape=box,height=0.2,width=0.4];
  rankdir="LR";
  Node0 [id="Node000000",label="std::false_type",height=0.2,width=0.4,color="grey60", fillcolor="#E0E0E0", style="filled",tooltip=" "];
  Node0 -> Node1 [id="edge73_Node000000_Node000001",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node1 [id="Node000001",label="entt::enum_as_bitmask\l\< Type, std::void_t\<\l decltype(Type::_entt\l_enum_as_bitmask)\> \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1enum__as__bitmask_3_01Type_00_01std_1_1void__t_3_01decltype_07Type_1_1__entt__enum__as__bitmask_08_4_01_4.html",tooltip="Enable bitmask support for enum classes."];
  Node0 -> Node3 [id="edge74_Node000000_Node000003",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node3 [id="Node000003",label="entt::is_applicable\l\< Func, Tuple\< Args... \> \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__applicable_3_01Func_00_01Tuple_3_01Args_8_8_8_01_4_01_4.html",tooltip="Same as std::is_invocable, but with tuples."];
  Node0 -> Node5 [id="edge75_Node000000_Node000005",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node5 [id="Node000005",label="entt::is_applicable\l\< Func, const Tuple\l\< Args... \> \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__applicable_3_01Func_00_01const_01Tuple_3_01Args_8_8_8_01_4_01_4.html",tooltip="Same as std::is_invocable, but with tuples."];
  Node0 -> Node6 [id="edge76_Node000000_Node000006",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node6 [id="Node000006",label="entt::is_applicable\l_r\< Ret, Func, std::\ltuple\< Args... \> \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__applicable__r_3_01Ret_00_01Func_00_01std_1_1tuple_3_01Args_8_8_8_01_4_01_4.html",tooltip="Same as std::is_invocable_r, but with tuples for arguments."];
  Node0 -> Node8 [id="edge77_Node000000_Node000008",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node8 [id="Node000008",label="entt::is_complete\<\l Type, std::void_t\<\l decltype(sizeof(Type))\> \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__complete_3_01Type_00_01std_1_1void__t_3_01decltype_07sizeof_07Type_08_08_4_01_4.html",tooltip="Provides the member constant value to true if a given type is complete, false otherwise."];
  Node0 -> Node16 [id="edge78_Node000000_Node000016",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node16 [id="Node000016",label="entt::is_iterator\<\l Type, std::enable_if\l_t\<!std::is_void_v\< std\l::remove_const_t\< std::remove\l_pointer_t\< Type \> \> \> \> \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__iterator_3_01Type_00_01std_1_1enable__if__t_3_9std_1_1is__void__v_3_01std_1_1r501af25439260c427fcebc814acb4598.html",tooltip="Provides the member constant value to true if a given type is an iterator, false otherwise."];
  Node0 -> Node18 [id="edge79_Node000000_Node000018",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node18 [id="Node000018",label="entt::is_meta_pointer\l_like\< Type \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__meta__pointer__like.html",tooltip=" "];
  Node18 -> Node19 [id="edge80_Node000018_Node000019",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node19 [id="Node000019",label="entt::is_meta_pointer\l_like\< const Type \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__meta__pointer__like_3_01const_01Type_01_4.html",tooltip="Partial specialization to ensure that const pointer-like types are also accepted."];
  Node0 -> Node10 [id="edge81_Node000000_Node000010",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node10 [id="Node000010",label="entt::is_meta_pointer\l_like\< Type * \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__meta__pointer__like_3_01Type_01_5_01_4.html",tooltip="Makes plain pointers pointer-like types for the meta system."];
  Node0 -> Node20 [id="edge82_Node000000_Node000020",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node20 [id="Node000020",label="entt::is_meta_pointer\l_like\< Type(*)[N]\>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__meta__pointer__like_3_01Type_07_5_08_0fN_0e_4.html",tooltip="Partial specialization used to reject pointers to arrays."];
  Node0 -> Node11 [id="edge83_Node000000_Node000011",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node11 [id="Node000011",label="entt::is_meta_pointer\l_like\< Type, std::void\l_t\< typename Type::is_meta\l_pointer_like \> \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__meta__pointer__like_3_01Type_00_01std_1_1void__t_3_01typename_01Type_1_1is__meta__pointer__like_01_4_01_4.html",tooltip="Specialization for self-proclaimed meta pointer like types."];
  Node0 -> Node19 [id="edge84_Node000000_Node000019",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node0 -> Node12 [id="edge85_Node000000_Node000012",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node12 [id="Node000012",label="entt::is_meta_pointer\l_like\< std::shared_ptr\l\< Type \> \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__meta__pointer__like_3_01std_1_1shared__ptr_3_01Type_01_4_01_4.html",tooltip="Makes std::shared_ptrs of any type pointer-like types for the meta system."];
  Node0 -> Node13 [id="edge86_Node000000_Node000013",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node13 [id="Node000013",label="entt::is_meta_pointer\l_like\< std::unique_ptr\l\< Type, Args... \> \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__meta__pointer__like_3_01std_1_1unique__ptr_3_01Type_00_01Args_8_8_8_01_4_01_4.html",tooltip="Makes std::unique_ptrs of any type pointer-like types for the meta system."];
  Node0 -> Node14 [id="edge87_Node000000_Node000014",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node14 [id="Node000014",label="entt::is_transparent\l\< Type, std::void_t\<\l typename Type::is_transparent \> \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__transparent_3_01Type_00_01std_1_1void__t_3_01typename_01Type_1_1is__transparent_01_4_01_4.html",tooltip="Provides the member constant value to true if Type::is_transparent is valid and denotes a type,..."];
  Node0 -> Node15 [id="edge88_Node000000_Node000015",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node15 [id="Node000015",label="entt::is_tuple\< std\l::tuple\< Args... \> \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__tuple_3_01std_1_1tuple_3_01Args_8_8_8_01_4_01_4.html",tooltip="Provides the member constant value to true if a given type is a tuple, false otherwise."];
  Node0 -> Node21 [id="edge89_Node000000_Node000021",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node21 [id="Node000021",label="entt::enum_as_bitmask\l\< Type, typename \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1enum__as__bitmask.html",tooltip="Enable bitmask support for enum classes."];
  Node0 -> Node22 [id="edge90_Node000000_Node000022",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node22 [id="Node000022",label="entt::is_applicable\l\< typename, typename \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__applicable.html",tooltip="Same as std::is_invocable, but with tuples."];
  Node0 -> Node23 [id="edge91_Node000000_Node000023",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node23 [id="Node000023",label="entt::is_applicable\l_r\< typename, typename,\l typename \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__applicable__r.html",tooltip="Same as std::is_invocable_r, but with tuples for arguments."];
  Node0 -> Node24 [id="edge92_Node000000_Node000024",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node24 [id="Node000024",label="entt::is_complete\<\l Type, typename \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__complete.html",tooltip="Provides the member constant value to true if a given type is complete, false otherwise."];
  Node0 -> Node25 [id="edge93_Node000000_Node000025",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node25 [id="Node000025",label="entt::is_iterator\<\l Type, typename \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__iterator.html",tooltip="Provides the member constant value to true if a given type is an iterator, false otherwise."];
  Node0 -> Node26 [id="edge94_Node000000_Node000026",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node26 [id="Node000026",label="entt::is_meta_pointer\l_like\< typename, typename \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__meta__pointer__like.html",tooltip="Provides the member constant value to true if a given type is a pointer-like type from the point of v..."];
  Node0 -> Node27 [id="edge95_Node000000_Node000027",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node27 [id="Node000027",label="entt::is_transparent\l\< Type, typename \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__transparent.html",tooltip="Provides the member constant value to true if Type::is_transparent is valid and denotes a type,..."];
  Node0 -> Node28 [id="edge96_Node000000_Node000028",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node28 [id="Node000028",label="entt::is_tuple\< Type \>",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$structentt_1_1is__tuple.html",tooltip="Provides the member constant value to true if a given type is a tuple, false otherwise."];
  Node17 [id="Node000017",label="internal::has_iterator\l_category",height=0.2,width=0.4,color="grey60", fillcolor="#E0E0E0", style="filled",tooltip=" "];
  Node17 -> Node16 [id="edge97_Node000017_Node000016",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node2 [id="Node000002",label="std::is_enum",height=0.2,width=0.4,color="grey60", fillcolor="#E0E0E0", style="filled",tooltip=" "];
  Node2 -> Node1 [id="edge98_Node000002_Node000001",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node4 [id="Node000004",label="std::is_invocable",height=0.2,width=0.4,color="grey60", fillcolor="#E0E0E0", style="filled",tooltip=" "];
  Node4 -> Node3 [id="edge99_Node000004_Node000003",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node4 -> Node5 [id="edge100_Node000004_Node000005",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node7 [id="Node000007",label="std::is_invocable_r",height=0.2,width=0.4,color="grey60", fillcolor="#E0E0E0", style="filled",tooltip=" "];
  Node7 -> Node6 [id="edge101_Node000007_Node000006",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node9 [id="Node000009",label="std::true_type",height=0.2,width=0.4,color="grey60", fillcolor="#E0E0E0", style="filled",tooltip=" "];
  Node9 -> Node8 [id="edge102_Node000009_Node000008",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node9 -> Node10 [id="edge103_Node000009_Node000010",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node9 -> Node11 [id="edge104_Node000009_Node000011",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node9 -> Node12 [id="edge105_Node000009_Node000012",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node9 -> Node13 [id="edge106_Node000009_Node000013",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node9 -> Node14 [id="edge107_Node000009_Node000014",dir="back",color="steelblue1",style="solid",tooltip=" "];
  Node9 -> Node15 [id="edge108_Node000009_Node000015",dir="back",color="steelblue1",style="solid",tooltip=" "];
}
