grpc 1.56.0 → 1.61.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2616) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +1296 -928
  3. data/include/grpc/event_engine/event_engine.h +84 -52
  4. data/include/grpc/event_engine/internal/memory_allocator_impl.h +6 -0
  5. data/include/grpc/event_engine/internal/slice_cast.h +12 -0
  6. data/include/grpc/event_engine/memory_allocator.h +5 -3
  7. data/include/grpc/event_engine/slice.h +5 -0
  8. data/include/grpc/grpc_crl_provider.h +94 -0
  9. data/include/grpc/grpc_security.h +57 -1
  10. data/include/grpc/impl/call.h +29 -0
  11. data/include/grpc/impl/channel_arg_names.h +400 -0
  12. data/include/grpc/impl/grpc_types.h +1 -350
  13. data/include/grpc/impl/slice_type.h +1 -1
  14. data/include/grpc/module.modulemap +3 -0
  15. data/include/grpc/support/port_platform.h +103 -24
  16. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +55 -15
  17. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +20 -6
  18. data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +49 -46
  19. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +18 -10
  20. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +326 -0
  21. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +143 -0
  22. data/src/core/ext/filters/client_channel/backend_metric.cc +2 -2
  23. data/src/core/ext/filters/client_channel/client_channel.cc +514 -82
  24. data/src/core/ext/filters/client_channel/client_channel.h +55 -14
  25. data/src/core/ext/filters/client_channel/client_channel_internal.h +2 -0
  26. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +21 -8
  27. data/src/core/ext/filters/client_channel/connector.h +2 -3
  28. data/src/core/ext/filters/client_channel/dynamic_filters.cc +0 -1
  29. data/src/core/ext/filters/client_channel/dynamic_filters.h +5 -3
  30. data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +1 -1
  31. data/src/core/ext/filters/client_channel/http_proxy_mapper.cc +305 -0
  32. data/src/core/ext/filters/client_channel/http_proxy_mapper.h +53 -0
  33. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +60 -52
  34. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +27 -12
  35. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +32 -40
  36. data/src/core/ext/filters/client_channel/lb_policy/endpoint_list.cc +187 -0
  37. data/src/core/ext/filters/client_channel/lb_policy/endpoint_list.h +220 -0
  38. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +0 -2
  39. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +246 -231
  40. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +20 -19
  41. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +4 -4
  42. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +4 -3
  43. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +3 -1
  44. data/src/core/ext/filters/client_channel/lb_policy/health_check_client.cc +90 -25
  45. data/src/core/ext/filters/client_channel/lb_policy/health_check_client.h +3 -5
  46. data/src/core/ext/filters/client_channel/lb_policy/health_check_client_internal.h +27 -9
  47. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +13 -6
  48. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h +2 -0
  49. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +257 -210
  50. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h +0 -21
  51. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +898 -213
  52. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.h +36 -0
  53. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +19 -37
  54. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +488 -492
  55. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +3 -5
  56. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +63 -101
  57. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +416 -37
  58. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +37 -58
  59. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc +893 -76
  60. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +25 -51
  61. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +507 -523
  62. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +8 -0
  63. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +255 -185
  64. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +16 -58
  65. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +807 -308
  66. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h +2 -6
  67. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +18 -81
  68. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +5 -6
  69. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +12 -15
  70. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +102 -11
  71. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +105 -175
  72. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +46 -33
  73. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +11 -7
  74. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
  75. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc +6 -0
  76. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +112 -73
  77. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +3 -4
  78. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +76 -189
  79. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +46 -27
  80. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +2 -2
  81. data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +17 -13
  82. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +1 -0
  83. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +31 -19
  84. data/src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.cc +1031 -0
  85. data/src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.h +277 -0
  86. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +474 -560
  87. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver_attributes.h +62 -0
  88. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.cc +25 -0
  89. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.h +30 -0
  90. data/src/core/ext/filters/client_channel/retry_filter.cc +40 -2499
  91. data/src/core/ext/filters/client_channel/retry_filter.h +92 -1
  92. data/src/core/ext/filters/client_channel/retry_filter_legacy_call_data.cc +2051 -0
  93. data/src/core/ext/filters/client_channel/retry_filter_legacy_call_data.h +442 -0
  94. data/src/core/ext/filters/client_channel/retry_service_config.cc +1 -1
  95. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +62 -70
  96. data/src/core/ext/filters/client_channel/subchannel.cc +47 -9
  97. data/src/core/ext/filters/client_channel/subchannel.h +20 -5
  98. data/src/core/ext/filters/client_channel/subchannel_interface_internal.h +3 -0
  99. data/src/core/ext/filters/client_channel/subchannel_stream_client.cc +0 -1
  100. data/src/core/ext/filters/deadline/deadline_filter.cc +21 -24
  101. data/src/core/ext/filters/deadline/deadline_filter.h +0 -4
  102. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +18 -13
  103. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +13 -4
  104. data/src/core/ext/filters/http/client/http_client_filter.cc +30 -39
  105. data/src/core/ext/filters/http/client/http_client_filter.h +10 -5
  106. data/src/core/ext/filters/http/client_authority_filter.cc +23 -25
  107. data/src/core/ext/filters/http/client_authority_filter.h +12 -4
  108. data/src/core/ext/filters/http/http_filters_plugin.cc +58 -38
  109. data/src/core/ext/filters/http/message_compress/compression_filter.cc +56 -84
  110. data/src/core/ext/filters/http/message_compress/compression_filter.h +54 -12
  111. data/src/core/ext/filters/http/message_compress/legacy_compression_filter.cc +325 -0
  112. data/src/core/ext/filters/http/message_compress/legacy_compression_filter.h +139 -0
  113. data/src/core/ext/filters/http/server/http_server_filter.cc +55 -53
  114. data/src/core/ext/filters/http/server/http_server_filter.h +11 -4
  115. data/src/core/ext/filters/message_size/message_size_filter.cc +79 -108
  116. data/src/core/ext/filters/message_size/message_size_filter.h +35 -23
  117. data/src/core/ext/filters/rbac/rbac_filter.cc +46 -113
  118. data/src/core/ext/filters/rbac/rbac_filter.h +18 -29
  119. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +4 -7
  120. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +26 -13
  121. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +179 -108
  122. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +42 -14
  123. data/src/core/ext/gcp/metadata_query.cc +0 -1
  124. data/src/core/ext/transport/chttp2/alpn/alpn.cc +1 -1
  125. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +5 -7
  126. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +36 -36
  127. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +1118 -1059
  128. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +47 -4
  129. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +12 -2
  130. data/src/core/ext/transport/chttp2/transport/decode_huff.cc +6569 -174
  131. data/src/core/ext/transport/chttp2/transport/decode_huff.h +2278 -441
  132. data/src/core/ext/transport/chttp2/transport/flow_control.cc +56 -88
  133. data/src/core/ext/transport/chttp2/transport/flow_control.h +85 -12
  134. data/src/core/ext/transport/chttp2/transport/frame.cc +506 -0
  135. data/src/core/ext/transport/chttp2/transport/frame.h +193 -22
  136. data/src/core/ext/transport/chttp2/transport/frame_data.cc +4 -3
  137. data/src/core/ext/transport/chttp2/transport/frame_data.h +1 -1
  138. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +0 -2
  139. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +1 -1
  140. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +23 -20
  141. data/src/core/ext/transport/chttp2/transport/frame_ping.h +1 -1
  142. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +10 -3
  143. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -1
  144. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +34 -82
  145. data/src/core/ext/transport/chttp2/transport/frame_settings.h +5 -8
  146. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +1 -3
  147. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +1 -1
  148. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +16 -22
  149. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +7 -3
  150. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +3 -4
  151. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.cc +184 -0
  152. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +351 -0
  153. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +640 -547
  154. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +160 -12
  155. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +47 -33
  156. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +19 -5
  157. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +122 -32
  158. data/src/core/ext/transport/chttp2/transport/http2_settings.h +142 -37
  159. data/src/core/ext/transport/chttp2/transport/internal.h +227 -165
  160. data/src/core/ext/transport/chttp2/transport/legacy_frame.h +43 -0
  161. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.cc +44 -0
  162. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.h +67 -0
  163. data/src/core/ext/transport/chttp2/transport/parsing.cc +168 -60
  164. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.cc +90 -0
  165. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.h +59 -0
  166. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +108 -0
  167. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +115 -0
  168. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +120 -0
  169. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +88 -0
  170. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +1 -1
  171. data/src/core/ext/transport/chttp2/transport/write_size_policy.cc +60 -0
  172. data/src/core/ext/transport/chttp2/transport/write_size_policy.h +66 -0
  173. data/src/core/ext/transport/chttp2/transport/writing.cc +226 -178
  174. data/src/core/ext/transport/inproc/inproc_transport.cc +163 -1229
  175. data/src/core/ext/transport/inproc/inproc_transport.h +0 -4
  176. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +1303 -0
  177. data/src/core/ext/transport/inproc/legacy_inproc_transport.h +30 -0
  178. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb.h +725 -0
  179. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.c +149 -0
  180. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.h +34 -0
  181. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb.h +827 -0
  182. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.c +180 -0
  183. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.h +33 -0
  184. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb.h +733 -0
  185. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.c +157 -0
  186. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.h +34 -0
  187. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb.h +2772 -0
  188. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.c +532 -0
  189. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.h +48 -0
  190. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb.h +248 -0
  191. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.c +66 -0
  192. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.h +31 -0
  193. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb.h +280 -0
  194. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.c +74 -0
  195. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.h +31 -0
  196. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb.h +162 -0
  197. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.c +56 -0
  198. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.h +30 -0
  199. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb.h +122 -0
  200. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.c +49 -0
  201. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.h +30 -0
  202. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb.h +117 -0
  203. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.c +49 -0
  204. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.h +30 -0
  205. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb.h +928 -0
  206. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.c +150 -0
  207. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.h +31 -0
  208. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb.h +117 -0
  209. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.c +54 -0
  210. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.h +30 -0
  211. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb.h +122 -0
  212. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.c +58 -0
  213. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.h +33 -0
  214. data/src/core/ext/upb-gen/envoy/annotations/resource.upb.h +109 -0
  215. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.c +55 -0
  216. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.h +31 -0
  217. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +1753 -0
  218. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.c +375 -0
  219. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.h +45 -0
  220. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +3420 -0
  221. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +612 -0
  222. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.h +49 -0
  223. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb.h +526 -0
  224. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.c +125 -0
  225. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.h +32 -0
  226. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +3890 -0
  227. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +729 -0
  228. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.h +53 -0
  229. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb.h +117 -0
  230. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.c +54 -0
  231. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.h +30 -0
  232. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb.h +659 -0
  233. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.c +123 -0
  234. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.h +30 -0
  235. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +1830 -0
  236. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +395 -0
  237. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.h +44 -0
  238. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +1041 -0
  239. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +224 -0
  240. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.h +37 -0
  241. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb.h +129 -0
  242. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.c +55 -0
  243. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.h +30 -0
  244. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb.h +2420 -0
  245. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.c +577 -0
  246. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.h +53 -0
  247. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb.h +1130 -0
  248. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.c +225 -0
  249. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.h +36 -0
  250. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb.h +110 -0
  251. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.c +51 -0
  252. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.h +30 -0
  253. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb.h +116 -0
  254. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.c +53 -0
  255. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.h +30 -0
  256. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb.h +250 -0
  257. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.c +68 -0
  258. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.h +31 -0
  259. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +1688 -0
  260. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +378 -0
  261. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.h +43 -0
  262. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb.h +1938 -0
  263. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.c +315 -0
  264. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.h +38 -0
  265. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb.h +144 -0
  266. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.c +55 -0
  267. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.h +30 -0
  268. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +2245 -0
  269. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +481 -0
  270. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.h +45 -0
  271. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb.h +238 -0
  272. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.c +70 -0
  273. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.h +31 -0
  274. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb.h +232 -0
  275. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.c +72 -0
  276. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.h +31 -0
  277. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb.h +287 -0
  278. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.c +76 -0
  279. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.h +31 -0
  280. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb.h +255 -0
  281. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.c +66 -0
  282. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.h +30 -0
  283. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb.h +129 -0
  284. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.c +54 -0
  285. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.h +30 -0
  286. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb.h +489 -0
  287. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.c +138 -0
  288. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.h +33 -0
  289. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +993 -0
  290. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +229 -0
  291. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.h +36 -0
  292. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb.h +911 -0
  293. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.c +179 -0
  294. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.h +34 -0
  295. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb.h +101 -0
  296. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.c +50 -0
  297. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.h +30 -0
  298. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +1613 -0
  299. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +268 -0
  300. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.h +39 -0
  301. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb.h +1447 -0
  302. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.c +260 -0
  303. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.h +36 -0
  304. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +327 -0
  305. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +86 -0
  306. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.h +30 -0
  307. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb.h +197 -0
  308. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.c +77 -0
  309. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.h +31 -0
  310. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +183 -0
  311. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +64 -0
  312. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.h +30 -0
  313. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +974 -0
  314. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +219 -0
  315. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.h +37 -0
  316. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb.h +1183 -0
  317. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.c +250 -0
  318. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.h +39 -0
  319. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +1704 -0
  320. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +348 -0
  321. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.h +40 -0
  322. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +857 -0
  323. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +133 -0
  324. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.h +32 -0
  325. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +9666 -0
  326. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +1667 -0
  327. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.h +87 -0
  328. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb.h +341 -0
  329. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.c +97 -0
  330. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.h +32 -0
  331. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +1515 -0
  332. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +325 -0
  333. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.h +41 -0
  334. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb.h +119 -0
  335. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.c +51 -0
  336. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.h +30 -0
  337. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb.h +118 -0
  338. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.c +55 -0
  339. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.h +30 -0
  340. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb.h +190 -0
  341. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.c +73 -0
  342. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.h +31 -0
  343. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb.h +202 -0
  344. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.c +62 -0
  345. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.h +30 -0
  346. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb.h +409 -0
  347. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.c +81 -0
  348. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.h +30 -0
  349. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +115 -0
  350. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +52 -0
  351. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.h +30 -0
  352. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb.h +102 -0
  353. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.c +51 -0
  354. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.h +30 -0
  355. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb.h +254 -0
  356. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.c +85 -0
  357. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.h +31 -0
  358. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb.h +49 -0
  359. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.c +33 -0
  360. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.h +39 -0
  361. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb.h +256 -0
  362. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.c +87 -0
  363. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.h +31 -0
  364. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +201 -0
  365. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +65 -0
  366. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.h +30 -0
  367. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb.h +2691 -0
  368. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.c +555 -0
  369. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.h +45 -0
  370. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +134 -0
  371. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.c +46 -0
  372. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.h +30 -0
  373. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb.h +428 -0
  374. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.c +116 -0
  375. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.h +34 -0
  376. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb.h +656 -0
  377. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.c +141 -0
  378. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.h +32 -0
  379. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +266 -0
  380. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +87 -0
  381. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.h +31 -0
  382. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb.h +462 -0
  383. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.c +101 -0
  384. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.h +31 -0
  385. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +194 -0
  386. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +72 -0
  387. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.h +31 -0
  388. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +3943 -0
  389. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +679 -0
  390. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.h +50 -0
  391. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +101 -0
  392. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.c +50 -0
  393. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.h +30 -0
  394. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +239 -0
  395. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.c +67 -0
  396. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.h +30 -0
  397. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +488 -0
  398. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +135 -0
  399. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.h +34 -0
  400. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb.h +86 -0
  401. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.c +44 -0
  402. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.h +30 -0
  403. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +250 -0
  404. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.c +68 -0
  405. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.h +30 -0
  406. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +101 -0
  407. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.c +50 -0
  408. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.h +30 -0
  409. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +39 -0
  410. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.c +28 -0
  411. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.h +34 -0
  412. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +1469 -0
  413. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +262 -0
  414. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.h +36 -0
  415. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +361 -0
  416. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.c +108 -0
  417. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.h +32 -0
  418. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +1467 -0
  419. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.c +267 -0
  420. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.h +36 -0
  421. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +217 -0
  422. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.c +72 -0
  423. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.h +31 -0
  424. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +712 -0
  425. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +151 -0
  426. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.h +33 -0
  427. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb.h +73 -0
  428. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.c +38 -0
  429. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.h +30 -0
  430. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb.h +2141 -0
  431. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.c +402 -0
  432. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.h +43 -0
  433. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb.h +324 -0
  434. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.c +84 -0
  435. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.h +31 -0
  436. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb.h +925 -0
  437. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.c +183 -0
  438. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.h +34 -0
  439. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +131 -0
  440. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +54 -0
  441. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.h +30 -0
  442. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb.h +312 -0
  443. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.c +86 -0
  444. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.h +33 -0
  445. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb.h +124 -0
  446. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.c +53 -0
  447. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.h +30 -0
  448. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb.h +299 -0
  449. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.c +105 -0
  450. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.h +34 -0
  451. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb.h +260 -0
  452. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.c +76 -0
  453. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.h +31 -0
  454. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb.h +166 -0
  455. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.c +55 -0
  456. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.h +30 -0
  457. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb.h +130 -0
  458. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.c +54 -0
  459. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.h +30 -0
  460. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb.h +110 -0
  461. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.c +51 -0
  462. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.h +30 -0
  463. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb.h +271 -0
  464. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.c +96 -0
  465. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.h +32 -0
  466. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb.h +109 -0
  467. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.c +43 -0
  468. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.h +31 -0
  469. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb.h +306 -0
  470. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.c +81 -0
  471. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.h +31 -0
  472. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb.h +230 -0
  473. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.c +70 -0
  474. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.h +31 -0
  475. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb.h +347 -0
  476. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.c +92 -0
  477. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.h +32 -0
  478. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb.h +525 -0
  479. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.c +127 -0
  480. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.h +36 -0
  481. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +506 -0
  482. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +139 -0
  483. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.h +34 -0
  484. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb.h +227 -0
  485. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.c +76 -0
  486. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.h +32 -0
  487. data/src/core/ext/upb-gen/envoy/type/v3/http.upb.h +38 -0
  488. data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.c +26 -0
  489. data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.h +29 -0
  490. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb.h +148 -0
  491. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.c +46 -0
  492. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.h +30 -0
  493. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb.h +162 -0
  494. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.c +64 -0
  495. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.h +31 -0
  496. data/src/core/ext/upb-gen/envoy/type/v3/range.upb.h +238 -0
  497. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.c +84 -0
  498. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.h +32 -0
  499. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb.h +232 -0
  500. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.c +75 -0
  501. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.h +31 -0
  502. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb.h +42 -0
  503. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.c +26 -0
  504. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.h +29 -0
  505. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb.h +117 -0
  506. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.c +49 -0
  507. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.h +30 -0
  508. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb.h +146 -0
  509. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.c +57 -0
  510. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.h +30 -0
  511. data/src/core/ext/upb-gen/google/api/annotations.upb.h +56 -0
  512. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.c +38 -0
  513. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.h +30 -0
  514. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +1743 -0
  515. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +369 -0
  516. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.h +42 -0
  517. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +1829 -0
  518. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +399 -0
  519. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.h +43 -0
  520. data/src/core/ext/upb-gen/google/api/http.upb.h +496 -0
  521. data/src/core/ext/upb-gen/google/api/http.upb_minitable.c +111 -0
  522. data/src/core/ext/upb-gen/google/api/http.upb_minitable.h +32 -0
  523. data/src/core/ext/upb-gen/google/api/httpbody.upb.h +165 -0
  524. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.c +52 -0
  525. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.h +30 -0
  526. data/src/core/ext/upb-gen/google/protobuf/any.upb.h +99 -0
  527. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.c +46 -0
  528. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.h +30 -0
  529. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb.h +6397 -0
  530. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.c +1357 -0
  531. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.h +78 -0
  532. data/src/core/ext/upb-gen/google/protobuf/duration.upb.h +99 -0
  533. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.c +46 -0
  534. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.h +30 -0
  535. data/src/core/ext/upb-gen/google/protobuf/empty.upb.h +69 -0
  536. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.c +35 -0
  537. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.h +30 -0
  538. data/src/core/ext/upb-gen/google/protobuf/struct.upb.h +422 -0
  539. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.c +115 -0
  540. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.h +33 -0
  541. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb.h +99 -0
  542. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.c +46 -0
  543. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.h +30 -0
  544. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb.h +508 -0
  545. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.c +163 -0
  546. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.h +38 -0
  547. data/src/core/ext/upb-gen/google/rpc/status.upb.h +165 -0
  548. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.c +52 -0
  549. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.h +30 -0
  550. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb.h +385 -0
  551. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.c +106 -0
  552. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.h +33 -0
  553. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb.h +237 -0
  554. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.c +79 -0
  555. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.h +31 -0
  556. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +1658 -0
  557. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +342 -0
  558. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.h +41 -0
  559. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb.h +197 -0
  560. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.c +69 -0
  561. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.h +31 -0
  562. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb.h +144 -0
  563. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.c +58 -0
  564. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.h +31 -0
  565. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb.h +877 -0
  566. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.c +221 -0
  567. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.h +38 -0
  568. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb.h +297 -0
  569. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.c +92 -0
  570. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.h +32 -0
  571. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb.h +1333 -0
  572. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.c +243 -0
  573. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.h +38 -0
  574. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb.h +322 -0
  575. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.c +118 -0
  576. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.h +37 -0
  577. data/src/core/ext/upb-gen/udpa/annotations/security.upb.h +125 -0
  578. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.c +59 -0
  579. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.h +31 -0
  580. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb.h +55 -0
  581. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.c +37 -0
  582. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.h +30 -0
  583. data/src/core/ext/upb-gen/udpa/annotations/status.upb.h +131 -0
  584. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.c +58 -0
  585. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.h +31 -0
  586. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb.h +109 -0
  587. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.c +55 -0
  588. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.h +31 -0
  589. data/src/core/ext/upb-gen/validate/validate.upb.h +6507 -0
  590. data/src/core/ext/upb-gen/validate/validate.upb_minitable.c +943 -0
  591. data/src/core/ext/upb-gen/validate/validate.upb_minitable.h +57 -0
  592. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb.h +322 -0
  593. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.c +118 -0
  594. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.h +37 -0
  595. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb.h +125 -0
  596. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.c +59 -0
  597. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.h +31 -0
  598. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb.h +55 -0
  599. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.c +37 -0
  600. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.h +30 -0
  601. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb.h +336 -0
  602. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.c +117 -0
  603. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.h +36 -0
  604. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb.h +109 -0
  605. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.c +55 -0
  606. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.h +31 -0
  607. data/src/core/ext/upb-gen/xds/core/v3/authority.upb.h +87 -0
  608. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.c +45 -0
  609. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.h +30 -0
  610. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb.h +116 -0
  611. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.c +53 -0
  612. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.h +30 -0
  613. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb.h +234 -0
  614. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.c +78 -0
  615. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.h +31 -0
  616. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb.h +134 -0
  617. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.c +62 -0
  618. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.h +31 -0
  619. data/src/core/ext/upb-gen/xds/core/v3/extension.upb.h +115 -0
  620. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.c +52 -0
  621. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.h +30 -0
  622. data/src/core/ext/upb-gen/xds/core/v3/resource.upb.h +144 -0
  623. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.c +55 -0
  624. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.h +30 -0
  625. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb.h +331 -0
  626. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.c +84 -0
  627. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.h +31 -0
  628. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb.h +146 -0
  629. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.c +59 -0
  630. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.h +30 -0
  631. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb.h +350 -0
  632. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.c +126 -0
  633. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.h +33 -0
  634. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb.h +161 -0
  635. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.c +52 -0
  636. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.h +30 -0
  637. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +101 -0
  638. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +50 -0
  639. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.h +30 -0
  640. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb.h +263 -0
  641. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.c +72 -0
  642. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.h +31 -0
  643. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb.h +71 -0
  644. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.c +36 -0
  645. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.h +30 -0
  646. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb.h +282 -0
  647. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.c +75 -0
  648. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.h +31 -0
  649. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +1107 -0
  650. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +265 -0
  651. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.h +39 -0
  652. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb.h +726 -0
  653. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.c +157 -0
  654. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.h +35 -0
  655. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb.h +159 -0
  656. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.c +58 -0
  657. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.h +31 -0
  658. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb.h +304 -0
  659. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.c +79 -0
  660. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.h +31 -0
  661. data/src/core/ext/upb-gen/xds/type/v3/cel.upb.h +233 -0
  662. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.c +79 -0
  663. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.h +31 -0
  664. data/src/core/ext/upb-gen/xds/type/v3/range.upb.h +235 -0
  665. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.c +82 -0
  666. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.h +32 -0
  667. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb.h +114 -0
  668. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.c +51 -0
  669. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.h +30 -0
  670. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.c +83 -0
  671. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.h +55 -0
  672. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.c +127 -0
  673. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.h +50 -0
  674. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.c +101 -0
  675. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.h +55 -0
  676. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.c +276 -0
  677. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.h +125 -0
  678. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.c +42 -0
  679. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.h +40 -0
  680. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.c +55 -0
  681. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.h +40 -0
  682. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.c +48 -0
  683. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.h +35 -0
  684. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.c +45 -0
  685. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.h +35 -0
  686. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.c +45 -0
  687. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.h +35 -0
  688. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.c +141 -0
  689. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.h +40 -0
  690. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.c +50 -0
  691. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.h +35 -0
  692. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.c +47 -0
  693. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.h +30 -0
  694. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.c +37 -0
  695. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.h +35 -0
  696. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.c +233 -0
  697. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.h +110 -0
  698. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +422 -0
  699. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +130 -0
  700. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +97 -0
  701. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +45 -0
  702. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.c +566 -0
  703. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.h +150 -0
  704. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.c +50 -0
  705. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.h +35 -0
  706. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.c +137 -0
  707. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.h +35 -0
  708. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.c +205 -0
  709. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.h +105 -0
  710. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.c +131 -0
  711. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.h +70 -0
  712. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.c +53 -0
  713. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.h +35 -0
  714. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.c +270 -0
  715. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.h +150 -0
  716. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.c +167 -0
  717. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.h +65 -0
  718. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.c +52 -0
  719. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.h +35 -0
  720. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.c +46 -0
  721. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.h +35 -0
  722. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.c +52 -0
  723. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.h +40 -0
  724. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.c +236 -0
  725. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.h +100 -0
  726. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.c +244 -0
  727. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.h +75 -0
  728. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.c +52 -0
  729. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.h +35 -0
  730. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.c +310 -0
  731. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.h +110 -0
  732. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.c +56 -0
  733. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.h +40 -0
  734. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.c +54 -0
  735. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.h +40 -0
  736. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.c +60 -0
  737. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.h +40 -0
  738. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.c +69 -0
  739. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.h +35 -0
  740. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.c +48 -0
  741. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.h +35 -0
  742. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.c +98 -0
  743. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.h +50 -0
  744. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +139 -0
  745. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +65 -0
  746. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.c +135 -0
  747. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.h +55 -0
  748. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.c +47 -0
  749. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.h +35 -0
  750. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.c +231 -0
  751. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.h +80 -0
  752. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.c +189 -0
  753. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.h +65 -0
  754. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.c +100 -0
  755. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.h +35 -0
  756. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.c +70 -0
  757. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.h +40 -0
  758. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.c +75 -0
  759. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.h +35 -0
  760. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.c +124 -0
  761. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.h +70 -0
  762. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.c +141 -0
  763. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.h +80 -0
  764. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.c +222 -0
  765. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.h +85 -0
  766. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.c +122 -0
  767. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.h +45 -0
  768. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.c +979 -0
  769. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.h +320 -0
  770. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.c +76 -0
  771. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.h +45 -0
  772. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.c +198 -0
  773. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.h +90 -0
  774. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.c +55 -0
  775. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.h +35 -0
  776. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.c +56 -0
  777. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.h +35 -0
  778. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.c +56 -0
  779. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.h +40 -0
  780. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.c +71 -0
  781. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.h +35 -0
  782. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.c +98 -0
  783. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.h +35 -0
  784. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.c +44 -0
  785. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.h +35 -0
  786. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.c +51 -0
  787. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.h +35 -0
  788. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.c +70 -0
  789. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.h +40 -0
  790. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.c +60 -0
  791. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.h +30 -0
  792. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.c +74 -0
  793. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.h +40 -0
  794. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.c +78 -0
  795. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.h +35 -0
  796. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.c +401 -0
  797. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.h +110 -0
  798. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +49 -0
  799. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +35 -0
  800. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +91 -0
  801. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +55 -0
  802. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +122 -0
  803. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +45 -0
  804. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +79 -0
  805. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +40 -0
  806. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.c +104 -0
  807. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.h +40 -0
  808. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +59 -0
  809. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +40 -0
  810. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +601 -0
  811. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +135 -0
  812. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +49 -0
  813. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +35 -0
  814. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +47 -0
  815. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +30 -0
  816. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +214 -0
  817. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +65 -0
  818. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +90 -0
  819. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +45 -0
  820. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +257 -0
  821. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +65 -0
  822. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +57 -0
  823. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +40 -0
  824. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.c +133 -0
  825. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.h +50 -0
  826. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.c +57 -0
  827. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.h +35 -0
  828. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.c +199 -0
  829. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.h +100 -0
  830. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.c +75 -0
  831. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.h +40 -0
  832. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.c +154 -0
  833. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.h +55 -0
  834. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.c +45 -0
  835. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.h +35 -0
  836. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.c +55 -0
  837. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.h +50 -0
  838. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.c +47 -0
  839. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.h +35 -0
  840. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.c +54 -0
  841. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.h +55 -0
  842. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.c +60 -0
  843. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.h +40 -0
  844. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.c +53 -0
  845. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.h +35 -0
  846. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.c +51 -0
  847. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.h +35 -0
  848. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.c +50 -0
  849. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.h +35 -0
  850. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.c +70 -0
  851. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.h +45 -0
  852. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.c +39 -0
  853. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.h +40 -0
  854. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.c +64 -0
  855. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.h +40 -0
  856. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.c +57 -0
  857. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.h +40 -0
  858. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.c +74 -0
  859. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.h +45 -0
  860. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.c +77 -0
  861. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.h +65 -0
  862. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.c +84 -0
  863. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.h +55 -0
  864. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.c +52 -0
  865. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.h +45 -0
  866. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.c +35 -0
  867. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.h +30 -0
  868. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.c +93 -0
  869. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.h +35 -0
  870. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.c +53 -0
  871. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.h +40 -0
  872. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.c +47 -0
  873. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.h +45 -0
  874. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.c +68 -0
  875. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.h +40 -0
  876. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.c +38 -0
  877. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.h +30 -0
  878. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.c +43 -0
  879. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.h +35 -0
  880. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.c +56 -0
  881. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.h +35 -0
  882. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.c +39 -0
  883. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.h +30 -0
  884. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.c +153 -0
  885. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.h +95 -0
  886. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.c +152 -0
  887. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.h +100 -0
  888. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.c +51 -0
  889. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.h +45 -0
  890. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.c +38 -0
  891. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.h +35 -0
  892. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.c +33 -0
  893. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.h +35 -0
  894. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.c +488 -0
  895. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.h +190 -0
  896. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.c +34 -0
  897. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.h +35 -0
  898. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.c +31 -0
  899. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.h +35 -0
  900. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.c +53 -0
  901. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.h +50 -0
  902. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.c +34 -0
  903. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.h +35 -0
  904. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.c +44 -0
  905. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.h +75 -0
  906. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.c +36 -0
  907. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.h +35 -0
  908. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.c +66 -0
  909. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.h +50 -0
  910. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +98 -0
  911. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +75 -0
  912. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.c +61 -0
  913. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.h +45 -0
  914. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.c +46 -0
  915. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.h +35 -0
  916. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.c +33 -0
  917. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.h +30 -0
  918. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.c +45 -0
  919. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.h +35 -0
  920. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.c +38 -0
  921. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.h +35 -0
  922. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.c +282 -0
  923. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.h +145 -0
  924. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.c +62 -0
  925. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.h +45 -0
  926. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.c +46 -0
  927. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.h +35 -0
  928. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.c +34 -0
  929. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.h +30 -0
  930. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.c +63 -0
  931. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.h +50 -0
  932. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.c +39 -0
  933. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.h +35 -0
  934. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.c +37 -0
  935. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.h +35 -0
  936. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.c +44 -0
  937. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.h +35 -0
  938. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.c +55 -0
  939. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.h +40 -0
  940. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.c +38 -0
  941. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.h +40 -0
  942. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.c +40 -0
  943. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.h +35 -0
  944. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.c +44 -0
  945. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.h +35 -0
  946. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.c +60 -0
  947. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.h +40 -0
  948. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.c +45 -0
  949. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.h +35 -0
  950. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.c +42 -0
  951. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.h +35 -0
  952. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.c +50 -0
  953. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.h +40 -0
  954. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.c +35 -0
  955. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.h +35 -0
  956. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.c +54 -0
  957. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.h +40 -0
  958. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.c +125 -0
  959. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.h +80 -0
  960. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.c +70 -0
  961. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.h +60 -0
  962. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.c +39 -0
  963. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.h +40 -0
  964. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.c +51 -0
  965. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.h +40 -0
  966. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.c +59 -0
  967. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.h +40 -0
  968. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.c +35 -0
  969. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.h +45 -0
  970. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.c +36 -0
  971. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.h +35 -0
  972. data/src/core/ext/xds/certificate_provider_store.cc +2 -1
  973. data/src/core/ext/xds/certificate_provider_store.h +0 -5
  974. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +0 -1
  975. data/src/core/ext/xds/xds_api.cc +31 -19
  976. data/src/core/ext/xds/xds_api.h +2 -2
  977. data/src/core/ext/xds/xds_bootstrap.h +3 -0
  978. data/src/core/ext/xds/xds_bootstrap_grpc.cc +33 -31
  979. data/src/core/ext/xds/xds_bootstrap_grpc.h +5 -13
  980. data/src/core/ext/xds/xds_certificate_provider.cc +88 -287
  981. data/src/core/ext/xds/xds_certificate_provider.h +44 -111
  982. data/src/core/ext/xds/xds_channel_stack_modifier.cc +17 -28
  983. data/src/core/ext/xds/xds_channel_stack_modifier.h +3 -5
  984. data/src/core/ext/xds/xds_client.cc +425 -421
  985. data/src/core/ext/xds/xds_client.h +32 -23
  986. data/src/core/ext/xds/xds_client_grpc.cc +15 -7
  987. data/src/core/ext/xds/xds_client_grpc.h +16 -2
  988. data/src/core/ext/xds/xds_client_stats.h +10 -1
  989. data/src/core/ext/xds/xds_cluster.cc +159 -68
  990. data/src/core/ext/xds/xds_cluster.h +11 -5
  991. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +9 -5
  992. data/src/core/ext/xds/xds_common_types.cc +14 -11
  993. data/src/core/ext/xds/xds_endpoint.cc +106 -70
  994. data/src/core/ext/xds/xds_endpoint.h +7 -4
  995. data/src/core/ext/xds/xds_health_status.cc +13 -18
  996. data/src/core/ext/xds/xds_health_status.h +10 -28
  997. data/src/core/ext/xds/xds_http_fault_filter.cc +1 -2
  998. data/src/core/ext/xds/xds_http_fault_filter.h +1 -2
  999. data/src/core/ext/xds/xds_http_filters.cc +1 -5
  1000. data/src/core/ext/xds/xds_http_filters.h +2 -4
  1001. data/src/core/ext/xds/xds_http_rbac_filter.cc +8 -11
  1002. data/src/core/ext/xds/xds_http_rbac_filter.h +1 -2
  1003. data/src/core/ext/xds/xds_http_stateful_session_filter.cc +2 -6
  1004. data/src/core/ext/xds/xds_http_stateful_session_filter.h +1 -2
  1005. data/src/core/ext/xds/xds_lb_policy_registry.cc +36 -0
  1006. data/src/core/ext/xds/xds_listener.cc +29 -25
  1007. data/src/core/ext/xds/xds_listener.h +13 -3
  1008. data/src/core/ext/xds/xds_resource_type.h +1 -7
  1009. data/src/core/ext/xds/xds_resource_type_impl.h +11 -11
  1010. data/src/core/ext/xds/xds_route_config.cc +48 -34
  1011. data/src/core/ext/xds/xds_route_config.h +2 -1
  1012. data/src/core/ext/xds/xds_routing.cc +2 -2
  1013. data/src/core/ext/xds/xds_server_config_fetcher.cc +110 -81
  1014. data/src/core/ext/xds/xds_transport.h +3 -0
  1015. data/src/core/ext/xds/xds_transport_grpc.cc +61 -54
  1016. data/src/core/ext/xds/xds_transport_grpc.h +4 -0
  1017. data/src/core/lib/address_utils/parse_address.cc +63 -1
  1018. data/src/core/lib/address_utils/parse_address.h +8 -0
  1019. data/src/core/lib/address_utils/sockaddr_utils.cc +46 -2
  1020. data/src/core/lib/address_utils/sockaddr_utils.h +2 -2
  1021. data/src/core/lib/avl/avl.h +11 -173
  1022. data/src/core/lib/backoff/random_early_detection.cc +4 -2
  1023. data/src/core/lib/backoff/random_early_detection.h +7 -4
  1024. data/src/core/lib/channel/call_tracer.cc +315 -1
  1025. data/src/core/lib/channel/call_tracer.h +63 -4
  1026. data/src/core/lib/channel/channel_args.cc +109 -84
  1027. data/src/core/lib/channel/channel_args.h +105 -29
  1028. data/src/core/lib/channel/channel_args_preconditioning.cc +0 -1
  1029. data/src/core/lib/channel/channel_stack.cc +36 -1
  1030. data/src/core/lib/channel/channel_stack.h +10 -10
  1031. data/src/core/lib/channel/channel_stack_builder.h +4 -15
  1032. data/src/core/lib/channel/channel_stack_builder_impl.cc +1 -19
  1033. data/src/core/lib/channel/channel_stack_trace.cc +19 -0
  1034. data/src/core/lib/channel/channel_stack_trace.h +24 -0
  1035. data/src/core/lib/channel/channel_trace.cc +1 -1
  1036. data/src/core/lib/channel/channelz_registry.h +4 -2
  1037. data/src/core/lib/channel/connected_channel.cc +144 -83
  1038. data/src/core/lib/channel/context.h +3 -0
  1039. data/src/core/lib/channel/promise_based_filter.cc +19 -7
  1040. data/src/core/lib/channel/promise_based_filter.h +1044 -3
  1041. data/src/core/lib/channel/server_call_tracer_filter.cc +43 -42
  1042. data/src/core/lib/channel/status_util.cc +0 -1
  1043. data/src/core/lib/channel/tcp_tracer.h +140 -0
  1044. data/src/core/lib/compression/compression_internal.cc +10 -7
  1045. data/src/core/lib/config/config_vars.cc +0 -1
  1046. data/src/core/lib/config/config_vars.h +1 -1
  1047. data/src/core/lib/config/config_vars_non_generated.cc +0 -2
  1048. data/src/core/lib/config/core_configuration.cc +2 -2
  1049. data/src/core/lib/config/core_configuration.h +5 -4
  1050. data/src/core/lib/debug/stats_data.cc +202 -35
  1051. data/src/core/lib/debug/stats_data.h +102 -0
  1052. data/src/core/lib/debug/trace.cc +1 -4
  1053. data/src/core/lib/event_engine/ares_resolver.cc +747 -0
  1054. data/src/core/lib/event_engine/ares_resolver.h +151 -0
  1055. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +13 -3
  1056. data/src/core/lib/event_engine/cf_engine/cf_engine.h +4 -1
  1057. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +5 -2
  1058. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.h +3 -0
  1059. data/src/core/lib/event_engine/cf_engine/cftype_unique_ref.h +3 -0
  1060. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +249 -0
  1061. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.h +120 -0
  1062. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +2 -0
  1063. data/src/core/lib/event_engine/event_engine.cc +0 -14
  1064. data/src/core/lib/event_engine/forkable.cc +65 -65
  1065. data/src/core/lib/event_engine/forkable.h +46 -25
  1066. data/src/core/lib/event_engine/grpc_polled_fd.h +92 -0
  1067. data/src/core/lib/event_engine/handle_containers.h +0 -4
  1068. data/src/core/lib/event_engine/nameser.h +102 -0
  1069. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +10 -14
  1070. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +2 -3
  1071. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +39 -24
  1072. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +12 -10
  1073. data/src/core/lib/event_engine/posix_engine/event_poller.h +3 -1
  1074. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +23 -4
  1075. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +3 -1
  1076. data/src/core/lib/event_engine/posix_engine/grpc_polled_fd_posix.h +205 -0
  1077. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +0 -2
  1078. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +132 -0
  1079. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.h +61 -0
  1080. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +29 -16
  1081. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +3 -2
  1082. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +113 -27
  1083. data/src/core/lib/event_engine/posix_engine/posix_engine.h +36 -29
  1084. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +66 -27
  1085. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +5 -0
  1086. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +15 -5
  1087. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +53 -7
  1088. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +13 -0
  1089. data/src/core/lib/event_engine/posix_engine/timer.h +10 -37
  1090. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +17 -27
  1091. data/src/core/lib/event_engine/posix_engine/timer_manager.h +0 -3
  1092. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +2 -0
  1093. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +0 -1
  1094. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +0 -1
  1095. data/src/core/lib/event_engine/ref_counted_dns_resolver_interface.h +55 -0
  1096. data/src/core/lib/event_engine/shim.cc +4 -2
  1097. data/src/core/lib/event_engine/slice_buffer.cc +0 -1
  1098. data/src/core/lib/event_engine/tcp_socket_utils.cc +67 -8
  1099. data/src/core/lib/event_engine/tcp_socket_utils.h +3 -0
  1100. data/src/core/lib/event_engine/thread_pool/thread_count.cc +58 -0
  1101. data/src/core/lib/event_engine/thread_pool/thread_count.h +176 -0
  1102. data/src/core/lib/event_engine/thread_pool/thread_pool_factory.cc +19 -10
  1103. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +138 -100
  1104. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +22 -48
  1105. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +12 -21
  1106. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +8 -12
  1107. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +823 -0
  1108. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.h +75 -0
  1109. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.cc +114 -0
  1110. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.h +51 -0
  1111. data/src/core/lib/event_engine/windows/win_socket.cc +20 -13
  1112. data/src/core/lib/event_engine/windows/win_socket.h +19 -7
  1113. data/src/core/lib/event_engine/windows/windows_endpoint.cc +75 -76
  1114. data/src/core/lib/event_engine/windows/windows_endpoint.h +15 -12
  1115. data/src/core/lib/event_engine/windows/windows_engine.cc +85 -39
  1116. data/src/core/lib/event_engine/windows/windows_engine.h +24 -14
  1117. data/src/core/lib/event_engine/windows/windows_listener.cc +2 -3
  1118. data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +2 -0
  1119. data/src/core/lib/event_engine/work_queue/basic_work_queue.h +4 -1
  1120. data/src/core/lib/event_engine/work_queue/work_queue.h +4 -0
  1121. data/src/core/lib/experiments/config.cc +96 -23
  1122. data/src/core/lib/experiments/config.h +23 -8
  1123. data/src/core/lib/experiments/experiments.cc +712 -60
  1124. data/src/core/lib/experiments/experiments.h +335 -46
  1125. data/src/core/lib/gpr/alloc.cc +1 -0
  1126. data/src/core/lib/gprpp/debug_location.h +13 -0
  1127. data/src/core/lib/gprpp/directory_reader.h +48 -0
  1128. data/src/core/lib/gprpp/dual_ref_counted.h +45 -16
  1129. data/src/core/lib/gprpp/fork.cc +8 -9
  1130. data/src/core/lib/gprpp/fork.h +7 -6
  1131. data/src/core/lib/gprpp/host_port.cc +0 -2
  1132. data/src/core/lib/gprpp/if_list.h +4530 -0
  1133. data/src/core/lib/gprpp/manual_constructor.h +1 -2
  1134. data/src/core/lib/gprpp/match.h +1 -1
  1135. data/src/core/lib/gprpp/no_destruct.h +1 -1
  1136. data/src/core/lib/gprpp/orphanable.h +30 -3
  1137. data/src/core/lib/gprpp/per_cpu.cc +2 -0
  1138. data/src/core/lib/gprpp/per_cpu.h +36 -7
  1139. data/src/core/lib/gprpp/posix/directory_reader.cc +82 -0
  1140. data/src/core/lib/gprpp/posix/stat.cc +0 -1
  1141. data/src/core/lib/gprpp/ref_counted.h +72 -29
  1142. data/src/core/lib/gprpp/ref_counted_ptr.h +133 -27
  1143. data/src/core/lib/gprpp/ref_counted_string.cc +44 -0
  1144. data/src/core/lib/gprpp/ref_counted_string.h +161 -0
  1145. data/src/core/lib/gprpp/sorted_pack.h +3 -12
  1146. data/src/core/lib/gprpp/status_helper.cc +1 -3
  1147. data/src/core/lib/gprpp/status_helper.h +16 -15
  1148. data/src/core/lib/gprpp/strerror.cc +0 -2
  1149. data/src/core/lib/gprpp/time.cc +0 -1
  1150. data/src/core/lib/gprpp/time.h +13 -1
  1151. data/src/core/lib/gprpp/type_list.h +32 -0
  1152. data/src/core/lib/gprpp/validation_errors.cc +0 -1
  1153. data/src/core/lib/gprpp/windows/directory_reader.cc +80 -0
  1154. data/src/core/lib/gprpp/work_serializer.cc +323 -12
  1155. data/src/core/lib/gprpp/work_serializer.h +30 -9
  1156. data/src/core/lib/gprpp/xxhash_inline.h +29 -0
  1157. data/src/core/lib/http/format_request.cc +0 -1
  1158. data/src/core/lib/http/httpcli.cc +0 -2
  1159. data/src/core/lib/http/httpcli.h +6 -9
  1160. data/src/core/lib/http/httpcli_security_connector.cc +1 -0
  1161. data/src/core/lib/iomgr/buffer_list.cc +2 -0
  1162. data/src/core/lib/iomgr/combiner.cc +24 -18
  1163. data/src/core/lib/iomgr/combiner.h +8 -3
  1164. data/src/core/lib/iomgr/error.cc +32 -2
  1165. data/src/core/lib/iomgr/error.h +9 -10
  1166. data/src/core/lib/iomgr/ev_epoll1_linux.cc +5 -7
  1167. data/src/core/lib/iomgr/ev_poll_posix.cc +6 -5
  1168. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +42 -26
  1169. data/src/core/lib/iomgr/event_engine_shims/endpoint.h +16 -0
  1170. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +3 -2
  1171. data/src/core/lib/iomgr/exec_ctx.cc +12 -0
  1172. data/src/core/lib/iomgr/exec_ctx.h +66 -19
  1173. data/src/core/lib/iomgr/polling_entity.cc +10 -0
  1174. data/src/core/lib/iomgr/polling_entity.h +2 -0
  1175. data/src/core/lib/iomgr/pollset.h +4 -5
  1176. data/src/core/lib/iomgr/port.h +24 -0
  1177. data/src/core/lib/iomgr/resolve_address.cc +13 -1
  1178. data/src/core/lib/iomgr/resolve_address.h +17 -3
  1179. data/src/core/lib/iomgr/sockaddr_posix.h +7 -0
  1180. data/src/core/lib/iomgr/socket_utils_common_posix.cc +42 -0
  1181. data/src/core/lib/iomgr/socket_utils_posix.cc +2 -0
  1182. data/src/core/lib/iomgr/socket_utils_posix.h +6 -0
  1183. data/src/core/lib/iomgr/tcp_client_posix.cc +8 -4
  1184. data/src/core/lib/iomgr/tcp_posix.cc +48 -22
  1185. data/src/core/lib/iomgr/tcp_server_posix.cc +37 -14
  1186. data/src/core/lib/iomgr/tcp_server_utils_posix.h +12 -0
  1187. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +26 -2
  1188. data/src/core/lib/iomgr/tcp_windows.cc +1 -3
  1189. data/src/core/lib/iomgr/timer_manager.cc +7 -1
  1190. data/src/core/lib/iomgr/timer_manager.h +2 -0
  1191. data/src/core/lib/iomgr/vsock.cc +59 -0
  1192. data/src/core/lib/iomgr/vsock.h +38 -0
  1193. data/src/core/lib/iomgr/wakeup_fd_posix.h +3 -6
  1194. data/src/core/lib/json/json_object_loader.h +0 -1
  1195. data/src/core/lib/json/json_reader.cc +0 -1
  1196. data/src/core/lib/load_balancing/delegating_helper.h +116 -0
  1197. data/src/core/lib/load_balancing/lb_policy.h +38 -14
  1198. data/src/core/lib/load_balancing/lb_policy_registry.cc +0 -1
  1199. data/src/core/lib/load_balancing/subchannel_interface.h +6 -0
  1200. data/src/core/lib/matchers/matchers.cc +0 -1
  1201. data/src/core/lib/promise/activity.cc +17 -3
  1202. data/src/core/lib/promise/activity.h +5 -4
  1203. data/src/core/lib/promise/all_ok.h +80 -0
  1204. data/src/core/lib/promise/arena_promise.h +5 -1
  1205. data/src/core/lib/promise/cancel_callback.h +0 -2
  1206. data/src/core/lib/promise/context.h +0 -1
  1207. data/src/core/lib/promise/detail/basic_seq.h +1 -372
  1208. data/src/core/lib/promise/detail/join_state.h +2077 -0
  1209. data/src/core/lib/promise/detail/promise_like.h +8 -1
  1210. data/src/core/lib/promise/detail/seq_state.h +5801 -0
  1211. data/src/core/lib/promise/detail/status.h +42 -5
  1212. data/src/core/lib/promise/for_each.h +13 -3
  1213. data/src/core/lib/promise/if.h +4 -1
  1214. data/src/core/lib/promise/interceptor_list.h +0 -1
  1215. data/src/core/lib/promise/latch.h +7 -5
  1216. data/src/core/lib/promise/loop.h +9 -6
  1217. data/src/core/lib/promise/map.h +0 -1
  1218. data/src/core/lib/promise/party.cc +33 -33
  1219. data/src/core/lib/promise/party.h +143 -8
  1220. data/src/core/lib/promise/pipe.h +28 -27
  1221. data/src/core/lib/promise/poll.h +43 -19
  1222. data/src/core/lib/promise/prioritized_race.h +0 -1
  1223. data/src/core/lib/promise/promise.h +4 -1
  1224. data/src/core/lib/promise/race.h +0 -1
  1225. data/src/core/lib/promise/seq.h +124 -8
  1226. data/src/core/lib/promise/sleep.h +5 -10
  1227. data/src/core/lib/promise/status_flag.h +196 -0
  1228. data/src/core/lib/promise/try_join.h +71 -21
  1229. data/src/core/lib/promise/try_seq.h +161 -7
  1230. data/src/core/lib/resolver/endpoint_addresses.cc +147 -0
  1231. data/src/core/lib/resolver/endpoint_addresses.h +164 -0
  1232. data/src/core/lib/resolver/resolver.h +4 -3
  1233. data/src/core/lib/resolver/resolver_factory.h +3 -2
  1234. data/src/core/lib/resolver/resolver_registry.cc +0 -2
  1235. data/src/core/lib/resolver/server_address.h +5 -109
  1236. data/src/core/lib/resource_quota/api.cc +1 -0
  1237. data/src/core/lib/resource_quota/arena.cc +2 -0
  1238. data/src/core/lib/resource_quota/arena.h +44 -10
  1239. data/src/core/lib/resource_quota/memory_quota.cc +128 -21
  1240. data/src/core/lib/resource_quota/memory_quota.h +13 -13
  1241. data/src/core/lib/resource_quota/resource_quota.h +1 -0
  1242. data/src/core/lib/security/authorization/audit_logging.cc +0 -1
  1243. data/src/core/lib/security/authorization/authorization_policy_provider.h +1 -1
  1244. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +15 -12
  1245. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +14 -5
  1246. data/src/core/lib/security/authorization/matchers.cc +0 -1
  1247. data/src/core/lib/security/authorization/rbac_policy.cc +0 -2
  1248. data/src/core/lib/security/authorization/rbac_policy.h +1 -1
  1249. data/src/core/lib/security/authorization/stdout_logger.cc +0 -1
  1250. data/src/core/lib/security/credentials/alts/alts_credentials.cc +0 -2
  1251. data/src/core/lib/security/credentials/channel_creds_registry.h +51 -27
  1252. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +169 -9
  1253. data/src/core/lib/security/credentials/composite/composite_credentials.cc +2 -2
  1254. data/src/core/lib/security/credentials/composite/composite_credentials.h +4 -2
  1255. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +4 -1
  1256. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +4 -0
  1257. data/src/core/lib/security/credentials/external/aws_request_signer.cc +8 -2
  1258. data/src/core/lib/security/credentials/external/external_account_credentials.cc +68 -23
  1259. data/src/core/lib/security/credentials/external/external_account_credentials.h +10 -0
  1260. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +4 -0
  1261. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +4 -0
  1262. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +5 -3
  1263. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +4 -0
  1264. data/src/core/lib/security/credentials/fake/fake_credentials.cc +30 -38
  1265. data/src/core/lib/security/credentials/fake/fake_credentials.h +28 -0
  1266. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +1 -1
  1267. data/src/core/lib/security/credentials/iam/iam_credentials.cc +0 -1
  1268. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +0 -2
  1269. data/src/core/lib/security/credentials/jwt/json_token.cc +17 -0
  1270. data/src/core/lib/security/credentials/jwt/json_token.h +4 -0
  1271. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +0 -1
  1272. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +43 -2
  1273. data/src/core/lib/security/credentials/local/local_credentials.cc +0 -2
  1274. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +0 -1
  1275. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +2 -2
  1276. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +116 -10
  1277. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +14 -0
  1278. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +0 -2
  1279. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_match.cc +86 -0
  1280. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +0 -55
  1281. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +0 -3
  1282. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +2 -0
  1283. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +41 -0
  1284. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +28 -1
  1285. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +255 -0
  1286. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.h +129 -0
  1287. data/src/core/lib/security/credentials/tls/tls_credentials.cc +27 -2
  1288. data/src/core/lib/security/credentials/tls/tls_credentials.h +3 -1
  1289. data/src/core/lib/security/credentials/tls/tls_utils.cc +2 -0
  1290. data/src/core/lib/security/credentials/xds/xds_credentials.cc +22 -29
  1291. data/src/core/lib/security/credentials/xds/xds_credentials.h +2 -4
  1292. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +1 -0
  1293. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +1 -1
  1294. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +7 -59
  1295. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +1 -1
  1296. data/src/core/lib/security/security_connector/ssl_utils.cc +11 -3
  1297. data/src/core/lib/security/security_connector/ssl_utils.h +5 -1
  1298. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +8 -19
  1299. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +2 -2
  1300. data/src/core/lib/security/transport/auth_filters.h +71 -4
  1301. data/src/core/lib/security/transport/client_auth_filter.cc +9 -9
  1302. data/src/core/lib/security/transport/legacy_server_auth_filter.cc +244 -0
  1303. data/src/core/lib/security/transport/secure_endpoint.cc +3 -6
  1304. data/src/core/lib/security/transport/security_handshaker.cc +2 -3
  1305. data/src/core/lib/security/transport/server_auth_filter.cc +70 -92
  1306. data/src/core/lib/service_config/service_config_call_data.h +5 -0
  1307. data/src/core/lib/slice/slice.h +27 -0
  1308. data/src/core/lib/slice/slice_buffer.cc +15 -0
  1309. data/src/core/lib/slice/slice_buffer.h +19 -4
  1310. data/src/core/lib/slice/slice_refcount.h +1 -1
  1311. data/src/core/lib/surface/builtins.cc +6 -25
  1312. data/src/core/lib/surface/call.cc +852 -247
  1313. data/src/core/lib/surface/call.h +30 -13
  1314. data/src/core/lib/surface/call_log_batch.cc +0 -2
  1315. data/src/core/lib/surface/call_trace.cc +42 -2
  1316. data/src/core/lib/surface/channel.cc +12 -10
  1317. data/src/core/lib/surface/channel.h +2 -8
  1318. data/src/core/lib/surface/channel_init.cc +367 -14
  1319. data/src/core/lib/surface/channel_init.h +177 -28
  1320. data/src/core/lib/surface/completion_queue.cc +4 -1
  1321. data/src/core/lib/surface/event_string.cc +0 -1
  1322. data/src/core/lib/surface/init.cc +21 -47
  1323. data/src/core/lib/surface/lame_client.cc +8 -1
  1324. data/src/core/lib/surface/server.cc +519 -300
  1325. data/src/core/lib/surface/server.h +68 -44
  1326. data/src/core/lib/surface/validate_metadata.cc +37 -22
  1327. data/src/core/lib/surface/validate_metadata.h +13 -3
  1328. data/src/core/lib/surface/version.cc +2 -2
  1329. data/src/core/lib/surface/wait_for_cq_end_op.h +94 -0
  1330. data/src/core/lib/transport/batch_builder.cc +7 -9
  1331. data/src/core/lib/transport/batch_builder.h +1 -3
  1332. data/src/core/lib/transport/bdp_estimator.cc +2 -2
  1333. data/src/core/lib/transport/bdp_estimator.h +2 -2
  1334. data/src/core/lib/transport/call_final_info.cc +38 -0
  1335. data/src/core/lib/transport/call_final_info.h +54 -0
  1336. data/src/core/lib/transport/connectivity_state.cc +3 -4
  1337. data/src/core/lib/transport/connectivity_state.h +4 -0
  1338. data/src/core/lib/transport/error_utils.cc +0 -2
  1339. data/src/core/lib/transport/handshaker.cc +0 -2
  1340. data/src/core/lib/transport/metadata_batch.cc +12 -7
  1341. data/src/core/lib/transport/metadata_batch.h +122 -50
  1342. data/src/core/lib/transport/parsed_metadata.h +32 -20
  1343. data/src/core/lib/transport/simple_slice_based_metadata.h +8 -2
  1344. data/src/core/lib/transport/tcp_connect_handshaker.cc +0 -1
  1345. data/src/core/lib/transport/timeout_encoding.h +2 -2
  1346. data/src/core/lib/transport/transport.cc +80 -67
  1347. data/src/core/lib/transport/transport.h +504 -91
  1348. data/src/core/lib/transport/transport_fwd.h +3 -1
  1349. data/src/core/lib/transport/transport_op_string.cc +0 -2
  1350. data/src/core/lib/uri/uri_parser.cc +0 -1
  1351. data/src/core/plugin_registry/grpc_plugin_registry.cc +5 -0
  1352. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +0 -3
  1353. data/src/core/tsi/alts/crypt/aes_gcm.cc +142 -89
  1354. data/src/core/tsi/alts/crypt/gsec.h +387 -319
  1355. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +11 -7
  1356. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +1 -1
  1357. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +5 -7
  1358. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +1 -1
  1359. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +4 -6
  1360. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +12 -13
  1361. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +26 -25
  1362. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +9 -1
  1363. data/src/core/tsi/ssl_transport_security.cc +233 -69
  1364. data/src/core/tsi/ssl_transport_security.h +36 -2
  1365. data/src/ruby/bin/math_pb.rb +24 -18
  1366. data/src/ruby/ext/grpc/extconf.rb +73 -10
  1367. data/src/ruby/ext/grpc/rb_call.c +62 -39
  1368. data/src/ruby/ext/grpc/rb_call_credentials.c +0 -1
  1369. data/src/ruby/ext/grpc/rb_channel.c +109 -84
  1370. data/src/ruby/ext/grpc/rb_channel.h +1 -0
  1371. data/src/ruby/ext/grpc/rb_channel_args.c +21 -3
  1372. data/src/ruby/ext/grpc/rb_channel_args.h +4 -0
  1373. data/src/ruby/ext/grpc/rb_channel_credentials.c +0 -1
  1374. data/src/ruby/ext/grpc/rb_compression_options.c +0 -1
  1375. data/src/ruby/ext/grpc/rb_event_thread.c +22 -6
  1376. data/src/ruby/ext/grpc/rb_event_thread.h +1 -0
  1377. data/src/ruby/ext/grpc/rb_grpc.c +192 -31
  1378. data/src/ruby/ext/grpc/rb_grpc.h +8 -4
  1379. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +10 -0
  1380. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +15 -0
  1381. data/src/ruby/ext/grpc/rb_server.c +62 -45
  1382. data/src/ruby/ext/grpc/rb_server_credentials.c +0 -1
  1383. data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +0 -1
  1384. data/src/ruby/ext/grpc/rb_xds_server_credentials.c +0 -1
  1385. data/src/ruby/lib/grpc/generic/active_call.rb +9 -14
  1386. data/src/ruby/lib/grpc/generic/bidi_call.rb +2 -0
  1387. data/src/ruby/lib/grpc/version.rb +1 -1
  1388. data/src/ruby/pb/grpc/health/v1/health_pb.rb +24 -13
  1389. data/src/ruby/pb/src/proto/grpc/testing/empty_pb.rb +24 -3
  1390. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +33 -111
  1391. data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +25 -2
  1392. data/src/ruby/pb/src/proto/grpc/testing/test_services_pb.rb +22 -0
  1393. data/src/ruby/pb/test/client.rb +16 -0
  1394. data/src/ruby/spec/generic/rpc_server_spec.rb +3 -3
  1395. data/third_party/abseil-cpp/absl/algorithm/container.h +3 -2
  1396. data/third_party/abseil-cpp/absl/base/attributes.h +58 -5
  1397. data/third_party/abseil-cpp/absl/base/call_once.h +1 -1
  1398. data/third_party/abseil-cpp/absl/base/casts.h +8 -8
  1399. data/third_party/abseil-cpp/absl/base/config.h +89 -106
  1400. data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +26 -1
  1401. data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +2 -2
  1402. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +50 -39
  1403. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +2 -1
  1404. data/third_party/abseil-cpp/absl/base/internal/prefetch.h +17 -18
  1405. data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +32 -3
  1406. data/third_party/abseil-cpp/absl/base/internal/raw_logging.h +24 -4
  1407. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +31 -73
  1408. data/third_party/abseil-cpp/absl/base/internal/thread_identity.cc +9 -8
  1409. data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +11 -11
  1410. data/third_party/abseil-cpp/absl/base/internal/throw_delegate.cc +23 -32
  1411. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +2 -3
  1412. data/third_party/abseil-cpp/absl/base/options.h +1 -1
  1413. data/third_party/abseil-cpp/absl/base/policy_checks.h +3 -3
  1414. data/third_party/abseil-cpp/absl/base/prefetch.h +198 -0
  1415. data/third_party/abseil-cpp/absl/container/fixed_array.h +54 -29
  1416. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +5 -1
  1417. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +6 -2
  1418. data/third_party/abseil-cpp/absl/container/inlined_vector.h +167 -79
  1419. data/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +1 -1
  1420. data/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +3 -21
  1421. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +1 -1
  1422. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +46 -0
  1423. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +2 -0
  1424. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +85 -26
  1425. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +35 -18
  1426. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +70 -29
  1427. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +437 -236
  1428. data/third_party/abseil-cpp/absl/crc/crc32c.h +8 -1
  1429. data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.cc +14 -8
  1430. data/third_party/abseil-cpp/absl/crc/internal/crc.cc +4 -35
  1431. data/third_party/abseil-cpp/absl/crc/internal/crc.h +2 -10
  1432. data/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +1 -1
  1433. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.cc +1 -1
  1434. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.h +4 -4
  1435. data/third_party/abseil-cpp/absl/crc/internal/crc_internal.h +8 -10
  1436. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_64.cc +17 -19
  1437. data/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +8 -8
  1438. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +2 -1
  1439. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +59 -23
  1440. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +1 -1
  1441. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +1 -1
  1442. data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +1 -1
  1443. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +43 -19
  1444. data/third_party/abseil-cpp/absl/debugging/symbolize_emscripten.inc +3 -0
  1445. data/third_party/abseil-cpp/absl/flags/commandlineflag.h +1 -1
  1446. data/third_party/abseil-cpp/absl/flags/internal/commandlineflag.cc +1 -1
  1447. data/third_party/abseil-cpp/absl/flags/internal/flag.cc +2 -2
  1448. data/third_party/abseil-cpp/absl/flags/internal/flag.h +16 -15
  1449. data/third_party/abseil-cpp/absl/flags/internal/flag_msvc.inc +1 -1
  1450. data/third_party/abseil-cpp/absl/flags/marshalling.cc +43 -2
  1451. data/third_party/abseil-cpp/absl/flags/marshalling.h +5 -0
  1452. data/third_party/abseil-cpp/absl/functional/any_invocable.h +9 -1
  1453. data/third_party/abseil-cpp/absl/functional/bind_front.h +1 -1
  1454. data/third_party/abseil-cpp/absl/functional/function_ref.h +3 -3
  1455. data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +37 -24
  1456. data/third_party/abseil-cpp/absl/functional/internal/function_ref.h +19 -9
  1457. data/third_party/abseil-cpp/absl/hash/hash.h +7 -4
  1458. data/third_party/abseil-cpp/absl/hash/internal/hash.h +38 -15
  1459. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +6 -0
  1460. data/third_party/abseil-cpp/absl/meta/type_traits.h +48 -373
  1461. data/third_party/abseil-cpp/absl/numeric/bits.h +4 -4
  1462. data/third_party/abseil-cpp/absl/numeric/int128.cc +20 -8
  1463. data/third_party/abseil-cpp/absl/numeric/int128.h +36 -39
  1464. data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +0 -3
  1465. data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +47 -30
  1466. data/third_party/abseil-cpp/absl/random/bit_gen_ref.h +185 -0
  1467. data/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +4 -3
  1468. data/third_party/abseil-cpp/absl/random/internal/generate_real.h +1 -1
  1469. data/third_party/abseil-cpp/absl/random/internal/platform.h +1 -1
  1470. data/third_party/abseil-cpp/absl/random/internal/randen_detect.cc +4 -0
  1471. data/third_party/abseil-cpp/absl/random/internal/randen_engine.h +1 -1
  1472. data/third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc +1 -1
  1473. data/third_party/abseil-cpp/absl/random/internal/uniform_helper.h +1 -1
  1474. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +4 -0
  1475. data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +12 -24
  1476. data/third_party/abseil-cpp/absl/status/status.cc +11 -7
  1477. data/third_party/abseil-cpp/absl/status/status.h +11 -2
  1478. data/third_party/abseil-cpp/absl/status/statusor.h +22 -8
  1479. data/third_party/abseil-cpp/absl/strings/ascii.cc +54 -6
  1480. data/third_party/abseil-cpp/absl/strings/charconv.cc +21 -4
  1481. data/third_party/abseil-cpp/absl/strings/charconv.h +2 -2
  1482. data/third_party/abseil-cpp/absl/strings/cord.cc +1 -2
  1483. data/third_party/abseil-cpp/absl/strings/cord.h +32 -5
  1484. data/third_party/abseil-cpp/absl/strings/cord_analysis.cc +23 -1
  1485. data/third_party/abseil-cpp/absl/strings/cord_analysis.h +18 -0
  1486. data/third_party/abseil-cpp/absl/strings/cord_buffer.h +2 -5
  1487. data/third_party/abseil-cpp/absl/strings/escaping.cc +10 -32
  1488. data/third_party/abseil-cpp/absl/strings/escaping.h +1 -1
  1489. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +2 -4
  1490. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.h +3 -3
  1491. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +0 -1
  1492. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +15 -13
  1493. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +13 -4
  1494. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +8 -0
  1495. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.cc +5 -3
  1496. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.h +4 -7
  1497. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +8 -0
  1498. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.h +2 -2
  1499. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc +46 -20
  1500. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h +1 -34
  1501. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +2 -1
  1502. data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +23 -0
  1503. data/third_party/abseil-cpp/absl/strings/internal/escaping.h +1 -0
  1504. data/third_party/abseil-cpp/absl/strings/internal/memutil.cc +2 -77
  1505. data/third_party/abseil-cpp/absl/strings/internal/memutil.h +4 -112
  1506. data/third_party/abseil-cpp/absl/strings/internal/stl_type_traits.h +1 -1
  1507. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +10 -31
  1508. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +8 -8
  1509. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +5 -20
  1510. data/third_party/abseil-cpp/absl/strings/internal/str_format/constexpr_parser.h +1 -0
  1511. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +1 -1
  1512. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +9 -9
  1513. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +56 -6
  1514. data/third_party/abseil-cpp/absl/strings/match.cc +87 -0
  1515. data/third_party/abseil-cpp/absl/strings/match.h +19 -0
  1516. data/third_party/abseil-cpp/absl/strings/numbers.cc +154 -122
  1517. data/third_party/abseil-cpp/absl/strings/numbers.h +1 -6
  1518. data/third_party/abseil-cpp/absl/strings/str_cat.cc +7 -50
  1519. data/third_party/abseil-cpp/absl/strings/str_cat.h +83 -15
  1520. data/third_party/abseil-cpp/absl/strings/str_format.h +6 -3
  1521. data/third_party/abseil-cpp/absl/strings/str_split.cc +9 -6
  1522. data/third_party/abseil-cpp/absl/strings/string_view.cc +26 -4
  1523. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +5 -0
  1524. data/third_party/abseil-cpp/absl/synchronization/internal/futex.h +63 -43
  1525. data/third_party/abseil-cpp/absl/synchronization/internal/futex_waiter.cc +111 -0
  1526. data/third_party/abseil-cpp/absl/synchronization/internal/futex_waiter.h +63 -0
  1527. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +11 -7
  1528. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.cc +225 -0
  1529. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +122 -114
  1530. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +12 -8
  1531. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +10 -1
  1532. data/third_party/abseil-cpp/absl/synchronization/internal/pthread_waiter.cc +167 -0
  1533. data/third_party/abseil-cpp/absl/synchronization/internal/pthread_waiter.h +60 -0
  1534. data/third_party/abseil-cpp/absl/synchronization/internal/sem_waiter.cc +122 -0
  1535. data/third_party/abseil-cpp/absl/synchronization/internal/sem_waiter.h +65 -0
  1536. data/third_party/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.cc +91 -0
  1537. data/third_party/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.h +56 -0
  1538. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.h +19 -113
  1539. data/third_party/abseil-cpp/absl/synchronization/internal/waiter_base.cc +42 -0
  1540. data/third_party/abseil-cpp/absl/synchronization/internal/waiter_base.h +90 -0
  1541. data/third_party/abseil-cpp/absl/synchronization/internal/win32_waiter.cc +151 -0
  1542. data/third_party/abseil-cpp/absl/synchronization/internal/win32_waiter.h +70 -0
  1543. data/third_party/abseil-cpp/absl/synchronization/mutex.cc +407 -411
  1544. data/third_party/abseil-cpp/absl/synchronization/mutex.h +152 -118
  1545. data/third_party/abseil-cpp/absl/time/clock.cc +6 -7
  1546. data/third_party/abseil-cpp/absl/time/duration.cc +24 -26
  1547. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +1 -0
  1548. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc +1 -1
  1549. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +3 -3
  1550. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.cc +8 -6
  1551. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h +6 -3
  1552. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.cc +4 -2
  1553. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.h +4 -0
  1554. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +322 -295
  1555. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.h +8 -17
  1556. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +51 -33
  1557. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.h +7 -2
  1558. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +128 -2
  1559. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.h +1 -1
  1560. data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +5 -1
  1561. data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +34 -34
  1562. data/third_party/abseil-cpp/absl/time/time.cc +9 -2
  1563. data/third_party/abseil-cpp/absl/time/time.h +115 -15
  1564. data/third_party/abseil-cpp/absl/types/internal/optional.h +0 -52
  1565. data/third_party/abseil-cpp/absl/types/internal/span.h +2 -2
  1566. data/third_party/abseil-cpp/absl/types/internal/variant.h +2 -2
  1567. data/third_party/abseil-cpp/absl/types/optional.h +15 -13
  1568. data/third_party/abseil-cpp/absl/types/span.h +1 -2
  1569. data/third_party/boringssl-with-bazel/err_data.c +554 -553
  1570. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.c +7 -3
  1571. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c +7 -7
  1572. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +5 -5
  1573. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +34 -1
  1574. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.c +11 -4
  1575. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +3 -3
  1576. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +7 -8
  1577. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.c +7 -7
  1578. data/third_party/boringssl-with-bazel/src/crypto/bio/errno.c +92 -0
  1579. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +5 -49
  1580. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +18 -13
  1581. data/third_party/boringssl-with-bazel/src/crypto/bio/internal.h +16 -6
  1582. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.c +4 -4
  1583. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.c +11 -2
  1584. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +1 -1
  1585. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +19 -1
  1586. data/third_party/boringssl-with-bazel/src/crypto/chacha/internal.h +8 -1
  1587. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +31 -192
  1588. data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +3 -7
  1589. data/third_party/boringssl-with-bazel/src/crypto/conf/internal.h +8 -0
  1590. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.c +3 -2
  1591. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_fuchsia.c +0 -1
  1592. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_linux.c +0 -2
  1593. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.c +0 -1
  1594. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_sysreg.c +93 -0
  1595. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_win.c +1 -1
  1596. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.c +0 -1
  1597. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.c +0 -2
  1598. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +49 -46
  1599. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_64_adx.c +18 -0
  1600. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_tables.h +2809 -7417
  1601. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +27 -5
  1602. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/dh_asn1.c +4 -0
  1603. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/params.c +5 -0
  1604. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +20 -0
  1605. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_asn1.c +110 -72
  1606. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_derive.c +4 -3
  1607. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +24 -28
  1608. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +4 -6
  1609. data/third_party/boringssl-with-bazel/src/crypto/err/err.c +23 -21
  1610. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +35 -12
  1611. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.c +2 -4
  1612. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.c +3 -7
  1613. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.c +3 -3
  1614. data/third_party/boringssl-with-bazel/src/crypto/evp/print.c +7 -6
  1615. data/third_party/boringssl-with-bazel/src/crypto/ex_data.c +34 -72
  1616. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +1 -1
  1617. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c +12 -5
  1618. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.c +5 -6
  1619. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +12 -6
  1620. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.c +17 -18
  1621. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.c +51 -15
  1622. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.c +7 -7
  1623. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/delocate.h +5 -6
  1624. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.c +37 -8
  1625. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c +38 -19
  1626. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/internal.h +9 -0
  1627. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/builtin_curves.h +277 -0
  1628. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c +180 -404
  1629. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +3 -3
  1630. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.c +24 -57
  1631. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.c +17 -13
  1632. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +33 -71
  1633. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.c +18 -17
  1634. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c +5 -7
  1635. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.c +15 -18
  1636. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c +9 -11
  1637. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.c +24 -24
  1638. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.c +11 -27
  1639. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c +8 -8
  1640. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.c +4 -4
  1641. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +9 -3
  1642. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/hkdf.c +1 -1
  1643. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.c +40 -26
  1644. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +21 -7
  1645. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c +38 -19
  1646. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +2 -29
  1647. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +55 -0
  1648. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +33 -52
  1649. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +42 -24
  1650. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.c +4 -7
  1651. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +7 -0
  1652. data/third_party/boringssl-with-bazel/src/crypto/internal.h +211 -100
  1653. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +5 -4
  1654. data/third_party/boringssl-with-bazel/src/crypto/mem.c +7 -8
  1655. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +25 -46
  1656. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +3 -3
  1657. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.c +3 -3
  1658. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +7 -7
  1659. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +8 -5
  1660. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +1 -0
  1661. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/deterministic.c +7 -6
  1662. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/forkunsafe.c +6 -12
  1663. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/getentropy.c +52 -0
  1664. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/ios.c +34 -0
  1665. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/trusty.c +38 -0
  1666. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/windows.c +41 -19
  1667. data/third_party/boringssl-with-bazel/src/crypto/refcount.c +59 -0
  1668. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.c +152 -72
  1669. data/third_party/boringssl-with-bazel/src/crypto/thread_none.c +0 -8
  1670. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.c +6 -35
  1671. data/third_party/boringssl-with-bazel/src/crypto/thread_win.c +5 -26
  1672. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +14 -18
  1673. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +54 -143
  1674. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +8 -19
  1675. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +0 -3
  1676. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +1 -1
  1677. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +1 -1
  1678. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.c +1 -3
  1679. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +2 -4
  1680. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +2 -2
  1681. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +1 -1
  1682. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +8 -12
  1683. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +19 -20
  1684. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +11 -15
  1685. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +5 -5
  1686. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +1 -1
  1687. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +7 -7
  1688. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c +2 -3
  1689. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +2 -3
  1690. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +4 -6
  1691. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +4 -119
  1692. data/third_party/boringssl-with-bazel/src/include/openssl/asm_base.h +207 -0
  1693. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +5 -0
  1694. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +10 -116
  1695. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +11 -1
  1696. data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +0 -2
  1697. data/third_party/boringssl-with-bazel/src/include/openssl/chacha.h +6 -0
  1698. data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +5 -1
  1699. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +4 -1
  1700. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +0 -21
  1701. data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +28 -11
  1702. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +19 -6
  1703. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +11 -7
  1704. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +6 -2
  1705. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +13 -14
  1706. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +0 -61
  1707. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +22 -20
  1708. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +131 -81
  1709. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +236 -213
  1710. data/third_party/boringssl-with-bazel/src/include/openssl/target.h +201 -0
  1711. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +1 -29
  1712. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +4 -8
  1713. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +3 -2
  1714. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +9 -65
  1715. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +20 -20
  1716. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +1 -1
  1717. data/third_party/boringssl-with-bazel/src/ssl/internal.h +4 -11
  1718. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +26 -20
  1719. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +4 -4
  1720. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +37 -30
  1721. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +127 -26
  1722. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +2 -3
  1723. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64_adx.h +691 -0
  1724. data/third_party/upb/upb/base/descriptor_constants.h +7 -27
  1725. data/third_party/upb/upb/base/internal/log2.h +38 -0
  1726. data/third_party/upb/upb/base/status.c +6 -26
  1727. data/third_party/upb/upb/base/status.h +6 -26
  1728. data/third_party/upb/upb/base/status.hpp +50 -0
  1729. data/third_party/upb/upb/base/string_view.h +11 -28
  1730. data/third_party/upb/upb/generated_code_support.h +33 -0
  1731. data/third_party/upb/upb/hash/common.c +12 -44
  1732. data/third_party/upb/upb/hash/common.h +16 -41
  1733. data/third_party/upb/upb/hash/int_table.h +6 -26
  1734. data/third_party/upb/upb/hash/str_table.h +7 -26
  1735. data/third_party/upb/upb/json/decode.c +31 -28
  1736. data/third_party/upb/upb/json/decode.h +32 -29
  1737. data/third_party/upb/upb/json/encode.c +31 -28
  1738. data/third_party/upb/upb/json/encode.h +35 -32
  1739. data/third_party/upb/upb/lex/atoi.c +6 -26
  1740. data/third_party/upb/upb/lex/atoi.h +8 -26
  1741. data/third_party/upb/upb/lex/round_trip.c +6 -26
  1742. data/third_party/upb/upb/lex/round_trip.h +6 -26
  1743. data/third_party/upb/upb/lex/strtod.c +6 -26
  1744. data/third_party/upb/upb/lex/strtod.h +6 -26
  1745. data/third_party/upb/upb/lex/unicode.c +6 -26
  1746. data/third_party/upb/upb/lex/unicode.h +8 -26
  1747. data/third_party/upb/upb/mem/alloc.c +6 -26
  1748. data/third_party/upb/upb/mem/alloc.h +6 -26
  1749. data/third_party/upb/upb/mem/arena.c +30 -29
  1750. data/third_party/upb/upb/mem/arena.h +16 -44
  1751. data/third_party/upb/upb/mem/arena.hpp +54 -0
  1752. data/third_party/upb/upb/mem/internal/arena.h +94 -0
  1753. data/third_party/upb/upb/message/accessors.c +34 -31
  1754. data/third_party/upb/upb/message/accessors.h +58 -57
  1755. data/third_party/upb/upb/message/array.c +154 -0
  1756. data/third_party/upb/upb/message/array.h +98 -0
  1757. data/third_party/upb/upb/message/internal/accessors.h +367 -0
  1758. data/third_party/upb/upb/message/internal/array.h +138 -0
  1759. data/third_party/upb/upb/message/internal/extension.h +63 -0
  1760. data/third_party/upb/upb/message/internal/map.h +173 -0
  1761. data/third_party/upb/upb/message/internal/map_entry.h +66 -0
  1762. data/third_party/upb/upb/message/internal/map_sorter.h +112 -0
  1763. data/third_party/upb/upb/message/internal/message.h +106 -0
  1764. data/third_party/upb/upb/message/internal/types.h +23 -0
  1765. data/third_party/upb/upb/message/map.c +145 -0
  1766. data/third_party/upb/upb/message/map.h +147 -0
  1767. data/third_party/upb/upb/message/map_gencode_util.h +81 -0
  1768. data/third_party/upb/upb/message/map_sorter.c +170 -0
  1769. data/third_party/upb/upb/message/message.c +8 -34
  1770. data/third_party/upb/upb/message/message.h +10 -27
  1771. data/third_party/upb/upb/message/tagged_ptr.h +69 -0
  1772. data/third_party/upb/upb/message/types.h +15 -0
  1773. data/third_party/upb/upb/message/value.h +46 -0
  1774. data/third_party/upb/upb/mini_descriptor/build_enum.c +130 -0
  1775. data/third_party/upb/upb/mini_descriptor/build_enum.h +42 -0
  1776. data/third_party/upb/upb/mini_descriptor/decode.c +870 -0
  1777. data/third_party/upb/upb/mini_descriptor/decode.h +120 -0
  1778. data/third_party/upb/upb/mini_descriptor/internal/base92.c +26 -0
  1779. data/third_party/upb/upb/mini_descriptor/internal/base92.h +63 -0
  1780. data/third_party/upb/upb/mini_descriptor/internal/decoder.h +53 -0
  1781. data/third_party/upb/upb/mini_descriptor/internal/encode.c +323 -0
  1782. data/third_party/upb/upb/mini_descriptor/internal/encode.h +92 -0
  1783. data/third_party/upb/upb/mini_descriptor/internal/encode.hpp +118 -0
  1784. data/third_party/upb/upb/mini_descriptor/internal/modifiers.h +32 -0
  1785. data/third_party/upb/upb/mini_descriptor/internal/wire_constants.h +72 -0
  1786. data/third_party/upb/upb/mini_descriptor/link.c +122 -0
  1787. data/third_party/upb/upb/mini_descriptor/link.h +84 -0
  1788. data/third_party/upb/upb/mini_table/enum.h +38 -0
  1789. data/third_party/upb/upb/mini_table/extension.h +15 -0
  1790. data/third_party/upb/upb/mini_table/extension_registry.c +7 -27
  1791. data/third_party/upb/upb/mini_table/extension_registry.h +9 -28
  1792. data/third_party/upb/upb/mini_table/field.h +98 -0
  1793. data/third_party/upb/upb/mini_table/file.h +15 -0
  1794. data/third_party/upb/upb/mini_table/internal/enum.h +58 -0
  1795. data/third_party/upb/upb/mini_table/internal/extension.h +27 -0
  1796. data/third_party/upb/upb/mini_table/internal/field.h +114 -0
  1797. data/third_party/upb/upb/mini_table/internal/file.h +29 -0
  1798. data/third_party/upb/upb/mini_table/internal/message.c +19 -0
  1799. data/third_party/upb/upb/mini_table/internal/message.h +88 -0
  1800. data/third_party/upb/upb/mini_table/internal/sub.h +18 -0
  1801. data/third_party/upb/upb/mini_table/message.c +77 -0
  1802. data/third_party/upb/upb/mini_table/message.h +85 -0
  1803. data/third_party/upb/upb/mini_table/sub.h +15 -0
  1804. data/third_party/upb/upb/port/atomic.h +8 -26
  1805. data/third_party/upb/upb/port/def.inc +28 -29
  1806. data/third_party/upb/upb/port/undef.inc +8 -26
  1807. data/third_party/upb/upb/port/vsnprintf_compat.h +6 -26
  1808. data/third_party/upb/upb/reflection/common.h +11 -27
  1809. data/third_party/upb/upb/reflection/def.h +8 -26
  1810. data/third_party/upb/upb/reflection/def.hpp +26 -31
  1811. data/third_party/upb/upb/reflection/def_pool.c +16 -35
  1812. data/third_party/upb/upb/reflection/def_pool.h +17 -38
  1813. data/third_party/upb/upb/reflection/def_type.c +6 -26
  1814. data/third_party/upb/upb/reflection/def_type.h +6 -27
  1815. data/third_party/upb/upb/reflection/desc_state.c +7 -27
  1816. data/third_party/upb/upb/reflection/enum_def.c +19 -37
  1817. data/third_party/upb/upb/reflection/enum_def.h +13 -33
  1818. data/third_party/upb/upb/reflection/enum_reserved_range.c +9 -30
  1819. data/third_party/upb/upb/reflection/enum_reserved_range.h +6 -26
  1820. data/third_party/upb/upb/reflection/enum_value_def.c +13 -32
  1821. data/third_party/upb/upb/reflection/enum_value_def.h +8 -28
  1822. data/third_party/upb/upb/reflection/extension_range.c +9 -28
  1823. data/third_party/upb/upb/reflection/extension_range.h +6 -26
  1824. data/third_party/upb/upb/reflection/field_def.c +70 -52
  1825. data/third_party/upb/upb/reflection/field_def.h +25 -42
  1826. data/third_party/upb/upb/reflection/file_def.c +23 -48
  1827. data/third_party/upb/upb/reflection/file_def.h +10 -30
  1828. data/third_party/upb/upb/reflection/internal/def_builder.c +339 -0
  1829. data/third_party/upb/upb/reflection/internal/def_builder.h +137 -0
  1830. data/third_party/upb/upb/reflection/internal/def_pool.h +57 -0
  1831. data/third_party/upb/upb/reflection/internal/desc_state.h +44 -0
  1832. data/third_party/upb/upb/reflection/internal/enum_def.h +36 -0
  1833. data/third_party/upb/upb/reflection/internal/enum_reserved_range.h +35 -0
  1834. data/third_party/upb/upb/reflection/internal/enum_value_def.h +37 -0
  1835. data/third_party/upb/upb/reflection/internal/extension_range.h +34 -0
  1836. data/third_party/upb/upb/reflection/internal/field_def.h +56 -0
  1837. data/third_party/upb/upb/reflection/internal/file_def.h +37 -0
  1838. data/third_party/upb/upb/reflection/internal/message_def.h +43 -0
  1839. data/third_party/upb/upb/reflection/internal/message_reserved_range.h +35 -0
  1840. data/third_party/upb/upb/reflection/internal/method_def.h +33 -0
  1841. data/third_party/upb/upb/reflection/internal/oneof_def.h +37 -0
  1842. data/third_party/upb/upb/reflection/internal/service_def.h +33 -0
  1843. data/third_party/upb/upb/reflection/internal/strdup2.c +33 -0
  1844. data/third_party/upb/upb/reflection/internal/strdup2.h +32 -0
  1845. data/third_party/upb/upb/reflection/message.c +10 -30
  1846. data/third_party/upb/upb/reflection/message.h +27 -40
  1847. data/third_party/upb/upb/reflection/message.hpp +5 -23
  1848. data/third_party/upb/upb/reflection/message_def.c +73 -55
  1849. data/third_party/upb/upb/reflection/message_def.h +25 -43
  1850. data/third_party/upb/upb/reflection/message_reserved_range.c +8 -28
  1851. data/third_party/upb/upb/reflection/message_reserved_range.h +6 -26
  1852. data/third_party/upb/upb/reflection/method_def.c +10 -29
  1853. data/third_party/upb/upb/reflection/method_def.h +6 -26
  1854. data/third_party/upb/upb/reflection/oneof_def.c +15 -33
  1855. data/third_party/upb/upb/reflection/oneof_def.h +11 -30
  1856. data/third_party/upb/upb/reflection/service_def.c +12 -31
  1857. data/third_party/upb/upb/reflection/service_def.h +6 -26
  1858. data/third_party/upb/upb/text/encode.c +8 -28
  1859. data/third_party/upb/upb/text/encode.h +6 -26
  1860. data/third_party/upb/upb/wire/decode.c +106 -68
  1861. data/third_party/upb/upb/wire/decode.h +50 -26
  1862. data/third_party/upb/upb/wire/decode_fast.c +10 -28
  1863. data/third_party/upb/upb/wire/decode_fast.h +6 -26
  1864. data/third_party/upb/upb/wire/encode.c +52 -46
  1865. data/third_party/upb/upb/wire/encode.h +14 -30
  1866. data/third_party/upb/upb/wire/eps_copy_input_stream.c +6 -26
  1867. data/third_party/upb/upb/wire/eps_copy_input_stream.h +6 -26
  1868. data/third_party/upb/upb/wire/internal/constants.h +27 -0
  1869. data/third_party/upb/upb/wire/internal/decode.h +143 -0
  1870. data/third_party/upb/upb/wire/internal/swap.h +45 -0
  1871. data/third_party/upb/upb/wire/reader.c +6 -26
  1872. data/third_party/upb/upb/wire/reader.h +8 -28
  1873. data/third_party/upb/upb/wire/types.h +6 -26
  1874. data/third_party/zlib/adler32.c +5 -27
  1875. data/third_party/zlib/compress.c +5 -16
  1876. data/third_party/zlib/crc32.c +86 -162
  1877. data/third_party/zlib/deflate.c +233 -336
  1878. data/third_party/zlib/deflate.h +8 -8
  1879. data/third_party/zlib/gzguts.h +11 -12
  1880. data/third_party/zlib/infback.c +7 -23
  1881. data/third_party/zlib/inffast.c +1 -4
  1882. data/third_party/zlib/inffast.h +1 -1
  1883. data/third_party/zlib/inflate.c +30 -99
  1884. data/third_party/zlib/inftrees.c +6 -11
  1885. data/third_party/zlib/inftrees.h +3 -3
  1886. data/third_party/zlib/trees.c +224 -302
  1887. data/third_party/zlib/uncompr.c +4 -12
  1888. data/third_party/zlib/zconf.h +6 -2
  1889. data/third_party/zlib/zlib.h +191 -188
  1890. data/third_party/zlib/zutil.c +16 -44
  1891. data/third_party/zlib/zutil.h +10 -10
  1892. metadata +979 -741
  1893. data/src/core/ext/filters/client_channel/http_proxy.cc +0 -233
  1894. data/src/core/ext/filters/client_channel/http_proxy.h +0 -52
  1895. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_attributes.cc +0 -42
  1896. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_attributes.h +0 -64
  1897. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +0 -1226
  1898. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +0 -45
  1899. data/src/core/ext/transport/chttp2/transport/stream_map.cc +0 -177
  1900. data/src/core/ext/transport/chttp2/transport/stream_map.h +0 -68
  1901. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +0 -152
  1902. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +0 -735
  1903. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +0 -183
  1904. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +0 -835
  1905. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +0 -160
  1906. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +0 -743
  1907. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +0 -535
  1908. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +0 -2796
  1909. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +0 -69
  1910. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +0 -256
  1911. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +0 -77
  1912. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +0 -287
  1913. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +0 -59
  1914. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +0 -168
  1915. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +0 -52
  1916. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +0 -128
  1917. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +0 -52
  1918. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +0 -123
  1919. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +0 -153
  1920. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +0 -935
  1921. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +0 -57
  1922. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +0 -122
  1923. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +0 -63
  1924. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +0 -134
  1925. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +0 -60
  1926. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +0 -118
  1927. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +0 -357
  1928. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +0 -1629
  1929. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +0 -572
  1930. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +0 -3257
  1931. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +0 -128
  1932. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +0 -532
  1933. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +0 -732
  1934. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +0 -3926
  1935. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +0 -57
  1936. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +0 -122
  1937. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +0 -126
  1938. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +0 -664
  1939. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +0 -398
  1940. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +0 -1849
  1941. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +0 -227
  1942. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +0 -1054
  1943. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +0 -58
  1944. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +0 -134
  1945. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +0 -580
  1946. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +0 -2448
  1947. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +0 -235
  1948. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +0 -1180
  1949. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +0 -54
  1950. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +0 -115
  1951. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +0 -56
  1952. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +0 -122
  1953. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +0 -71
  1954. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +0 -256
  1955. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +0 -376
  1956. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +0 -1678
  1957. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +0 -314
  1958. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +0 -1886
  1959. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +0 -58
  1960. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +0 -149
  1961. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +0 -465
  1962. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +0 -2222
  1963. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +0 -73
  1964. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +0 -245
  1965. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +0 -75
  1966. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +0 -239
  1967. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +0 -79
  1968. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +0 -293
  1969. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +0 -69
  1970. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +0 -260
  1971. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +0 -57
  1972. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +0 -136
  1973. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +0 -141
  1974. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +0 -498
  1975. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +0 -207
  1976. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +0 -875
  1977. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +0 -182
  1978. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +0 -920
  1979. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +0 -53
  1980. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +0 -107
  1981. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +0 -269
  1982. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +0 -1600
  1983. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +0 -263
  1984. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +0 -1459
  1985. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +0 -89
  1986. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +0 -331
  1987. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +0 -80
  1988. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +0 -204
  1989. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +0 -66
  1990. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +0 -166
  1991. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +0 -222
  1992. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +0 -988
  1993. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +0 -229
  1994. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +0 -1017
  1995. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +0 -351
  1996. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +0 -1717
  1997. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +0 -136
  1998. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +0 -867
  1999. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +0 -1646
  2000. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +0 -9598
  2001. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +0 -100
  2002. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +0 -347
  2003. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +0 -328
  2004. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +0 -1530
  2005. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +0 -54
  2006. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +0 -123
  2007. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +0 -58
  2008. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +0 -122
  2009. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +0 -76
  2010. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +0 -196
  2011. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +0 -65
  2012. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +0 -205
  2013. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +0 -84
  2014. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +0 -413
  2015. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +0 -55
  2016. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +0 -122
  2017. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +0 -54
  2018. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +0 -107
  2019. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +0 -88
  2020. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +0 -259
  2021. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +0 -36
  2022. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +0 -48
  2023. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +0 -90
  2024. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +0 -261
  2025. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +0 -68
  2026. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +0 -204
  2027. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +0 -49
  2028. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +0 -139
  2029. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +0 -119
  2030. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +0 -437
  2031. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +0 -125
  2032. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +0 -635
  2033. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +0 -90
  2034. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +0 -271
  2035. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +0 -79
  2036. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +0 -358
  2037. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +0 -75
  2038. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +0 -201
  2039. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +0 -656
  2040. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +0 -3850
  2041. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +0 -53
  2042. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +0 -107
  2043. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.c +0 -69
  2044. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +0 -246
  2045. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c +0 -138
  2046. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +0 -499
  2047. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +0 -71
  2048. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +0 -257
  2049. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c +0 -53
  2050. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +0 -107
  2051. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +0 -31
  2052. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +0 -43
  2053. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +0 -265
  2054. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +0 -1479
  2055. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +0 -111
  2056. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +0 -369
  2057. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +0 -270
  2058. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +0 -1482
  2059. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +0 -75
  2060. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +0 -224
  2061. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +0 -41
  2062. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +0 -78
  2063. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +0 -405
  2064. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +0 -2161
  2065. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +0 -87
  2066. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +0 -331
  2067. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +0 -185
  2068. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +0 -923
  2069. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +0 -57
  2070. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +0 -137
  2071. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +0 -89
  2072. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +0 -321
  2073. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c +0 -56
  2074. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h +0 -130
  2075. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +0 -108
  2076. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +0 -309
  2077. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +0 -79
  2078. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +0 -266
  2079. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +0 -58
  2080. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +0 -172
  2081. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +0 -57
  2082. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +0 -135
  2083. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +0 -54
  2084. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +0 -115
  2085. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +0 -99
  2086. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +0 -277
  2087. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c +0 -46
  2088. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h +0 -117
  2089. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +0 -84
  2090. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +0 -312
  2091. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +0 -73
  2092. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +0 -236
  2093. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +0 -95
  2094. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +0 -354
  2095. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +0 -130
  2096. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +0 -536
  2097. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +0 -142
  2098. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +0 -516
  2099. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +0 -79
  2100. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +0 -234
  2101. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +0 -29
  2102. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +0 -44
  2103. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +0 -49
  2104. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +0 -153
  2105. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +0 -67
  2106. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +0 -168
  2107. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +0 -87
  2108. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +0 -246
  2109. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c +0 -78
  2110. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.h +0 -237
  2111. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +0 -29
  2112. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +0 -48
  2113. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +0 -52
  2114. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +0 -123
  2115. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +0 -60
  2116. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +0 -151
  2117. data/src/core/ext/upb-generated/google/api/annotations.upb.c +0 -43
  2118. data/src/core/ext/upb-generated/google/api/annotations.upb.h +0 -63
  2119. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +0 -372
  2120. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +0 -1764
  2121. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +0 -402
  2122. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +0 -1849
  2123. data/src/core/ext/upb-generated/google/api/http.upb.c +0 -114
  2124. data/src/core/ext/upb-generated/google/api/http.upb.h +0 -507
  2125. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +0 -55
  2126. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +0 -173
  2127. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +0 -49
  2128. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +0 -108
  2129. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +0 -1172
  2130. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +0 -5656
  2131. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +0 -49
  2132. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +0 -108
  2133. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +0 -38
  2134. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +0 -78
  2135. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +0 -118
  2136. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +0 -434
  2137. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +0 -49
  2138. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +0 -108
  2139. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +0 -166
  2140. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +0 -525
  2141. data/src/core/ext/upb-generated/google/rpc/status.upb.c +0 -55
  2142. data/src/core/ext/upb-generated/google/rpc/status.upb.h +0 -173
  2143. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +0 -109
  2144. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +0 -397
  2145. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +0 -82
  2146. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +0 -246
  2147. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +0 -345
  2148. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +0 -1677
  2149. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +0 -72
  2150. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +0 -207
  2151. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +0 -61
  2152. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +0 -154
  2153. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +0 -224
  2154. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +0 -893
  2155. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +0 -95
  2156. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +0 -308
  2157. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +0 -246
  2158. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +0 -1349
  2159. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +0 -129
  2160. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +0 -341
  2161. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +0 -64
  2162. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +0 -133
  2163. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +0 -41
  2164. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +0 -63
  2165. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +0 -63
  2166. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +0 -140
  2167. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +0 -60
  2168. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +0 -118
  2169. data/src/core/ext/upb-generated/validate/validate.upb.c +0 -950
  2170. data/src/core/ext/upb-generated/validate/validate.upb.h +0 -6544
  2171. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +0 -129
  2172. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +0 -341
  2173. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +0 -64
  2174. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +0 -133
  2175. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +0 -41
  2176. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +0 -63
  2177. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +0 -126
  2178. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +0 -352
  2179. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +0 -60
  2180. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +0 -118
  2181. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +0 -48
  2182. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +0 -93
  2183. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +0 -56
  2184. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +0 -122
  2185. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +0 -81
  2186. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +0 -241
  2187. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +0 -65
  2188. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +0 -142
  2189. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +0 -55
  2190. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +0 -122
  2191. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +0 -58
  2192. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +0 -151
  2193. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +0 -87
  2194. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +0 -338
  2195. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +0 -62
  2196. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +0 -152
  2197. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +0 -129
  2198. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +0 -360
  2199. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +0 -55
  2200. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +0 -168
  2201. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +0 -53
  2202. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +0 -107
  2203. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +0 -75
  2204. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +0 -270
  2205. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +0 -39
  2206. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +0 -78
  2207. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +0 -78
  2208. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +0 -289
  2209. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +0 -268
  2210. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +0 -1122
  2211. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +0 -160
  2212. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +0 -740
  2213. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +0 -61
  2214. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +0 -167
  2215. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +0 -82
  2216. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +0 -312
  2217. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +0 -82
  2218. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +0 -240
  2219. data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +0 -85
  2220. data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +0 -246
  2221. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +0 -54
  2222. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +0 -122
  2223. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +0 -84
  2224. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +0 -56
  2225. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +0 -128
  2226. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +0 -51
  2227. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +0 -102
  2228. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +0 -56
  2229. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +0 -277
  2230. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +0 -126
  2231. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +0 -43
  2232. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +0 -41
  2233. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +0 -56
  2234. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +0 -41
  2235. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +0 -49
  2236. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +0 -36
  2237. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +0 -46
  2238. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +0 -36
  2239. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +0 -46
  2240. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +0 -36
  2241. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +0 -142
  2242. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +0 -41
  2243. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +0 -51
  2244. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +0 -36
  2245. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +0 -48
  2246. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +0 -31
  2247. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +0 -38
  2248. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +0 -36
  2249. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +0 -222
  2250. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +0 -106
  2251. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +0 -408
  2252. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +0 -121
  2253. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +0 -98
  2254. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +0 -46
  2255. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +0 -567
  2256. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +0 -151
  2257. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +0 -51
  2258. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +0 -36
  2259. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +0 -138
  2260. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +0 -36
  2261. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +0 -206
  2262. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +0 -106
  2263. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +0 -132
  2264. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +0 -71
  2265. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +0 -54
  2266. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +0 -36
  2267. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +0 -271
  2268. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +0 -151
  2269. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +0 -169
  2270. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +0 -71
  2271. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +0 -53
  2272. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +0 -36
  2273. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +0 -47
  2274. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +0 -36
  2275. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +0 -53
  2276. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +0 -41
  2277. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +0 -235
  2278. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +0 -101
  2279. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +0 -234
  2280. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +0 -76
  2281. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +0 -53
  2282. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +0 -36
  2283. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +0 -305
  2284. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +0 -111
  2285. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +0 -57
  2286. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +0 -41
  2287. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +0 -55
  2288. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +0 -41
  2289. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +0 -61
  2290. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +0 -41
  2291. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +0 -70
  2292. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +0 -36
  2293. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +0 -49
  2294. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +0 -36
  2295. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +0 -99
  2296. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +0 -51
  2297. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +0 -133
  2298. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +0 -61
  2299. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +0 -136
  2300. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +0 -56
  2301. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +0 -48
  2302. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +0 -36
  2303. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +0 -227
  2304. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +0 -81
  2305. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +0 -190
  2306. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +0 -66
  2307. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +0 -101
  2308. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +0 -36
  2309. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +0 -71
  2310. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +0 -41
  2311. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +0 -69
  2312. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +0 -36
  2313. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +0 -125
  2314. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +0 -71
  2315. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +0 -134
  2316. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +0 -76
  2317. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +0 -223
  2318. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +0 -86
  2319. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +0 -123
  2320. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +0 -46
  2321. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +0 -972
  2322. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +0 -316
  2323. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +0 -77
  2324. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +0 -46
  2325. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +0 -199
  2326. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +0 -91
  2327. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +0 -56
  2328. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +0 -36
  2329. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +0 -57
  2330. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +0 -36
  2331. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +0 -57
  2332. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +0 -41
  2333. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +0 -72
  2334. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +0 -36
  2335. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +0 -99
  2336. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +0 -36
  2337. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +0 -45
  2338. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.h +0 -36
  2339. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +0 -52
  2340. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +0 -36
  2341. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +0 -71
  2342. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +0 -41
  2343. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +0 -61
  2344. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +0 -31
  2345. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +0 -75
  2346. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +0 -41
  2347. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +0 -79
  2348. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +0 -36
  2349. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +0 -50
  2350. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +0 -36
  2351. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +0 -92
  2352. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +0 -56
  2353. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +0 -117
  2354. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +0 -46
  2355. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +0 -80
  2356. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +0 -41
  2357. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +0 -89
  2358. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +0 -36
  2359. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +0 -60
  2360. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +0 -41
  2361. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +0 -580
  2362. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +0 -131
  2363. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +0 -50
  2364. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +0 -36
  2365. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +0 -48
  2366. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +0 -31
  2367. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +0 -215
  2368. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +0 -66
  2369. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +0 -91
  2370. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +0 -46
  2371. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +0 -258
  2372. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +0 -66
  2373. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +0 -58
  2374. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +0 -41
  2375. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +0 -58
  2376. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +0 -36
  2377. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +0 -200
  2378. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +0 -101
  2379. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +0 -76
  2380. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +0 -41
  2381. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +0 -152
  2382. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +0 -56
  2383. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +0 -46
  2384. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +0 -36
  2385. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +0 -56
  2386. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +0 -51
  2387. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c +0 -48
  2388. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h +0 -36
  2389. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +0 -55
  2390. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +0 -56
  2391. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +0 -61
  2392. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +0 -41
  2393. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +0 -54
  2394. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +0 -36
  2395. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +0 -52
  2396. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +0 -36
  2397. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +0 -51
  2398. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +0 -36
  2399. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +0 -71
  2400. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +0 -46
  2401. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c +0 -40
  2402. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h +0 -41
  2403. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +0 -65
  2404. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +0 -41
  2405. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +0 -58
  2406. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +0 -41
  2407. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +0 -75
  2408. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +0 -46
  2409. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +0 -78
  2410. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +0 -66
  2411. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +0 -85
  2412. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +0 -56
  2413. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +0 -53
  2414. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +0 -46
  2415. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +0 -36
  2416. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +0 -31
  2417. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +0 -94
  2418. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +0 -36
  2419. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +0 -54
  2420. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +0 -41
  2421. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +0 -48
  2422. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +0 -46
  2423. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c +0 -69
  2424. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.h +0 -41
  2425. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +0 -39
  2426. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +0 -31
  2427. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +0 -44
  2428. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +0 -36
  2429. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +0 -57
  2430. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +0 -36
  2431. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +0 -40
  2432. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +0 -31
  2433. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +0 -154
  2434. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +0 -96
  2435. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +0 -153
  2436. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +0 -101
  2437. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +0 -52
  2438. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +0 -46
  2439. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +0 -39
  2440. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +0 -36
  2441. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +0 -34
  2442. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +0 -36
  2443. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +0 -387
  2444. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +0 -171
  2445. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +0 -35
  2446. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +0 -36
  2447. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +0 -32
  2448. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +0 -36
  2449. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +0 -54
  2450. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +0 -51
  2451. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +0 -35
  2452. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +0 -36
  2453. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +0 -45
  2454. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +0 -76
  2455. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +0 -37
  2456. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +0 -36
  2457. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +0 -67
  2458. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +0 -51
  2459. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +0 -99
  2460. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +0 -76
  2461. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +0 -62
  2462. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +0 -46
  2463. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +0 -47
  2464. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +0 -36
  2465. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +0 -34
  2466. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +0 -31
  2467. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +0 -46
  2468. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +0 -36
  2469. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +0 -39
  2470. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +0 -36
  2471. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +0 -283
  2472. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +0 -146
  2473. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +0 -63
  2474. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +0 -46
  2475. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +0 -47
  2476. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +0 -36
  2477. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +0 -35
  2478. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +0 -31
  2479. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +0 -64
  2480. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +0 -51
  2481. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +0 -40
  2482. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +0 -36
  2483. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +0 -38
  2484. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +0 -36
  2485. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +0 -45
  2486. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +0 -36
  2487. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +0 -56
  2488. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +0 -41
  2489. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +0 -39
  2490. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +0 -41
  2491. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +0 -41
  2492. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +0 -36
  2493. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +0 -45
  2494. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +0 -36
  2495. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +0 -61
  2496. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +0 -41
  2497. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +0 -46
  2498. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +0 -36
  2499. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +0 -43
  2500. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +0 -36
  2501. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +0 -51
  2502. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +0 -41
  2503. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +0 -36
  2504. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +0 -36
  2505. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +0 -55
  2506. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +0 -41
  2507. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +0 -126
  2508. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +0 -81
  2509. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +0 -71
  2510. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +0 -61
  2511. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +0 -40
  2512. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +0 -41
  2513. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +0 -52
  2514. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +0 -41
  2515. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +0 -60
  2516. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +0 -41
  2517. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +0 -36
  2518. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +0 -46
  2519. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +0 -37
  2520. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +0 -36
  2521. data/src/core/lib/event_engine/memory_allocator.cc +0 -74
  2522. data/src/core/lib/event_engine/thread_pool/original_thread_pool.cc +0 -256
  2523. data/src/core/lib/event_engine/thread_pool/original_thread_pool.h +0 -137
  2524. data/src/core/lib/promise/detail/basic_join.h +0 -197
  2525. data/src/core/lib/promise/detail/switch.h +0 -1455
  2526. data/src/core/lib/resolver/server_address.cc +0 -174
  2527. data/src/core/lib/transport/pid_controller.cc +0 -51
  2528. data/src/core/lib/transport/pid_controller.h +0 -116
  2529. data/src/core/lib/transport/transport_impl.h +0 -102
  2530. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +0 -403
  2531. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_freebsd.c +0 -62
  2532. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm.c +0 -38
  2533. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_openbsd.c +0 -31
  2534. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/fuchsia.c +0 -34
  2535. data/third_party/boringssl-with-bazel/src/crypto/refcount_c11.c +0 -65
  2536. data/third_party/boringssl-with-bazel/src/crypto/refcount_no_threads.c +0 -42
  2537. data/third_party/boringssl-with-bazel/src/crypto/refcount_win.c +0 -89
  2538. data/third_party/re2/util/benchmark.h +0 -156
  2539. data/third_party/re2/util/flags.h +0 -26
  2540. data/third_party/re2/util/malloc_counter.h +0 -19
  2541. data/third_party/re2/util/pcre.cc +0 -1025
  2542. data/third_party/re2/util/pcre.h +0 -681
  2543. data/third_party/re2/util/test.h +0 -50
  2544. data/third_party/upb/upb/alloc.h +0 -36
  2545. data/third_party/upb/upb/arena.h +0 -36
  2546. data/third_party/upb/upb/array.h +0 -36
  2547. data/third_party/upb/upb/base/log2.h +0 -57
  2548. data/third_party/upb/upb/collections/array.c +0 -145
  2549. data/third_party/upb/upb/collections/array.h +0 -85
  2550. data/third_party/upb/upb/collections/array_internal.h +0 -135
  2551. data/third_party/upb/upb/collections/map.c +0 -135
  2552. data/third_party/upb/upb/collections/map.h +0 -135
  2553. data/third_party/upb/upb/collections/map_gencode_util.h +0 -78
  2554. data/third_party/upb/upb/collections/map_internal.h +0 -170
  2555. data/third_party/upb/upb/collections/map_sorter.c +0 -166
  2556. data/third_party/upb/upb/collections/map_sorter_internal.h +0 -109
  2557. data/third_party/upb/upb/collections/message_value.h +0 -65
  2558. data/third_party/upb/upb/decode.h +0 -36
  2559. data/third_party/upb/upb/def.h +0 -36
  2560. data/third_party/upb/upb/def.hpp +0 -33
  2561. data/third_party/upb/upb/encode.h +0 -36
  2562. data/third_party/upb/upb/extension_registry.h +0 -35
  2563. data/third_party/upb/upb/json_decode.h +0 -36
  2564. data/third_party/upb/upb/json_encode.h +0 -36
  2565. data/third_party/upb/upb/map.h +0 -36
  2566. data/third_party/upb/upb/mem/arena_internal.h +0 -114
  2567. data/third_party/upb/upb/message/accessors_internal.h +0 -325
  2568. data/third_party/upb/upb/message/extension_internal.h +0 -83
  2569. data/third_party/upb/upb/message/internal.h +0 -135
  2570. data/third_party/upb/upb/mini_table/common.c +0 -128
  2571. data/third_party/upb/upb/mini_table/common.h +0 -170
  2572. data/third_party/upb/upb/mini_table/common_internal.h +0 -111
  2573. data/third_party/upb/upb/mini_table/decode.c +0 -1127
  2574. data/third_party/upb/upb/mini_table/decode.h +0 -179
  2575. data/third_party/upb/upb/mini_table/encode.c +0 -300
  2576. data/third_party/upb/upb/mini_table/encode_internal.h +0 -111
  2577. data/third_party/upb/upb/mini_table/encode_internal.hpp +0 -136
  2578. data/third_party/upb/upb/mini_table/enum_internal.h +0 -88
  2579. data/third_party/upb/upb/mini_table/extension_internal.h +0 -47
  2580. data/third_party/upb/upb/mini_table/field_internal.h +0 -192
  2581. data/third_party/upb/upb/mini_table/file_internal.h +0 -47
  2582. data/third_party/upb/upb/mini_table/message_internal.h +0 -136
  2583. data/third_party/upb/upb/mini_table/sub_internal.h +0 -38
  2584. data/third_party/upb/upb/mini_table/types.h +0 -40
  2585. data/third_party/upb/upb/mini_table.h +0 -36
  2586. data/third_party/upb/upb/msg.h +0 -36
  2587. data/third_party/upb/upb/reflection/def_builder.c +0 -357
  2588. data/third_party/upb/upb/reflection/def_builder_internal.h +0 -157
  2589. data/third_party/upb/upb/reflection/def_pool_internal.h +0 -77
  2590. data/third_party/upb/upb/reflection/desc_state_internal.h +0 -64
  2591. data/third_party/upb/upb/reflection/enum_def_internal.h +0 -56
  2592. data/third_party/upb/upb/reflection/enum_reserved_range_internal.h +0 -55
  2593. data/third_party/upb/upb/reflection/enum_value_def_internal.h +0 -57
  2594. data/third_party/upb/upb/reflection/extension_range_internal.h +0 -54
  2595. data/third_party/upb/upb/reflection/field_def_internal.h +0 -76
  2596. data/third_party/upb/upb/reflection/file_def_internal.h +0 -57
  2597. data/third_party/upb/upb/reflection/message_def_internal.h +0 -63
  2598. data/third_party/upb/upb/reflection/message_reserved_range_internal.h +0 -55
  2599. data/third_party/upb/upb/reflection/method_def_internal.h +0 -53
  2600. data/third_party/upb/upb/reflection/oneof_def_internal.h +0 -57
  2601. data/third_party/upb/upb/reflection/service_def_internal.h +0 -53
  2602. data/third_party/upb/upb/reflection.h +0 -36
  2603. data/third_party/upb/upb/reflection.hpp +0 -33
  2604. data/third_party/upb/upb/status.h +0 -36
  2605. data/third_party/upb/upb/string_view.h +0 -36
  2606. data/third_party/upb/upb/text_encode.h +0 -36
  2607. data/third_party/upb/upb/upb.h +0 -39
  2608. data/third_party/upb/upb/upb.hpp +0 -107
  2609. data/third_party/upb/upb/wire/common.h +0 -44
  2610. data/third_party/upb/upb/wire/common_internal.h +0 -50
  2611. data/third_party/upb/upb/wire/decode_internal.h +0 -163
  2612. data/third_party/upb/upb/wire/swap_internal.h +0 -63
  2613. data/third_party/zlib/gzclose.c +0 -25
  2614. data/third_party/zlib/gzlib.c +0 -639
  2615. data/third_party/zlib/gzread.c +0 -650
  2616. data/third_party/zlib/gzwrite.c +0 -677
@@ -0,0 +1,4530 @@
1
+ // Copyright 2023 gRPC authors.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ //
16
+ // Automatically generated by tools/codegen/core/gen_if_list.py
17
+ //
18
+
19
+ #ifndef GRPC_SRC_CORE_LIB_GPRPP_IF_LIST_H
20
+ #define GRPC_SRC_CORE_LIB_GPRPP_IF_LIST_H
21
+
22
+ #include <grpc/support/port_platform.h>
23
+
24
+ namespace grpc_core {
25
+
26
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
27
+ typename Check0, typename Action0>
28
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
29
+ Check0 check0, Action0 action0) {
30
+ if (check0(input)) return action0(action_arg);
31
+ return action_fail(action_arg);
32
+ }
33
+
34
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
35
+ typename Check0, typename Check1, typename Action0, typename Action1>
36
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
37
+ Check0 check0, Check1 check1, Action0 action0, Action1 action1) {
38
+ if (check0(input)) return action0(action_arg);
39
+ if (check1(input)) return action1(action_arg);
40
+ return action_fail(action_arg);
41
+ }
42
+
43
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
44
+ typename Check0, typename Check1, typename Check2, typename Action0,
45
+ typename Action1, typename Action2>
46
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
47
+ Check0 check0, Check1 check1, Check2 check2, Action0 action0,
48
+ Action1 action1, Action2 action2) {
49
+ if (check0(input)) return action0(action_arg);
50
+ if (check1(input)) return action1(action_arg);
51
+ if (check2(input)) return action2(action_arg);
52
+ return action_fail(action_arg);
53
+ }
54
+
55
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
56
+ typename Check0, typename Check1, typename Check2, typename Check3,
57
+ typename Action0, typename Action1, typename Action2,
58
+ typename Action3>
59
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
60
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
61
+ Action0 action0, Action1 action1, Action2 action2,
62
+ Action3 action3) {
63
+ if (check0(input)) return action0(action_arg);
64
+ if (check1(input)) return action1(action_arg);
65
+ if (check2(input)) return action2(action_arg);
66
+ if (check3(input)) return action3(action_arg);
67
+ return action_fail(action_arg);
68
+ }
69
+
70
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
71
+ typename Check0, typename Check1, typename Check2, typename Check3,
72
+ typename Check4, typename Action0, typename Action1, typename Action2,
73
+ typename Action3, typename Action4>
74
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
75
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
76
+ Check4 check4, Action0 action0, Action1 action1, Action2 action2,
77
+ Action3 action3, Action4 action4) {
78
+ if (check0(input)) return action0(action_arg);
79
+ if (check1(input)) return action1(action_arg);
80
+ if (check2(input)) return action2(action_arg);
81
+ if (check3(input)) return action3(action_arg);
82
+ if (check4(input)) return action4(action_arg);
83
+ return action_fail(action_arg);
84
+ }
85
+
86
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
87
+ typename Check0, typename Check1, typename Check2, typename Check3,
88
+ typename Check4, typename Check5, typename Action0, typename Action1,
89
+ typename Action2, typename Action3, typename Action4,
90
+ typename Action5>
91
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
92
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
93
+ Check4 check4, Check5 check5, Action0 action0, Action1 action1,
94
+ Action2 action2, Action3 action3, Action4 action4,
95
+ Action5 action5) {
96
+ if (check0(input)) return action0(action_arg);
97
+ if (check1(input)) return action1(action_arg);
98
+ if (check2(input)) return action2(action_arg);
99
+ if (check3(input)) return action3(action_arg);
100
+ if (check4(input)) return action4(action_arg);
101
+ if (check5(input)) return action5(action_arg);
102
+ return action_fail(action_arg);
103
+ }
104
+
105
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
106
+ typename Check0, typename Check1, typename Check2, typename Check3,
107
+ typename Check4, typename Check5, typename Check6, typename Action0,
108
+ typename Action1, typename Action2, typename Action3,
109
+ typename Action4, typename Action5, typename Action6>
110
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
111
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
112
+ Check4 check4, Check5 check5, Check6 check6, Action0 action0,
113
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
114
+ Action5 action5, Action6 action6) {
115
+ if (check0(input)) return action0(action_arg);
116
+ if (check1(input)) return action1(action_arg);
117
+ if (check2(input)) return action2(action_arg);
118
+ if (check3(input)) return action3(action_arg);
119
+ if (check4(input)) return action4(action_arg);
120
+ if (check5(input)) return action5(action_arg);
121
+ if (check6(input)) return action6(action_arg);
122
+ return action_fail(action_arg);
123
+ }
124
+
125
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
126
+ typename Check0, typename Check1, typename Check2, typename Check3,
127
+ typename Check4, typename Check5, typename Check6, typename Check7,
128
+ typename Action0, typename Action1, typename Action2,
129
+ typename Action3, typename Action4, typename Action5,
130
+ typename Action6, typename Action7>
131
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
132
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
133
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
134
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
135
+ Action4 action4, Action5 action5, Action6 action6,
136
+ Action7 action7) {
137
+ if (check0(input)) return action0(action_arg);
138
+ if (check1(input)) return action1(action_arg);
139
+ if (check2(input)) return action2(action_arg);
140
+ if (check3(input)) return action3(action_arg);
141
+ if (check4(input)) return action4(action_arg);
142
+ if (check5(input)) return action5(action_arg);
143
+ if (check6(input)) return action6(action_arg);
144
+ if (check7(input)) return action7(action_arg);
145
+ return action_fail(action_arg);
146
+ }
147
+
148
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
149
+ typename Check0, typename Check1, typename Check2, typename Check3,
150
+ typename Check4, typename Check5, typename Check6, typename Check7,
151
+ typename Check8, typename Action0, typename Action1, typename Action2,
152
+ typename Action3, typename Action4, typename Action5,
153
+ typename Action6, typename Action7, typename Action8>
154
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
155
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
156
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
157
+ Check8 check8, Action0 action0, Action1 action1, Action2 action2,
158
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
159
+ Action7 action7, Action8 action8) {
160
+ if (check0(input)) return action0(action_arg);
161
+ if (check1(input)) return action1(action_arg);
162
+ if (check2(input)) return action2(action_arg);
163
+ if (check3(input)) return action3(action_arg);
164
+ if (check4(input)) return action4(action_arg);
165
+ if (check5(input)) return action5(action_arg);
166
+ if (check6(input)) return action6(action_arg);
167
+ if (check7(input)) return action7(action_arg);
168
+ if (check8(input)) return action8(action_arg);
169
+ return action_fail(action_arg);
170
+ }
171
+
172
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
173
+ typename Check0, typename Check1, typename Check2, typename Check3,
174
+ typename Check4, typename Check5, typename Check6, typename Check7,
175
+ typename Check8, typename Check9, typename Action0, typename Action1,
176
+ typename Action2, typename Action3, typename Action4,
177
+ typename Action5, typename Action6, typename Action7,
178
+ typename Action8, typename Action9>
179
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
180
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
181
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
182
+ Check8 check8, Check9 check9, Action0 action0, Action1 action1,
183
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
184
+ Action6 action6, Action7 action7, Action8 action8,
185
+ Action9 action9) {
186
+ if (check0(input)) return action0(action_arg);
187
+ if (check1(input)) return action1(action_arg);
188
+ if (check2(input)) return action2(action_arg);
189
+ if (check3(input)) return action3(action_arg);
190
+ if (check4(input)) return action4(action_arg);
191
+ if (check5(input)) return action5(action_arg);
192
+ if (check6(input)) return action6(action_arg);
193
+ if (check7(input)) return action7(action_arg);
194
+ if (check8(input)) return action8(action_arg);
195
+ if (check9(input)) return action9(action_arg);
196
+ return action_fail(action_arg);
197
+ }
198
+
199
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
200
+ typename Check0, typename Check1, typename Check2, typename Check3,
201
+ typename Check4, typename Check5, typename Check6, typename Check7,
202
+ typename Check8, typename Check9, typename Check10, typename Action0,
203
+ typename Action1, typename Action2, typename Action3,
204
+ typename Action4, typename Action5, typename Action6,
205
+ typename Action7, typename Action8, typename Action9,
206
+ typename Action10>
207
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
208
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
209
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
210
+ Check8 check8, Check9 check9, Check10 check10, Action0 action0,
211
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
212
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
213
+ Action9 action9, Action10 action10) {
214
+ if (check0(input)) return action0(action_arg);
215
+ if (check1(input)) return action1(action_arg);
216
+ if (check2(input)) return action2(action_arg);
217
+ if (check3(input)) return action3(action_arg);
218
+ if (check4(input)) return action4(action_arg);
219
+ if (check5(input)) return action5(action_arg);
220
+ if (check6(input)) return action6(action_arg);
221
+ if (check7(input)) return action7(action_arg);
222
+ if (check8(input)) return action8(action_arg);
223
+ if (check9(input)) return action9(action_arg);
224
+ if (check10(input)) return action10(action_arg);
225
+ return action_fail(action_arg);
226
+ }
227
+
228
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
229
+ typename Check0, typename Check1, typename Check2, typename Check3,
230
+ typename Check4, typename Check5, typename Check6, typename Check7,
231
+ typename Check8, typename Check9, typename Check10, typename Check11,
232
+ typename Action0, typename Action1, typename Action2,
233
+ typename Action3, typename Action4, typename Action5,
234
+ typename Action6, typename Action7, typename Action8,
235
+ typename Action9, typename Action10, typename Action11>
236
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
237
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
238
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
239
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
240
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
241
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
242
+ Action8 action8, Action9 action9, Action10 action10,
243
+ Action11 action11) {
244
+ if (check0(input)) return action0(action_arg);
245
+ if (check1(input)) return action1(action_arg);
246
+ if (check2(input)) return action2(action_arg);
247
+ if (check3(input)) return action3(action_arg);
248
+ if (check4(input)) return action4(action_arg);
249
+ if (check5(input)) return action5(action_arg);
250
+ if (check6(input)) return action6(action_arg);
251
+ if (check7(input)) return action7(action_arg);
252
+ if (check8(input)) return action8(action_arg);
253
+ if (check9(input)) return action9(action_arg);
254
+ if (check10(input)) return action10(action_arg);
255
+ if (check11(input)) return action11(action_arg);
256
+ return action_fail(action_arg);
257
+ }
258
+
259
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
260
+ typename Check0, typename Check1, typename Check2, typename Check3,
261
+ typename Check4, typename Check5, typename Check6, typename Check7,
262
+ typename Check8, typename Check9, typename Check10, typename Check11,
263
+ typename Check12, typename Action0, typename Action1,
264
+ typename Action2, typename Action3, typename Action4,
265
+ typename Action5, typename Action6, typename Action7,
266
+ typename Action8, typename Action9, typename Action10,
267
+ typename Action11, typename Action12>
268
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
269
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
270
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
271
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
272
+ Check12 check12, Action0 action0, Action1 action1, Action2 action2,
273
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
274
+ Action7 action7, Action8 action8, Action9 action9,
275
+ Action10 action10, Action11 action11, Action12 action12) {
276
+ if (check0(input)) return action0(action_arg);
277
+ if (check1(input)) return action1(action_arg);
278
+ if (check2(input)) return action2(action_arg);
279
+ if (check3(input)) return action3(action_arg);
280
+ if (check4(input)) return action4(action_arg);
281
+ if (check5(input)) return action5(action_arg);
282
+ if (check6(input)) return action6(action_arg);
283
+ if (check7(input)) return action7(action_arg);
284
+ if (check8(input)) return action8(action_arg);
285
+ if (check9(input)) return action9(action_arg);
286
+ if (check10(input)) return action10(action_arg);
287
+ if (check11(input)) return action11(action_arg);
288
+ if (check12(input)) return action12(action_arg);
289
+ return action_fail(action_arg);
290
+ }
291
+
292
+ template <
293
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
294
+ typename Check1, typename Check2, typename Check3, typename Check4,
295
+ typename Check5, typename Check6, typename Check7, typename Check8,
296
+ typename Check9, typename Check10, typename Check11, typename Check12,
297
+ typename Check13, typename Action0, typename Action1, typename Action2,
298
+ typename Action3, typename Action4, typename Action5, typename Action6,
299
+ typename Action7, typename Action8, typename Action9, typename Action10,
300
+ typename Action11, typename Action12, typename Action13>
301
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
302
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
303
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
304
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
305
+ Check12 check12, Check13 check13, Action0 action0, Action1 action1,
306
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
307
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
308
+ Action10 action10, Action11 action11, Action12 action12,
309
+ Action13 action13) {
310
+ if (check0(input)) return action0(action_arg);
311
+ if (check1(input)) return action1(action_arg);
312
+ if (check2(input)) return action2(action_arg);
313
+ if (check3(input)) return action3(action_arg);
314
+ if (check4(input)) return action4(action_arg);
315
+ if (check5(input)) return action5(action_arg);
316
+ if (check6(input)) return action6(action_arg);
317
+ if (check7(input)) return action7(action_arg);
318
+ if (check8(input)) return action8(action_arg);
319
+ if (check9(input)) return action9(action_arg);
320
+ if (check10(input)) return action10(action_arg);
321
+ if (check11(input)) return action11(action_arg);
322
+ if (check12(input)) return action12(action_arg);
323
+ if (check13(input)) return action13(action_arg);
324
+ return action_fail(action_arg);
325
+ }
326
+
327
+ template <typename CheckArg, typename ActionArg, typename ActionFail,
328
+ typename Check0, typename Check1, typename Check2, typename Check3,
329
+ typename Check4, typename Check5, typename Check6, typename Check7,
330
+ typename Check8, typename Check9, typename Check10, typename Check11,
331
+ typename Check12, typename Check13, typename Check14,
332
+ typename Action0, typename Action1, typename Action2,
333
+ typename Action3, typename Action4, typename Action5,
334
+ typename Action6, typename Action7, typename Action8,
335
+ typename Action9, typename Action10, typename Action11,
336
+ typename Action12, typename Action13, typename Action14>
337
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
338
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
339
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
340
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
341
+ Check12 check12, Check13 check13, Check14 check14, Action0 action0,
342
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
343
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
344
+ Action9 action9, Action10 action10, Action11 action11,
345
+ Action12 action12, Action13 action13, Action14 action14) {
346
+ if (check0(input)) return action0(action_arg);
347
+ if (check1(input)) return action1(action_arg);
348
+ if (check2(input)) return action2(action_arg);
349
+ if (check3(input)) return action3(action_arg);
350
+ if (check4(input)) return action4(action_arg);
351
+ if (check5(input)) return action5(action_arg);
352
+ if (check6(input)) return action6(action_arg);
353
+ if (check7(input)) return action7(action_arg);
354
+ if (check8(input)) return action8(action_arg);
355
+ if (check9(input)) return action9(action_arg);
356
+ if (check10(input)) return action10(action_arg);
357
+ if (check11(input)) return action11(action_arg);
358
+ if (check12(input)) return action12(action_arg);
359
+ if (check13(input)) return action13(action_arg);
360
+ if (check14(input)) return action14(action_arg);
361
+ return action_fail(action_arg);
362
+ }
363
+
364
+ template <
365
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
366
+ typename Check1, typename Check2, typename Check3, typename Check4,
367
+ typename Check5, typename Check6, typename Check7, typename Check8,
368
+ typename Check9, typename Check10, typename Check11, typename Check12,
369
+ typename Check13, typename Check14, typename Check15, typename Action0,
370
+ typename Action1, typename Action2, typename Action3, typename Action4,
371
+ typename Action5, typename Action6, typename Action7, typename Action8,
372
+ typename Action9, typename Action10, typename Action11, typename Action12,
373
+ typename Action13, typename Action14, typename Action15>
374
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
375
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
376
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
377
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
378
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
379
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
380
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
381
+ Action8 action8, Action9 action9, Action10 action10,
382
+ Action11 action11, Action12 action12, Action13 action13,
383
+ Action14 action14, Action15 action15) {
384
+ if (check0(input)) return action0(action_arg);
385
+ if (check1(input)) return action1(action_arg);
386
+ if (check2(input)) return action2(action_arg);
387
+ if (check3(input)) return action3(action_arg);
388
+ if (check4(input)) return action4(action_arg);
389
+ if (check5(input)) return action5(action_arg);
390
+ if (check6(input)) return action6(action_arg);
391
+ if (check7(input)) return action7(action_arg);
392
+ if (check8(input)) return action8(action_arg);
393
+ if (check9(input)) return action9(action_arg);
394
+ if (check10(input)) return action10(action_arg);
395
+ if (check11(input)) return action11(action_arg);
396
+ if (check12(input)) return action12(action_arg);
397
+ if (check13(input)) return action13(action_arg);
398
+ if (check14(input)) return action14(action_arg);
399
+ if (check15(input)) return action15(action_arg);
400
+ return action_fail(action_arg);
401
+ }
402
+
403
+ template <
404
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
405
+ typename Check1, typename Check2, typename Check3, typename Check4,
406
+ typename Check5, typename Check6, typename Check7, typename Check8,
407
+ typename Check9, typename Check10, typename Check11, typename Check12,
408
+ typename Check13, typename Check14, typename Check15, typename Check16,
409
+ typename Action0, typename Action1, typename Action2, typename Action3,
410
+ typename Action4, typename Action5, typename Action6, typename Action7,
411
+ typename Action8, typename Action9, typename Action10, typename Action11,
412
+ typename Action12, typename Action13, typename Action14, typename Action15,
413
+ typename Action16>
414
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
415
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
416
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
417
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
418
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
419
+ Check16 check16, Action0 action0, Action1 action1, Action2 action2,
420
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
421
+ Action7 action7, Action8 action8, Action9 action9,
422
+ Action10 action10, Action11 action11, Action12 action12,
423
+ Action13 action13, Action14 action14, Action15 action15,
424
+ Action16 action16) {
425
+ if (check0(input)) return action0(action_arg);
426
+ if (check1(input)) return action1(action_arg);
427
+ if (check2(input)) return action2(action_arg);
428
+ if (check3(input)) return action3(action_arg);
429
+ if (check4(input)) return action4(action_arg);
430
+ if (check5(input)) return action5(action_arg);
431
+ if (check6(input)) return action6(action_arg);
432
+ if (check7(input)) return action7(action_arg);
433
+ if (check8(input)) return action8(action_arg);
434
+ if (check9(input)) return action9(action_arg);
435
+ if (check10(input)) return action10(action_arg);
436
+ if (check11(input)) return action11(action_arg);
437
+ if (check12(input)) return action12(action_arg);
438
+ if (check13(input)) return action13(action_arg);
439
+ if (check14(input)) return action14(action_arg);
440
+ if (check15(input)) return action15(action_arg);
441
+ if (check16(input)) return action16(action_arg);
442
+ return action_fail(action_arg);
443
+ }
444
+
445
+ template <
446
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
447
+ typename Check1, typename Check2, typename Check3, typename Check4,
448
+ typename Check5, typename Check6, typename Check7, typename Check8,
449
+ typename Check9, typename Check10, typename Check11, typename Check12,
450
+ typename Check13, typename Check14, typename Check15, typename Check16,
451
+ typename Check17, typename Action0, typename Action1, typename Action2,
452
+ typename Action3, typename Action4, typename Action5, typename Action6,
453
+ typename Action7, typename Action8, typename Action9, typename Action10,
454
+ typename Action11, typename Action12, typename Action13, typename Action14,
455
+ typename Action15, typename Action16, typename Action17>
456
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
457
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
458
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
459
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
460
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
461
+ Check16 check16, Check17 check17, Action0 action0, Action1 action1,
462
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
463
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
464
+ Action10 action10, Action11 action11, Action12 action12,
465
+ Action13 action13, Action14 action14, Action15 action15,
466
+ Action16 action16, Action17 action17) {
467
+ if (check0(input)) return action0(action_arg);
468
+ if (check1(input)) return action1(action_arg);
469
+ if (check2(input)) return action2(action_arg);
470
+ if (check3(input)) return action3(action_arg);
471
+ if (check4(input)) return action4(action_arg);
472
+ if (check5(input)) return action5(action_arg);
473
+ if (check6(input)) return action6(action_arg);
474
+ if (check7(input)) return action7(action_arg);
475
+ if (check8(input)) return action8(action_arg);
476
+ if (check9(input)) return action9(action_arg);
477
+ if (check10(input)) return action10(action_arg);
478
+ if (check11(input)) return action11(action_arg);
479
+ if (check12(input)) return action12(action_arg);
480
+ if (check13(input)) return action13(action_arg);
481
+ if (check14(input)) return action14(action_arg);
482
+ if (check15(input)) return action15(action_arg);
483
+ if (check16(input)) return action16(action_arg);
484
+ if (check17(input)) return action17(action_arg);
485
+ return action_fail(action_arg);
486
+ }
487
+
488
+ template <
489
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
490
+ typename Check1, typename Check2, typename Check3, typename Check4,
491
+ typename Check5, typename Check6, typename Check7, typename Check8,
492
+ typename Check9, typename Check10, typename Check11, typename Check12,
493
+ typename Check13, typename Check14, typename Check15, typename Check16,
494
+ typename Check17, typename Check18, typename Action0, typename Action1,
495
+ typename Action2, typename Action3, typename Action4, typename Action5,
496
+ typename Action6, typename Action7, typename Action8, typename Action9,
497
+ typename Action10, typename Action11, typename Action12, typename Action13,
498
+ typename Action14, typename Action15, typename Action16, typename Action17,
499
+ typename Action18>
500
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
501
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
502
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
503
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
504
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
505
+ Check16 check16, Check17 check17, Check18 check18, Action0 action0,
506
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
507
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
508
+ Action9 action9, Action10 action10, Action11 action11,
509
+ Action12 action12, Action13 action13, Action14 action14,
510
+ Action15 action15, Action16 action16, Action17 action17,
511
+ Action18 action18) {
512
+ if (check0(input)) return action0(action_arg);
513
+ if (check1(input)) return action1(action_arg);
514
+ if (check2(input)) return action2(action_arg);
515
+ if (check3(input)) return action3(action_arg);
516
+ if (check4(input)) return action4(action_arg);
517
+ if (check5(input)) return action5(action_arg);
518
+ if (check6(input)) return action6(action_arg);
519
+ if (check7(input)) return action7(action_arg);
520
+ if (check8(input)) return action8(action_arg);
521
+ if (check9(input)) return action9(action_arg);
522
+ if (check10(input)) return action10(action_arg);
523
+ if (check11(input)) return action11(action_arg);
524
+ if (check12(input)) return action12(action_arg);
525
+ if (check13(input)) return action13(action_arg);
526
+ if (check14(input)) return action14(action_arg);
527
+ if (check15(input)) return action15(action_arg);
528
+ if (check16(input)) return action16(action_arg);
529
+ if (check17(input)) return action17(action_arg);
530
+ if (check18(input)) return action18(action_arg);
531
+ return action_fail(action_arg);
532
+ }
533
+
534
+ template <
535
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
536
+ typename Check1, typename Check2, typename Check3, typename Check4,
537
+ typename Check5, typename Check6, typename Check7, typename Check8,
538
+ typename Check9, typename Check10, typename Check11, typename Check12,
539
+ typename Check13, typename Check14, typename Check15, typename Check16,
540
+ typename Check17, typename Check18, typename Check19, typename Action0,
541
+ typename Action1, typename Action2, typename Action3, typename Action4,
542
+ typename Action5, typename Action6, typename Action7, typename Action8,
543
+ typename Action9, typename Action10, typename Action11, typename Action12,
544
+ typename Action13, typename Action14, typename Action15, typename Action16,
545
+ typename Action17, typename Action18, typename Action19>
546
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
547
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
548
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
549
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
550
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
551
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
552
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
553
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
554
+ Action8 action8, Action9 action9, Action10 action10,
555
+ Action11 action11, Action12 action12, Action13 action13,
556
+ Action14 action14, Action15 action15, Action16 action16,
557
+ Action17 action17, Action18 action18, Action19 action19) {
558
+ if (check0(input)) return action0(action_arg);
559
+ if (check1(input)) return action1(action_arg);
560
+ if (check2(input)) return action2(action_arg);
561
+ if (check3(input)) return action3(action_arg);
562
+ if (check4(input)) return action4(action_arg);
563
+ if (check5(input)) return action5(action_arg);
564
+ if (check6(input)) return action6(action_arg);
565
+ if (check7(input)) return action7(action_arg);
566
+ if (check8(input)) return action8(action_arg);
567
+ if (check9(input)) return action9(action_arg);
568
+ if (check10(input)) return action10(action_arg);
569
+ if (check11(input)) return action11(action_arg);
570
+ if (check12(input)) return action12(action_arg);
571
+ if (check13(input)) return action13(action_arg);
572
+ if (check14(input)) return action14(action_arg);
573
+ if (check15(input)) return action15(action_arg);
574
+ if (check16(input)) return action16(action_arg);
575
+ if (check17(input)) return action17(action_arg);
576
+ if (check18(input)) return action18(action_arg);
577
+ if (check19(input)) return action19(action_arg);
578
+ return action_fail(action_arg);
579
+ }
580
+
581
+ template <
582
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
583
+ typename Check1, typename Check2, typename Check3, typename Check4,
584
+ typename Check5, typename Check6, typename Check7, typename Check8,
585
+ typename Check9, typename Check10, typename Check11, typename Check12,
586
+ typename Check13, typename Check14, typename Check15, typename Check16,
587
+ typename Check17, typename Check18, typename Check19, typename Check20,
588
+ typename Action0, typename Action1, typename Action2, typename Action3,
589
+ typename Action4, typename Action5, typename Action6, typename Action7,
590
+ typename Action8, typename Action9, typename Action10, typename Action11,
591
+ typename Action12, typename Action13, typename Action14, typename Action15,
592
+ typename Action16, typename Action17, typename Action18, typename Action19,
593
+ typename Action20>
594
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
595
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
596
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
597
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
598
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
599
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
600
+ Check20 check20, Action0 action0, Action1 action1, Action2 action2,
601
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
602
+ Action7 action7, Action8 action8, Action9 action9,
603
+ Action10 action10, Action11 action11, Action12 action12,
604
+ Action13 action13, Action14 action14, Action15 action15,
605
+ Action16 action16, Action17 action17, Action18 action18,
606
+ Action19 action19, Action20 action20) {
607
+ if (check0(input)) return action0(action_arg);
608
+ if (check1(input)) return action1(action_arg);
609
+ if (check2(input)) return action2(action_arg);
610
+ if (check3(input)) return action3(action_arg);
611
+ if (check4(input)) return action4(action_arg);
612
+ if (check5(input)) return action5(action_arg);
613
+ if (check6(input)) return action6(action_arg);
614
+ if (check7(input)) return action7(action_arg);
615
+ if (check8(input)) return action8(action_arg);
616
+ if (check9(input)) return action9(action_arg);
617
+ if (check10(input)) return action10(action_arg);
618
+ if (check11(input)) return action11(action_arg);
619
+ if (check12(input)) return action12(action_arg);
620
+ if (check13(input)) return action13(action_arg);
621
+ if (check14(input)) return action14(action_arg);
622
+ if (check15(input)) return action15(action_arg);
623
+ if (check16(input)) return action16(action_arg);
624
+ if (check17(input)) return action17(action_arg);
625
+ if (check18(input)) return action18(action_arg);
626
+ if (check19(input)) return action19(action_arg);
627
+ if (check20(input)) return action20(action_arg);
628
+ return action_fail(action_arg);
629
+ }
630
+
631
+ template <
632
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
633
+ typename Check1, typename Check2, typename Check3, typename Check4,
634
+ typename Check5, typename Check6, typename Check7, typename Check8,
635
+ typename Check9, typename Check10, typename Check11, typename Check12,
636
+ typename Check13, typename Check14, typename Check15, typename Check16,
637
+ typename Check17, typename Check18, typename Check19, typename Check20,
638
+ typename Check21, typename Action0, typename Action1, typename Action2,
639
+ typename Action3, typename Action4, typename Action5, typename Action6,
640
+ typename Action7, typename Action8, typename Action9, typename Action10,
641
+ typename Action11, typename Action12, typename Action13, typename Action14,
642
+ typename Action15, typename Action16, typename Action17, typename Action18,
643
+ typename Action19, typename Action20, typename Action21>
644
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
645
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
646
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
647
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
648
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
649
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
650
+ Check20 check20, Check21 check21, Action0 action0, Action1 action1,
651
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
652
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
653
+ Action10 action10, Action11 action11, Action12 action12,
654
+ Action13 action13, Action14 action14, Action15 action15,
655
+ Action16 action16, Action17 action17, Action18 action18,
656
+ Action19 action19, Action20 action20, Action21 action21) {
657
+ if (check0(input)) return action0(action_arg);
658
+ if (check1(input)) return action1(action_arg);
659
+ if (check2(input)) return action2(action_arg);
660
+ if (check3(input)) return action3(action_arg);
661
+ if (check4(input)) return action4(action_arg);
662
+ if (check5(input)) return action5(action_arg);
663
+ if (check6(input)) return action6(action_arg);
664
+ if (check7(input)) return action7(action_arg);
665
+ if (check8(input)) return action8(action_arg);
666
+ if (check9(input)) return action9(action_arg);
667
+ if (check10(input)) return action10(action_arg);
668
+ if (check11(input)) return action11(action_arg);
669
+ if (check12(input)) return action12(action_arg);
670
+ if (check13(input)) return action13(action_arg);
671
+ if (check14(input)) return action14(action_arg);
672
+ if (check15(input)) return action15(action_arg);
673
+ if (check16(input)) return action16(action_arg);
674
+ if (check17(input)) return action17(action_arg);
675
+ if (check18(input)) return action18(action_arg);
676
+ if (check19(input)) return action19(action_arg);
677
+ if (check20(input)) return action20(action_arg);
678
+ if (check21(input)) return action21(action_arg);
679
+ return action_fail(action_arg);
680
+ }
681
+
682
+ template <
683
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
684
+ typename Check1, typename Check2, typename Check3, typename Check4,
685
+ typename Check5, typename Check6, typename Check7, typename Check8,
686
+ typename Check9, typename Check10, typename Check11, typename Check12,
687
+ typename Check13, typename Check14, typename Check15, typename Check16,
688
+ typename Check17, typename Check18, typename Check19, typename Check20,
689
+ typename Check21, typename Check22, typename Action0, typename Action1,
690
+ typename Action2, typename Action3, typename Action4, typename Action5,
691
+ typename Action6, typename Action7, typename Action8, typename Action9,
692
+ typename Action10, typename Action11, typename Action12, typename Action13,
693
+ typename Action14, typename Action15, typename Action16, typename Action17,
694
+ typename Action18, typename Action19, typename Action20, typename Action21,
695
+ typename Action22>
696
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
697
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
698
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
699
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
700
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
701
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
702
+ Check20 check20, Check21 check21, Check22 check22, Action0 action0,
703
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
704
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
705
+ Action9 action9, Action10 action10, Action11 action11,
706
+ Action12 action12, Action13 action13, Action14 action14,
707
+ Action15 action15, Action16 action16, Action17 action17,
708
+ Action18 action18, Action19 action19, Action20 action20,
709
+ Action21 action21, Action22 action22) {
710
+ if (check0(input)) return action0(action_arg);
711
+ if (check1(input)) return action1(action_arg);
712
+ if (check2(input)) return action2(action_arg);
713
+ if (check3(input)) return action3(action_arg);
714
+ if (check4(input)) return action4(action_arg);
715
+ if (check5(input)) return action5(action_arg);
716
+ if (check6(input)) return action6(action_arg);
717
+ if (check7(input)) return action7(action_arg);
718
+ if (check8(input)) return action8(action_arg);
719
+ if (check9(input)) return action9(action_arg);
720
+ if (check10(input)) return action10(action_arg);
721
+ if (check11(input)) return action11(action_arg);
722
+ if (check12(input)) return action12(action_arg);
723
+ if (check13(input)) return action13(action_arg);
724
+ if (check14(input)) return action14(action_arg);
725
+ if (check15(input)) return action15(action_arg);
726
+ if (check16(input)) return action16(action_arg);
727
+ if (check17(input)) return action17(action_arg);
728
+ if (check18(input)) return action18(action_arg);
729
+ if (check19(input)) return action19(action_arg);
730
+ if (check20(input)) return action20(action_arg);
731
+ if (check21(input)) return action21(action_arg);
732
+ if (check22(input)) return action22(action_arg);
733
+ return action_fail(action_arg);
734
+ }
735
+
736
+ template <
737
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
738
+ typename Check1, typename Check2, typename Check3, typename Check4,
739
+ typename Check5, typename Check6, typename Check7, typename Check8,
740
+ typename Check9, typename Check10, typename Check11, typename Check12,
741
+ typename Check13, typename Check14, typename Check15, typename Check16,
742
+ typename Check17, typename Check18, typename Check19, typename Check20,
743
+ typename Check21, typename Check22, typename Check23, typename Action0,
744
+ typename Action1, typename Action2, typename Action3, typename Action4,
745
+ typename Action5, typename Action6, typename Action7, typename Action8,
746
+ typename Action9, typename Action10, typename Action11, typename Action12,
747
+ typename Action13, typename Action14, typename Action15, typename Action16,
748
+ typename Action17, typename Action18, typename Action19, typename Action20,
749
+ typename Action21, typename Action22, typename Action23>
750
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
751
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
752
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
753
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
754
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
755
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
756
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
757
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
758
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
759
+ Action8 action8, Action9 action9, Action10 action10,
760
+ Action11 action11, Action12 action12, Action13 action13,
761
+ Action14 action14, Action15 action15, Action16 action16,
762
+ Action17 action17, Action18 action18, Action19 action19,
763
+ Action20 action20, Action21 action21, Action22 action22,
764
+ Action23 action23) {
765
+ if (check0(input)) return action0(action_arg);
766
+ if (check1(input)) return action1(action_arg);
767
+ if (check2(input)) return action2(action_arg);
768
+ if (check3(input)) return action3(action_arg);
769
+ if (check4(input)) return action4(action_arg);
770
+ if (check5(input)) return action5(action_arg);
771
+ if (check6(input)) return action6(action_arg);
772
+ if (check7(input)) return action7(action_arg);
773
+ if (check8(input)) return action8(action_arg);
774
+ if (check9(input)) return action9(action_arg);
775
+ if (check10(input)) return action10(action_arg);
776
+ if (check11(input)) return action11(action_arg);
777
+ if (check12(input)) return action12(action_arg);
778
+ if (check13(input)) return action13(action_arg);
779
+ if (check14(input)) return action14(action_arg);
780
+ if (check15(input)) return action15(action_arg);
781
+ if (check16(input)) return action16(action_arg);
782
+ if (check17(input)) return action17(action_arg);
783
+ if (check18(input)) return action18(action_arg);
784
+ if (check19(input)) return action19(action_arg);
785
+ if (check20(input)) return action20(action_arg);
786
+ if (check21(input)) return action21(action_arg);
787
+ if (check22(input)) return action22(action_arg);
788
+ if (check23(input)) return action23(action_arg);
789
+ return action_fail(action_arg);
790
+ }
791
+
792
+ template <
793
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
794
+ typename Check1, typename Check2, typename Check3, typename Check4,
795
+ typename Check5, typename Check6, typename Check7, typename Check8,
796
+ typename Check9, typename Check10, typename Check11, typename Check12,
797
+ typename Check13, typename Check14, typename Check15, typename Check16,
798
+ typename Check17, typename Check18, typename Check19, typename Check20,
799
+ typename Check21, typename Check22, typename Check23, typename Check24,
800
+ typename Action0, typename Action1, typename Action2, typename Action3,
801
+ typename Action4, typename Action5, typename Action6, typename Action7,
802
+ typename Action8, typename Action9, typename Action10, typename Action11,
803
+ typename Action12, typename Action13, typename Action14, typename Action15,
804
+ typename Action16, typename Action17, typename Action18, typename Action19,
805
+ typename Action20, typename Action21, typename Action22, typename Action23,
806
+ typename Action24>
807
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
808
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
809
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
810
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
811
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
812
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
813
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
814
+ Check24 check24, Action0 action0, Action1 action1, Action2 action2,
815
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
816
+ Action7 action7, Action8 action8, Action9 action9,
817
+ Action10 action10, Action11 action11, Action12 action12,
818
+ Action13 action13, Action14 action14, Action15 action15,
819
+ Action16 action16, Action17 action17, Action18 action18,
820
+ Action19 action19, Action20 action20, Action21 action21,
821
+ Action22 action22, Action23 action23, Action24 action24) {
822
+ if (check0(input)) return action0(action_arg);
823
+ if (check1(input)) return action1(action_arg);
824
+ if (check2(input)) return action2(action_arg);
825
+ if (check3(input)) return action3(action_arg);
826
+ if (check4(input)) return action4(action_arg);
827
+ if (check5(input)) return action5(action_arg);
828
+ if (check6(input)) return action6(action_arg);
829
+ if (check7(input)) return action7(action_arg);
830
+ if (check8(input)) return action8(action_arg);
831
+ if (check9(input)) return action9(action_arg);
832
+ if (check10(input)) return action10(action_arg);
833
+ if (check11(input)) return action11(action_arg);
834
+ if (check12(input)) return action12(action_arg);
835
+ if (check13(input)) return action13(action_arg);
836
+ if (check14(input)) return action14(action_arg);
837
+ if (check15(input)) return action15(action_arg);
838
+ if (check16(input)) return action16(action_arg);
839
+ if (check17(input)) return action17(action_arg);
840
+ if (check18(input)) return action18(action_arg);
841
+ if (check19(input)) return action19(action_arg);
842
+ if (check20(input)) return action20(action_arg);
843
+ if (check21(input)) return action21(action_arg);
844
+ if (check22(input)) return action22(action_arg);
845
+ if (check23(input)) return action23(action_arg);
846
+ if (check24(input)) return action24(action_arg);
847
+ return action_fail(action_arg);
848
+ }
849
+
850
+ template <
851
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
852
+ typename Check1, typename Check2, typename Check3, typename Check4,
853
+ typename Check5, typename Check6, typename Check7, typename Check8,
854
+ typename Check9, typename Check10, typename Check11, typename Check12,
855
+ typename Check13, typename Check14, typename Check15, typename Check16,
856
+ typename Check17, typename Check18, typename Check19, typename Check20,
857
+ typename Check21, typename Check22, typename Check23, typename Check24,
858
+ typename Check25, typename Action0, typename Action1, typename Action2,
859
+ typename Action3, typename Action4, typename Action5, typename Action6,
860
+ typename Action7, typename Action8, typename Action9, typename Action10,
861
+ typename Action11, typename Action12, typename Action13, typename Action14,
862
+ typename Action15, typename Action16, typename Action17, typename Action18,
863
+ typename Action19, typename Action20, typename Action21, typename Action22,
864
+ typename Action23, typename Action24, typename Action25>
865
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
866
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
867
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
868
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
869
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
870
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
871
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
872
+ Check24 check24, Check25 check25, Action0 action0, Action1 action1,
873
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
874
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
875
+ Action10 action10, Action11 action11, Action12 action12,
876
+ Action13 action13, Action14 action14, Action15 action15,
877
+ Action16 action16, Action17 action17, Action18 action18,
878
+ Action19 action19, Action20 action20, Action21 action21,
879
+ Action22 action22, Action23 action23, Action24 action24,
880
+ Action25 action25) {
881
+ if (check0(input)) return action0(action_arg);
882
+ if (check1(input)) return action1(action_arg);
883
+ if (check2(input)) return action2(action_arg);
884
+ if (check3(input)) return action3(action_arg);
885
+ if (check4(input)) return action4(action_arg);
886
+ if (check5(input)) return action5(action_arg);
887
+ if (check6(input)) return action6(action_arg);
888
+ if (check7(input)) return action7(action_arg);
889
+ if (check8(input)) return action8(action_arg);
890
+ if (check9(input)) return action9(action_arg);
891
+ if (check10(input)) return action10(action_arg);
892
+ if (check11(input)) return action11(action_arg);
893
+ if (check12(input)) return action12(action_arg);
894
+ if (check13(input)) return action13(action_arg);
895
+ if (check14(input)) return action14(action_arg);
896
+ if (check15(input)) return action15(action_arg);
897
+ if (check16(input)) return action16(action_arg);
898
+ if (check17(input)) return action17(action_arg);
899
+ if (check18(input)) return action18(action_arg);
900
+ if (check19(input)) return action19(action_arg);
901
+ if (check20(input)) return action20(action_arg);
902
+ if (check21(input)) return action21(action_arg);
903
+ if (check22(input)) return action22(action_arg);
904
+ if (check23(input)) return action23(action_arg);
905
+ if (check24(input)) return action24(action_arg);
906
+ if (check25(input)) return action25(action_arg);
907
+ return action_fail(action_arg);
908
+ }
909
+
910
+ template <
911
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
912
+ typename Check1, typename Check2, typename Check3, typename Check4,
913
+ typename Check5, typename Check6, typename Check7, typename Check8,
914
+ typename Check9, typename Check10, typename Check11, typename Check12,
915
+ typename Check13, typename Check14, typename Check15, typename Check16,
916
+ typename Check17, typename Check18, typename Check19, typename Check20,
917
+ typename Check21, typename Check22, typename Check23, typename Check24,
918
+ typename Check25, typename Check26, typename Action0, typename Action1,
919
+ typename Action2, typename Action3, typename Action4, typename Action5,
920
+ typename Action6, typename Action7, typename Action8, typename Action9,
921
+ typename Action10, typename Action11, typename Action12, typename Action13,
922
+ typename Action14, typename Action15, typename Action16, typename Action17,
923
+ typename Action18, typename Action19, typename Action20, typename Action21,
924
+ typename Action22, typename Action23, typename Action24, typename Action25,
925
+ typename Action26>
926
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
927
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
928
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
929
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
930
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
931
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
932
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
933
+ Check24 check24, Check25 check25, Check26 check26, Action0 action0,
934
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
935
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
936
+ Action9 action9, Action10 action10, Action11 action11,
937
+ Action12 action12, Action13 action13, Action14 action14,
938
+ Action15 action15, Action16 action16, Action17 action17,
939
+ Action18 action18, Action19 action19, Action20 action20,
940
+ Action21 action21, Action22 action22, Action23 action23,
941
+ Action24 action24, Action25 action25, Action26 action26) {
942
+ if (check0(input)) return action0(action_arg);
943
+ if (check1(input)) return action1(action_arg);
944
+ if (check2(input)) return action2(action_arg);
945
+ if (check3(input)) return action3(action_arg);
946
+ if (check4(input)) return action4(action_arg);
947
+ if (check5(input)) return action5(action_arg);
948
+ if (check6(input)) return action6(action_arg);
949
+ if (check7(input)) return action7(action_arg);
950
+ if (check8(input)) return action8(action_arg);
951
+ if (check9(input)) return action9(action_arg);
952
+ if (check10(input)) return action10(action_arg);
953
+ if (check11(input)) return action11(action_arg);
954
+ if (check12(input)) return action12(action_arg);
955
+ if (check13(input)) return action13(action_arg);
956
+ if (check14(input)) return action14(action_arg);
957
+ if (check15(input)) return action15(action_arg);
958
+ if (check16(input)) return action16(action_arg);
959
+ if (check17(input)) return action17(action_arg);
960
+ if (check18(input)) return action18(action_arg);
961
+ if (check19(input)) return action19(action_arg);
962
+ if (check20(input)) return action20(action_arg);
963
+ if (check21(input)) return action21(action_arg);
964
+ if (check22(input)) return action22(action_arg);
965
+ if (check23(input)) return action23(action_arg);
966
+ if (check24(input)) return action24(action_arg);
967
+ if (check25(input)) return action25(action_arg);
968
+ if (check26(input)) return action26(action_arg);
969
+ return action_fail(action_arg);
970
+ }
971
+
972
+ template <
973
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
974
+ typename Check1, typename Check2, typename Check3, typename Check4,
975
+ typename Check5, typename Check6, typename Check7, typename Check8,
976
+ typename Check9, typename Check10, typename Check11, typename Check12,
977
+ typename Check13, typename Check14, typename Check15, typename Check16,
978
+ typename Check17, typename Check18, typename Check19, typename Check20,
979
+ typename Check21, typename Check22, typename Check23, typename Check24,
980
+ typename Check25, typename Check26, typename Check27, typename Action0,
981
+ typename Action1, typename Action2, typename Action3, typename Action4,
982
+ typename Action5, typename Action6, typename Action7, typename Action8,
983
+ typename Action9, typename Action10, typename Action11, typename Action12,
984
+ typename Action13, typename Action14, typename Action15, typename Action16,
985
+ typename Action17, typename Action18, typename Action19, typename Action20,
986
+ typename Action21, typename Action22, typename Action23, typename Action24,
987
+ typename Action25, typename Action26, typename Action27>
988
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
989
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
990
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
991
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
992
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
993
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
994
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
995
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
996
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
997
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
998
+ Action8 action8, Action9 action9, Action10 action10,
999
+ Action11 action11, Action12 action12, Action13 action13,
1000
+ Action14 action14, Action15 action15, Action16 action16,
1001
+ Action17 action17, Action18 action18, Action19 action19,
1002
+ Action20 action20, Action21 action21, Action22 action22,
1003
+ Action23 action23, Action24 action24, Action25 action25,
1004
+ Action26 action26, Action27 action27) {
1005
+ if (check0(input)) return action0(action_arg);
1006
+ if (check1(input)) return action1(action_arg);
1007
+ if (check2(input)) return action2(action_arg);
1008
+ if (check3(input)) return action3(action_arg);
1009
+ if (check4(input)) return action4(action_arg);
1010
+ if (check5(input)) return action5(action_arg);
1011
+ if (check6(input)) return action6(action_arg);
1012
+ if (check7(input)) return action7(action_arg);
1013
+ if (check8(input)) return action8(action_arg);
1014
+ if (check9(input)) return action9(action_arg);
1015
+ if (check10(input)) return action10(action_arg);
1016
+ if (check11(input)) return action11(action_arg);
1017
+ if (check12(input)) return action12(action_arg);
1018
+ if (check13(input)) return action13(action_arg);
1019
+ if (check14(input)) return action14(action_arg);
1020
+ if (check15(input)) return action15(action_arg);
1021
+ if (check16(input)) return action16(action_arg);
1022
+ if (check17(input)) return action17(action_arg);
1023
+ if (check18(input)) return action18(action_arg);
1024
+ if (check19(input)) return action19(action_arg);
1025
+ if (check20(input)) return action20(action_arg);
1026
+ if (check21(input)) return action21(action_arg);
1027
+ if (check22(input)) return action22(action_arg);
1028
+ if (check23(input)) return action23(action_arg);
1029
+ if (check24(input)) return action24(action_arg);
1030
+ if (check25(input)) return action25(action_arg);
1031
+ if (check26(input)) return action26(action_arg);
1032
+ if (check27(input)) return action27(action_arg);
1033
+ return action_fail(action_arg);
1034
+ }
1035
+
1036
+ template <
1037
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1038
+ typename Check1, typename Check2, typename Check3, typename Check4,
1039
+ typename Check5, typename Check6, typename Check7, typename Check8,
1040
+ typename Check9, typename Check10, typename Check11, typename Check12,
1041
+ typename Check13, typename Check14, typename Check15, typename Check16,
1042
+ typename Check17, typename Check18, typename Check19, typename Check20,
1043
+ typename Check21, typename Check22, typename Check23, typename Check24,
1044
+ typename Check25, typename Check26, typename Check27, typename Check28,
1045
+ typename Action0, typename Action1, typename Action2, typename Action3,
1046
+ typename Action4, typename Action5, typename Action6, typename Action7,
1047
+ typename Action8, typename Action9, typename Action10, typename Action11,
1048
+ typename Action12, typename Action13, typename Action14, typename Action15,
1049
+ typename Action16, typename Action17, typename Action18, typename Action19,
1050
+ typename Action20, typename Action21, typename Action22, typename Action23,
1051
+ typename Action24, typename Action25, typename Action26, typename Action27,
1052
+ typename Action28>
1053
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1054
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1055
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1056
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1057
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1058
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1059
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1060
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1061
+ Check28 check28, Action0 action0, Action1 action1, Action2 action2,
1062
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
1063
+ Action7 action7, Action8 action8, Action9 action9,
1064
+ Action10 action10, Action11 action11, Action12 action12,
1065
+ Action13 action13, Action14 action14, Action15 action15,
1066
+ Action16 action16, Action17 action17, Action18 action18,
1067
+ Action19 action19, Action20 action20, Action21 action21,
1068
+ Action22 action22, Action23 action23, Action24 action24,
1069
+ Action25 action25, Action26 action26, Action27 action27,
1070
+ Action28 action28) {
1071
+ if (check0(input)) return action0(action_arg);
1072
+ if (check1(input)) return action1(action_arg);
1073
+ if (check2(input)) return action2(action_arg);
1074
+ if (check3(input)) return action3(action_arg);
1075
+ if (check4(input)) return action4(action_arg);
1076
+ if (check5(input)) return action5(action_arg);
1077
+ if (check6(input)) return action6(action_arg);
1078
+ if (check7(input)) return action7(action_arg);
1079
+ if (check8(input)) return action8(action_arg);
1080
+ if (check9(input)) return action9(action_arg);
1081
+ if (check10(input)) return action10(action_arg);
1082
+ if (check11(input)) return action11(action_arg);
1083
+ if (check12(input)) return action12(action_arg);
1084
+ if (check13(input)) return action13(action_arg);
1085
+ if (check14(input)) return action14(action_arg);
1086
+ if (check15(input)) return action15(action_arg);
1087
+ if (check16(input)) return action16(action_arg);
1088
+ if (check17(input)) return action17(action_arg);
1089
+ if (check18(input)) return action18(action_arg);
1090
+ if (check19(input)) return action19(action_arg);
1091
+ if (check20(input)) return action20(action_arg);
1092
+ if (check21(input)) return action21(action_arg);
1093
+ if (check22(input)) return action22(action_arg);
1094
+ if (check23(input)) return action23(action_arg);
1095
+ if (check24(input)) return action24(action_arg);
1096
+ if (check25(input)) return action25(action_arg);
1097
+ if (check26(input)) return action26(action_arg);
1098
+ if (check27(input)) return action27(action_arg);
1099
+ if (check28(input)) return action28(action_arg);
1100
+ return action_fail(action_arg);
1101
+ }
1102
+
1103
+ template <
1104
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1105
+ typename Check1, typename Check2, typename Check3, typename Check4,
1106
+ typename Check5, typename Check6, typename Check7, typename Check8,
1107
+ typename Check9, typename Check10, typename Check11, typename Check12,
1108
+ typename Check13, typename Check14, typename Check15, typename Check16,
1109
+ typename Check17, typename Check18, typename Check19, typename Check20,
1110
+ typename Check21, typename Check22, typename Check23, typename Check24,
1111
+ typename Check25, typename Check26, typename Check27, typename Check28,
1112
+ typename Check29, typename Action0, typename Action1, typename Action2,
1113
+ typename Action3, typename Action4, typename Action5, typename Action6,
1114
+ typename Action7, typename Action8, typename Action9, typename Action10,
1115
+ typename Action11, typename Action12, typename Action13, typename Action14,
1116
+ typename Action15, typename Action16, typename Action17, typename Action18,
1117
+ typename Action19, typename Action20, typename Action21, typename Action22,
1118
+ typename Action23, typename Action24, typename Action25, typename Action26,
1119
+ typename Action27, typename Action28, typename Action29>
1120
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1121
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1122
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1123
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1124
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1125
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1126
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1127
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1128
+ Check28 check28, Check29 check29, Action0 action0, Action1 action1,
1129
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
1130
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
1131
+ Action10 action10, Action11 action11, Action12 action12,
1132
+ Action13 action13, Action14 action14, Action15 action15,
1133
+ Action16 action16, Action17 action17, Action18 action18,
1134
+ Action19 action19, Action20 action20, Action21 action21,
1135
+ Action22 action22, Action23 action23, Action24 action24,
1136
+ Action25 action25, Action26 action26, Action27 action27,
1137
+ Action28 action28, Action29 action29) {
1138
+ if (check0(input)) return action0(action_arg);
1139
+ if (check1(input)) return action1(action_arg);
1140
+ if (check2(input)) return action2(action_arg);
1141
+ if (check3(input)) return action3(action_arg);
1142
+ if (check4(input)) return action4(action_arg);
1143
+ if (check5(input)) return action5(action_arg);
1144
+ if (check6(input)) return action6(action_arg);
1145
+ if (check7(input)) return action7(action_arg);
1146
+ if (check8(input)) return action8(action_arg);
1147
+ if (check9(input)) return action9(action_arg);
1148
+ if (check10(input)) return action10(action_arg);
1149
+ if (check11(input)) return action11(action_arg);
1150
+ if (check12(input)) return action12(action_arg);
1151
+ if (check13(input)) return action13(action_arg);
1152
+ if (check14(input)) return action14(action_arg);
1153
+ if (check15(input)) return action15(action_arg);
1154
+ if (check16(input)) return action16(action_arg);
1155
+ if (check17(input)) return action17(action_arg);
1156
+ if (check18(input)) return action18(action_arg);
1157
+ if (check19(input)) return action19(action_arg);
1158
+ if (check20(input)) return action20(action_arg);
1159
+ if (check21(input)) return action21(action_arg);
1160
+ if (check22(input)) return action22(action_arg);
1161
+ if (check23(input)) return action23(action_arg);
1162
+ if (check24(input)) return action24(action_arg);
1163
+ if (check25(input)) return action25(action_arg);
1164
+ if (check26(input)) return action26(action_arg);
1165
+ if (check27(input)) return action27(action_arg);
1166
+ if (check28(input)) return action28(action_arg);
1167
+ if (check29(input)) return action29(action_arg);
1168
+ return action_fail(action_arg);
1169
+ }
1170
+
1171
+ template <
1172
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1173
+ typename Check1, typename Check2, typename Check3, typename Check4,
1174
+ typename Check5, typename Check6, typename Check7, typename Check8,
1175
+ typename Check9, typename Check10, typename Check11, typename Check12,
1176
+ typename Check13, typename Check14, typename Check15, typename Check16,
1177
+ typename Check17, typename Check18, typename Check19, typename Check20,
1178
+ typename Check21, typename Check22, typename Check23, typename Check24,
1179
+ typename Check25, typename Check26, typename Check27, typename Check28,
1180
+ typename Check29, typename Check30, typename Action0, typename Action1,
1181
+ typename Action2, typename Action3, typename Action4, typename Action5,
1182
+ typename Action6, typename Action7, typename Action8, typename Action9,
1183
+ typename Action10, typename Action11, typename Action12, typename Action13,
1184
+ typename Action14, typename Action15, typename Action16, typename Action17,
1185
+ typename Action18, typename Action19, typename Action20, typename Action21,
1186
+ typename Action22, typename Action23, typename Action24, typename Action25,
1187
+ typename Action26, typename Action27, typename Action28, typename Action29,
1188
+ typename Action30>
1189
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1190
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1191
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1192
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1193
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1194
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1195
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1196
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1197
+ Check28 check28, Check29 check29, Check30 check30, Action0 action0,
1198
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
1199
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
1200
+ Action9 action9, Action10 action10, Action11 action11,
1201
+ Action12 action12, Action13 action13, Action14 action14,
1202
+ Action15 action15, Action16 action16, Action17 action17,
1203
+ Action18 action18, Action19 action19, Action20 action20,
1204
+ Action21 action21, Action22 action22, Action23 action23,
1205
+ Action24 action24, Action25 action25, Action26 action26,
1206
+ Action27 action27, Action28 action28, Action29 action29,
1207
+ Action30 action30) {
1208
+ if (check0(input)) return action0(action_arg);
1209
+ if (check1(input)) return action1(action_arg);
1210
+ if (check2(input)) return action2(action_arg);
1211
+ if (check3(input)) return action3(action_arg);
1212
+ if (check4(input)) return action4(action_arg);
1213
+ if (check5(input)) return action5(action_arg);
1214
+ if (check6(input)) return action6(action_arg);
1215
+ if (check7(input)) return action7(action_arg);
1216
+ if (check8(input)) return action8(action_arg);
1217
+ if (check9(input)) return action9(action_arg);
1218
+ if (check10(input)) return action10(action_arg);
1219
+ if (check11(input)) return action11(action_arg);
1220
+ if (check12(input)) return action12(action_arg);
1221
+ if (check13(input)) return action13(action_arg);
1222
+ if (check14(input)) return action14(action_arg);
1223
+ if (check15(input)) return action15(action_arg);
1224
+ if (check16(input)) return action16(action_arg);
1225
+ if (check17(input)) return action17(action_arg);
1226
+ if (check18(input)) return action18(action_arg);
1227
+ if (check19(input)) return action19(action_arg);
1228
+ if (check20(input)) return action20(action_arg);
1229
+ if (check21(input)) return action21(action_arg);
1230
+ if (check22(input)) return action22(action_arg);
1231
+ if (check23(input)) return action23(action_arg);
1232
+ if (check24(input)) return action24(action_arg);
1233
+ if (check25(input)) return action25(action_arg);
1234
+ if (check26(input)) return action26(action_arg);
1235
+ if (check27(input)) return action27(action_arg);
1236
+ if (check28(input)) return action28(action_arg);
1237
+ if (check29(input)) return action29(action_arg);
1238
+ if (check30(input)) return action30(action_arg);
1239
+ return action_fail(action_arg);
1240
+ }
1241
+
1242
+ template <
1243
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1244
+ typename Check1, typename Check2, typename Check3, typename Check4,
1245
+ typename Check5, typename Check6, typename Check7, typename Check8,
1246
+ typename Check9, typename Check10, typename Check11, typename Check12,
1247
+ typename Check13, typename Check14, typename Check15, typename Check16,
1248
+ typename Check17, typename Check18, typename Check19, typename Check20,
1249
+ typename Check21, typename Check22, typename Check23, typename Check24,
1250
+ typename Check25, typename Check26, typename Check27, typename Check28,
1251
+ typename Check29, typename Check30, typename Check31, typename Action0,
1252
+ typename Action1, typename Action2, typename Action3, typename Action4,
1253
+ typename Action5, typename Action6, typename Action7, typename Action8,
1254
+ typename Action9, typename Action10, typename Action11, typename Action12,
1255
+ typename Action13, typename Action14, typename Action15, typename Action16,
1256
+ typename Action17, typename Action18, typename Action19, typename Action20,
1257
+ typename Action21, typename Action22, typename Action23, typename Action24,
1258
+ typename Action25, typename Action26, typename Action27, typename Action28,
1259
+ typename Action29, typename Action30, typename Action31>
1260
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1261
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1262
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1263
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1264
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1265
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1266
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1267
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1268
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
1269
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
1270
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
1271
+ Action8 action8, Action9 action9, Action10 action10,
1272
+ Action11 action11, Action12 action12, Action13 action13,
1273
+ Action14 action14, Action15 action15, Action16 action16,
1274
+ Action17 action17, Action18 action18, Action19 action19,
1275
+ Action20 action20, Action21 action21, Action22 action22,
1276
+ Action23 action23, Action24 action24, Action25 action25,
1277
+ Action26 action26, Action27 action27, Action28 action28,
1278
+ Action29 action29, Action30 action30, Action31 action31) {
1279
+ if (check0(input)) return action0(action_arg);
1280
+ if (check1(input)) return action1(action_arg);
1281
+ if (check2(input)) return action2(action_arg);
1282
+ if (check3(input)) return action3(action_arg);
1283
+ if (check4(input)) return action4(action_arg);
1284
+ if (check5(input)) return action5(action_arg);
1285
+ if (check6(input)) return action6(action_arg);
1286
+ if (check7(input)) return action7(action_arg);
1287
+ if (check8(input)) return action8(action_arg);
1288
+ if (check9(input)) return action9(action_arg);
1289
+ if (check10(input)) return action10(action_arg);
1290
+ if (check11(input)) return action11(action_arg);
1291
+ if (check12(input)) return action12(action_arg);
1292
+ if (check13(input)) return action13(action_arg);
1293
+ if (check14(input)) return action14(action_arg);
1294
+ if (check15(input)) return action15(action_arg);
1295
+ if (check16(input)) return action16(action_arg);
1296
+ if (check17(input)) return action17(action_arg);
1297
+ if (check18(input)) return action18(action_arg);
1298
+ if (check19(input)) return action19(action_arg);
1299
+ if (check20(input)) return action20(action_arg);
1300
+ if (check21(input)) return action21(action_arg);
1301
+ if (check22(input)) return action22(action_arg);
1302
+ if (check23(input)) return action23(action_arg);
1303
+ if (check24(input)) return action24(action_arg);
1304
+ if (check25(input)) return action25(action_arg);
1305
+ if (check26(input)) return action26(action_arg);
1306
+ if (check27(input)) return action27(action_arg);
1307
+ if (check28(input)) return action28(action_arg);
1308
+ if (check29(input)) return action29(action_arg);
1309
+ if (check30(input)) return action30(action_arg);
1310
+ if (check31(input)) return action31(action_arg);
1311
+ return action_fail(action_arg);
1312
+ }
1313
+
1314
+ template <
1315
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1316
+ typename Check1, typename Check2, typename Check3, typename Check4,
1317
+ typename Check5, typename Check6, typename Check7, typename Check8,
1318
+ typename Check9, typename Check10, typename Check11, typename Check12,
1319
+ typename Check13, typename Check14, typename Check15, typename Check16,
1320
+ typename Check17, typename Check18, typename Check19, typename Check20,
1321
+ typename Check21, typename Check22, typename Check23, typename Check24,
1322
+ typename Check25, typename Check26, typename Check27, typename Check28,
1323
+ typename Check29, typename Check30, typename Check31, typename Check32,
1324
+ typename Action0, typename Action1, typename Action2, typename Action3,
1325
+ typename Action4, typename Action5, typename Action6, typename Action7,
1326
+ typename Action8, typename Action9, typename Action10, typename Action11,
1327
+ typename Action12, typename Action13, typename Action14, typename Action15,
1328
+ typename Action16, typename Action17, typename Action18, typename Action19,
1329
+ typename Action20, typename Action21, typename Action22, typename Action23,
1330
+ typename Action24, typename Action25, typename Action26, typename Action27,
1331
+ typename Action28, typename Action29, typename Action30, typename Action31,
1332
+ typename Action32>
1333
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1334
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1335
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1336
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1337
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1338
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1339
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1340
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1341
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
1342
+ Check32 check32, Action0 action0, Action1 action1, Action2 action2,
1343
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
1344
+ Action7 action7, Action8 action8, Action9 action9,
1345
+ Action10 action10, Action11 action11, Action12 action12,
1346
+ Action13 action13, Action14 action14, Action15 action15,
1347
+ Action16 action16, Action17 action17, Action18 action18,
1348
+ Action19 action19, Action20 action20, Action21 action21,
1349
+ Action22 action22, Action23 action23, Action24 action24,
1350
+ Action25 action25, Action26 action26, Action27 action27,
1351
+ Action28 action28, Action29 action29, Action30 action30,
1352
+ Action31 action31, Action32 action32) {
1353
+ if (check0(input)) return action0(action_arg);
1354
+ if (check1(input)) return action1(action_arg);
1355
+ if (check2(input)) return action2(action_arg);
1356
+ if (check3(input)) return action3(action_arg);
1357
+ if (check4(input)) return action4(action_arg);
1358
+ if (check5(input)) return action5(action_arg);
1359
+ if (check6(input)) return action6(action_arg);
1360
+ if (check7(input)) return action7(action_arg);
1361
+ if (check8(input)) return action8(action_arg);
1362
+ if (check9(input)) return action9(action_arg);
1363
+ if (check10(input)) return action10(action_arg);
1364
+ if (check11(input)) return action11(action_arg);
1365
+ if (check12(input)) return action12(action_arg);
1366
+ if (check13(input)) return action13(action_arg);
1367
+ if (check14(input)) return action14(action_arg);
1368
+ if (check15(input)) return action15(action_arg);
1369
+ if (check16(input)) return action16(action_arg);
1370
+ if (check17(input)) return action17(action_arg);
1371
+ if (check18(input)) return action18(action_arg);
1372
+ if (check19(input)) return action19(action_arg);
1373
+ if (check20(input)) return action20(action_arg);
1374
+ if (check21(input)) return action21(action_arg);
1375
+ if (check22(input)) return action22(action_arg);
1376
+ if (check23(input)) return action23(action_arg);
1377
+ if (check24(input)) return action24(action_arg);
1378
+ if (check25(input)) return action25(action_arg);
1379
+ if (check26(input)) return action26(action_arg);
1380
+ if (check27(input)) return action27(action_arg);
1381
+ if (check28(input)) return action28(action_arg);
1382
+ if (check29(input)) return action29(action_arg);
1383
+ if (check30(input)) return action30(action_arg);
1384
+ if (check31(input)) return action31(action_arg);
1385
+ if (check32(input)) return action32(action_arg);
1386
+ return action_fail(action_arg);
1387
+ }
1388
+
1389
+ template <
1390
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1391
+ typename Check1, typename Check2, typename Check3, typename Check4,
1392
+ typename Check5, typename Check6, typename Check7, typename Check8,
1393
+ typename Check9, typename Check10, typename Check11, typename Check12,
1394
+ typename Check13, typename Check14, typename Check15, typename Check16,
1395
+ typename Check17, typename Check18, typename Check19, typename Check20,
1396
+ typename Check21, typename Check22, typename Check23, typename Check24,
1397
+ typename Check25, typename Check26, typename Check27, typename Check28,
1398
+ typename Check29, typename Check30, typename Check31, typename Check32,
1399
+ typename Check33, typename Action0, typename Action1, typename Action2,
1400
+ typename Action3, typename Action4, typename Action5, typename Action6,
1401
+ typename Action7, typename Action8, typename Action9, typename Action10,
1402
+ typename Action11, typename Action12, typename Action13, typename Action14,
1403
+ typename Action15, typename Action16, typename Action17, typename Action18,
1404
+ typename Action19, typename Action20, typename Action21, typename Action22,
1405
+ typename Action23, typename Action24, typename Action25, typename Action26,
1406
+ typename Action27, typename Action28, typename Action29, typename Action30,
1407
+ typename Action31, typename Action32, typename Action33>
1408
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1409
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1410
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1411
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1412
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1413
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1414
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1415
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1416
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
1417
+ Check32 check32, Check33 check33, Action0 action0, Action1 action1,
1418
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
1419
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
1420
+ Action10 action10, Action11 action11, Action12 action12,
1421
+ Action13 action13, Action14 action14, Action15 action15,
1422
+ Action16 action16, Action17 action17, Action18 action18,
1423
+ Action19 action19, Action20 action20, Action21 action21,
1424
+ Action22 action22, Action23 action23, Action24 action24,
1425
+ Action25 action25, Action26 action26, Action27 action27,
1426
+ Action28 action28, Action29 action29, Action30 action30,
1427
+ Action31 action31, Action32 action32, Action33 action33) {
1428
+ if (check0(input)) return action0(action_arg);
1429
+ if (check1(input)) return action1(action_arg);
1430
+ if (check2(input)) return action2(action_arg);
1431
+ if (check3(input)) return action3(action_arg);
1432
+ if (check4(input)) return action4(action_arg);
1433
+ if (check5(input)) return action5(action_arg);
1434
+ if (check6(input)) return action6(action_arg);
1435
+ if (check7(input)) return action7(action_arg);
1436
+ if (check8(input)) return action8(action_arg);
1437
+ if (check9(input)) return action9(action_arg);
1438
+ if (check10(input)) return action10(action_arg);
1439
+ if (check11(input)) return action11(action_arg);
1440
+ if (check12(input)) return action12(action_arg);
1441
+ if (check13(input)) return action13(action_arg);
1442
+ if (check14(input)) return action14(action_arg);
1443
+ if (check15(input)) return action15(action_arg);
1444
+ if (check16(input)) return action16(action_arg);
1445
+ if (check17(input)) return action17(action_arg);
1446
+ if (check18(input)) return action18(action_arg);
1447
+ if (check19(input)) return action19(action_arg);
1448
+ if (check20(input)) return action20(action_arg);
1449
+ if (check21(input)) return action21(action_arg);
1450
+ if (check22(input)) return action22(action_arg);
1451
+ if (check23(input)) return action23(action_arg);
1452
+ if (check24(input)) return action24(action_arg);
1453
+ if (check25(input)) return action25(action_arg);
1454
+ if (check26(input)) return action26(action_arg);
1455
+ if (check27(input)) return action27(action_arg);
1456
+ if (check28(input)) return action28(action_arg);
1457
+ if (check29(input)) return action29(action_arg);
1458
+ if (check30(input)) return action30(action_arg);
1459
+ if (check31(input)) return action31(action_arg);
1460
+ if (check32(input)) return action32(action_arg);
1461
+ if (check33(input)) return action33(action_arg);
1462
+ return action_fail(action_arg);
1463
+ }
1464
+
1465
+ template <
1466
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1467
+ typename Check1, typename Check2, typename Check3, typename Check4,
1468
+ typename Check5, typename Check6, typename Check7, typename Check8,
1469
+ typename Check9, typename Check10, typename Check11, typename Check12,
1470
+ typename Check13, typename Check14, typename Check15, typename Check16,
1471
+ typename Check17, typename Check18, typename Check19, typename Check20,
1472
+ typename Check21, typename Check22, typename Check23, typename Check24,
1473
+ typename Check25, typename Check26, typename Check27, typename Check28,
1474
+ typename Check29, typename Check30, typename Check31, typename Check32,
1475
+ typename Check33, typename Check34, typename Action0, typename Action1,
1476
+ typename Action2, typename Action3, typename Action4, typename Action5,
1477
+ typename Action6, typename Action7, typename Action8, typename Action9,
1478
+ typename Action10, typename Action11, typename Action12, typename Action13,
1479
+ typename Action14, typename Action15, typename Action16, typename Action17,
1480
+ typename Action18, typename Action19, typename Action20, typename Action21,
1481
+ typename Action22, typename Action23, typename Action24, typename Action25,
1482
+ typename Action26, typename Action27, typename Action28, typename Action29,
1483
+ typename Action30, typename Action31, typename Action32, typename Action33,
1484
+ typename Action34>
1485
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1486
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1487
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1488
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1489
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1490
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1491
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1492
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1493
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
1494
+ Check32 check32, Check33 check33, Check34 check34, Action0 action0,
1495
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
1496
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
1497
+ Action9 action9, Action10 action10, Action11 action11,
1498
+ Action12 action12, Action13 action13, Action14 action14,
1499
+ Action15 action15, Action16 action16, Action17 action17,
1500
+ Action18 action18, Action19 action19, Action20 action20,
1501
+ Action21 action21, Action22 action22, Action23 action23,
1502
+ Action24 action24, Action25 action25, Action26 action26,
1503
+ Action27 action27, Action28 action28, Action29 action29,
1504
+ Action30 action30, Action31 action31, Action32 action32,
1505
+ Action33 action33, Action34 action34) {
1506
+ if (check0(input)) return action0(action_arg);
1507
+ if (check1(input)) return action1(action_arg);
1508
+ if (check2(input)) return action2(action_arg);
1509
+ if (check3(input)) return action3(action_arg);
1510
+ if (check4(input)) return action4(action_arg);
1511
+ if (check5(input)) return action5(action_arg);
1512
+ if (check6(input)) return action6(action_arg);
1513
+ if (check7(input)) return action7(action_arg);
1514
+ if (check8(input)) return action8(action_arg);
1515
+ if (check9(input)) return action9(action_arg);
1516
+ if (check10(input)) return action10(action_arg);
1517
+ if (check11(input)) return action11(action_arg);
1518
+ if (check12(input)) return action12(action_arg);
1519
+ if (check13(input)) return action13(action_arg);
1520
+ if (check14(input)) return action14(action_arg);
1521
+ if (check15(input)) return action15(action_arg);
1522
+ if (check16(input)) return action16(action_arg);
1523
+ if (check17(input)) return action17(action_arg);
1524
+ if (check18(input)) return action18(action_arg);
1525
+ if (check19(input)) return action19(action_arg);
1526
+ if (check20(input)) return action20(action_arg);
1527
+ if (check21(input)) return action21(action_arg);
1528
+ if (check22(input)) return action22(action_arg);
1529
+ if (check23(input)) return action23(action_arg);
1530
+ if (check24(input)) return action24(action_arg);
1531
+ if (check25(input)) return action25(action_arg);
1532
+ if (check26(input)) return action26(action_arg);
1533
+ if (check27(input)) return action27(action_arg);
1534
+ if (check28(input)) return action28(action_arg);
1535
+ if (check29(input)) return action29(action_arg);
1536
+ if (check30(input)) return action30(action_arg);
1537
+ if (check31(input)) return action31(action_arg);
1538
+ if (check32(input)) return action32(action_arg);
1539
+ if (check33(input)) return action33(action_arg);
1540
+ if (check34(input)) return action34(action_arg);
1541
+ return action_fail(action_arg);
1542
+ }
1543
+
1544
+ template <
1545
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1546
+ typename Check1, typename Check2, typename Check3, typename Check4,
1547
+ typename Check5, typename Check6, typename Check7, typename Check8,
1548
+ typename Check9, typename Check10, typename Check11, typename Check12,
1549
+ typename Check13, typename Check14, typename Check15, typename Check16,
1550
+ typename Check17, typename Check18, typename Check19, typename Check20,
1551
+ typename Check21, typename Check22, typename Check23, typename Check24,
1552
+ typename Check25, typename Check26, typename Check27, typename Check28,
1553
+ typename Check29, typename Check30, typename Check31, typename Check32,
1554
+ typename Check33, typename Check34, typename Check35, typename Action0,
1555
+ typename Action1, typename Action2, typename Action3, typename Action4,
1556
+ typename Action5, typename Action6, typename Action7, typename Action8,
1557
+ typename Action9, typename Action10, typename Action11, typename Action12,
1558
+ typename Action13, typename Action14, typename Action15, typename Action16,
1559
+ typename Action17, typename Action18, typename Action19, typename Action20,
1560
+ typename Action21, typename Action22, typename Action23, typename Action24,
1561
+ typename Action25, typename Action26, typename Action27, typename Action28,
1562
+ typename Action29, typename Action30, typename Action31, typename Action32,
1563
+ typename Action33, typename Action34, typename Action35>
1564
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1565
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1566
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1567
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1568
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1569
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1570
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1571
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1572
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
1573
+ Check32 check32, Check33 check33, Check34 check34, Check35 check35,
1574
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
1575
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
1576
+ Action8 action8, Action9 action9, Action10 action10,
1577
+ Action11 action11, Action12 action12, Action13 action13,
1578
+ Action14 action14, Action15 action15, Action16 action16,
1579
+ Action17 action17, Action18 action18, Action19 action19,
1580
+ Action20 action20, Action21 action21, Action22 action22,
1581
+ Action23 action23, Action24 action24, Action25 action25,
1582
+ Action26 action26, Action27 action27, Action28 action28,
1583
+ Action29 action29, Action30 action30, Action31 action31,
1584
+ Action32 action32, Action33 action33, Action34 action34,
1585
+ Action35 action35) {
1586
+ if (check0(input)) return action0(action_arg);
1587
+ if (check1(input)) return action1(action_arg);
1588
+ if (check2(input)) return action2(action_arg);
1589
+ if (check3(input)) return action3(action_arg);
1590
+ if (check4(input)) return action4(action_arg);
1591
+ if (check5(input)) return action5(action_arg);
1592
+ if (check6(input)) return action6(action_arg);
1593
+ if (check7(input)) return action7(action_arg);
1594
+ if (check8(input)) return action8(action_arg);
1595
+ if (check9(input)) return action9(action_arg);
1596
+ if (check10(input)) return action10(action_arg);
1597
+ if (check11(input)) return action11(action_arg);
1598
+ if (check12(input)) return action12(action_arg);
1599
+ if (check13(input)) return action13(action_arg);
1600
+ if (check14(input)) return action14(action_arg);
1601
+ if (check15(input)) return action15(action_arg);
1602
+ if (check16(input)) return action16(action_arg);
1603
+ if (check17(input)) return action17(action_arg);
1604
+ if (check18(input)) return action18(action_arg);
1605
+ if (check19(input)) return action19(action_arg);
1606
+ if (check20(input)) return action20(action_arg);
1607
+ if (check21(input)) return action21(action_arg);
1608
+ if (check22(input)) return action22(action_arg);
1609
+ if (check23(input)) return action23(action_arg);
1610
+ if (check24(input)) return action24(action_arg);
1611
+ if (check25(input)) return action25(action_arg);
1612
+ if (check26(input)) return action26(action_arg);
1613
+ if (check27(input)) return action27(action_arg);
1614
+ if (check28(input)) return action28(action_arg);
1615
+ if (check29(input)) return action29(action_arg);
1616
+ if (check30(input)) return action30(action_arg);
1617
+ if (check31(input)) return action31(action_arg);
1618
+ if (check32(input)) return action32(action_arg);
1619
+ if (check33(input)) return action33(action_arg);
1620
+ if (check34(input)) return action34(action_arg);
1621
+ if (check35(input)) return action35(action_arg);
1622
+ return action_fail(action_arg);
1623
+ }
1624
+
1625
+ template <
1626
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1627
+ typename Check1, typename Check2, typename Check3, typename Check4,
1628
+ typename Check5, typename Check6, typename Check7, typename Check8,
1629
+ typename Check9, typename Check10, typename Check11, typename Check12,
1630
+ typename Check13, typename Check14, typename Check15, typename Check16,
1631
+ typename Check17, typename Check18, typename Check19, typename Check20,
1632
+ typename Check21, typename Check22, typename Check23, typename Check24,
1633
+ typename Check25, typename Check26, typename Check27, typename Check28,
1634
+ typename Check29, typename Check30, typename Check31, typename Check32,
1635
+ typename Check33, typename Check34, typename Check35, typename Check36,
1636
+ typename Action0, typename Action1, typename Action2, typename Action3,
1637
+ typename Action4, typename Action5, typename Action6, typename Action7,
1638
+ typename Action8, typename Action9, typename Action10, typename Action11,
1639
+ typename Action12, typename Action13, typename Action14, typename Action15,
1640
+ typename Action16, typename Action17, typename Action18, typename Action19,
1641
+ typename Action20, typename Action21, typename Action22, typename Action23,
1642
+ typename Action24, typename Action25, typename Action26, typename Action27,
1643
+ typename Action28, typename Action29, typename Action30, typename Action31,
1644
+ typename Action32, typename Action33, typename Action34, typename Action35,
1645
+ typename Action36>
1646
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1647
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1648
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1649
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1650
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1651
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1652
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1653
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1654
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
1655
+ Check32 check32, Check33 check33, Check34 check34, Check35 check35,
1656
+ Check36 check36, Action0 action0, Action1 action1, Action2 action2,
1657
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
1658
+ Action7 action7, Action8 action8, Action9 action9,
1659
+ Action10 action10, Action11 action11, Action12 action12,
1660
+ Action13 action13, Action14 action14, Action15 action15,
1661
+ Action16 action16, Action17 action17, Action18 action18,
1662
+ Action19 action19, Action20 action20, Action21 action21,
1663
+ Action22 action22, Action23 action23, Action24 action24,
1664
+ Action25 action25, Action26 action26, Action27 action27,
1665
+ Action28 action28, Action29 action29, Action30 action30,
1666
+ Action31 action31, Action32 action32, Action33 action33,
1667
+ Action34 action34, Action35 action35, Action36 action36) {
1668
+ if (check0(input)) return action0(action_arg);
1669
+ if (check1(input)) return action1(action_arg);
1670
+ if (check2(input)) return action2(action_arg);
1671
+ if (check3(input)) return action3(action_arg);
1672
+ if (check4(input)) return action4(action_arg);
1673
+ if (check5(input)) return action5(action_arg);
1674
+ if (check6(input)) return action6(action_arg);
1675
+ if (check7(input)) return action7(action_arg);
1676
+ if (check8(input)) return action8(action_arg);
1677
+ if (check9(input)) return action9(action_arg);
1678
+ if (check10(input)) return action10(action_arg);
1679
+ if (check11(input)) return action11(action_arg);
1680
+ if (check12(input)) return action12(action_arg);
1681
+ if (check13(input)) return action13(action_arg);
1682
+ if (check14(input)) return action14(action_arg);
1683
+ if (check15(input)) return action15(action_arg);
1684
+ if (check16(input)) return action16(action_arg);
1685
+ if (check17(input)) return action17(action_arg);
1686
+ if (check18(input)) return action18(action_arg);
1687
+ if (check19(input)) return action19(action_arg);
1688
+ if (check20(input)) return action20(action_arg);
1689
+ if (check21(input)) return action21(action_arg);
1690
+ if (check22(input)) return action22(action_arg);
1691
+ if (check23(input)) return action23(action_arg);
1692
+ if (check24(input)) return action24(action_arg);
1693
+ if (check25(input)) return action25(action_arg);
1694
+ if (check26(input)) return action26(action_arg);
1695
+ if (check27(input)) return action27(action_arg);
1696
+ if (check28(input)) return action28(action_arg);
1697
+ if (check29(input)) return action29(action_arg);
1698
+ if (check30(input)) return action30(action_arg);
1699
+ if (check31(input)) return action31(action_arg);
1700
+ if (check32(input)) return action32(action_arg);
1701
+ if (check33(input)) return action33(action_arg);
1702
+ if (check34(input)) return action34(action_arg);
1703
+ if (check35(input)) return action35(action_arg);
1704
+ if (check36(input)) return action36(action_arg);
1705
+ return action_fail(action_arg);
1706
+ }
1707
+
1708
+ template <
1709
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1710
+ typename Check1, typename Check2, typename Check3, typename Check4,
1711
+ typename Check5, typename Check6, typename Check7, typename Check8,
1712
+ typename Check9, typename Check10, typename Check11, typename Check12,
1713
+ typename Check13, typename Check14, typename Check15, typename Check16,
1714
+ typename Check17, typename Check18, typename Check19, typename Check20,
1715
+ typename Check21, typename Check22, typename Check23, typename Check24,
1716
+ typename Check25, typename Check26, typename Check27, typename Check28,
1717
+ typename Check29, typename Check30, typename Check31, typename Check32,
1718
+ typename Check33, typename Check34, typename Check35, typename Check36,
1719
+ typename Check37, typename Action0, typename Action1, typename Action2,
1720
+ typename Action3, typename Action4, typename Action5, typename Action6,
1721
+ typename Action7, typename Action8, typename Action9, typename Action10,
1722
+ typename Action11, typename Action12, typename Action13, typename Action14,
1723
+ typename Action15, typename Action16, typename Action17, typename Action18,
1724
+ typename Action19, typename Action20, typename Action21, typename Action22,
1725
+ typename Action23, typename Action24, typename Action25, typename Action26,
1726
+ typename Action27, typename Action28, typename Action29, typename Action30,
1727
+ typename Action31, typename Action32, typename Action33, typename Action34,
1728
+ typename Action35, typename Action36, typename Action37>
1729
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1730
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1731
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1732
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1733
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1734
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1735
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1736
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1737
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
1738
+ Check32 check32, Check33 check33, Check34 check34, Check35 check35,
1739
+ Check36 check36, Check37 check37, Action0 action0, Action1 action1,
1740
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
1741
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
1742
+ Action10 action10, Action11 action11, Action12 action12,
1743
+ Action13 action13, Action14 action14, Action15 action15,
1744
+ Action16 action16, Action17 action17, Action18 action18,
1745
+ Action19 action19, Action20 action20, Action21 action21,
1746
+ Action22 action22, Action23 action23, Action24 action24,
1747
+ Action25 action25, Action26 action26, Action27 action27,
1748
+ Action28 action28, Action29 action29, Action30 action30,
1749
+ Action31 action31, Action32 action32, Action33 action33,
1750
+ Action34 action34, Action35 action35, Action36 action36,
1751
+ Action37 action37) {
1752
+ if (check0(input)) return action0(action_arg);
1753
+ if (check1(input)) return action1(action_arg);
1754
+ if (check2(input)) return action2(action_arg);
1755
+ if (check3(input)) return action3(action_arg);
1756
+ if (check4(input)) return action4(action_arg);
1757
+ if (check5(input)) return action5(action_arg);
1758
+ if (check6(input)) return action6(action_arg);
1759
+ if (check7(input)) return action7(action_arg);
1760
+ if (check8(input)) return action8(action_arg);
1761
+ if (check9(input)) return action9(action_arg);
1762
+ if (check10(input)) return action10(action_arg);
1763
+ if (check11(input)) return action11(action_arg);
1764
+ if (check12(input)) return action12(action_arg);
1765
+ if (check13(input)) return action13(action_arg);
1766
+ if (check14(input)) return action14(action_arg);
1767
+ if (check15(input)) return action15(action_arg);
1768
+ if (check16(input)) return action16(action_arg);
1769
+ if (check17(input)) return action17(action_arg);
1770
+ if (check18(input)) return action18(action_arg);
1771
+ if (check19(input)) return action19(action_arg);
1772
+ if (check20(input)) return action20(action_arg);
1773
+ if (check21(input)) return action21(action_arg);
1774
+ if (check22(input)) return action22(action_arg);
1775
+ if (check23(input)) return action23(action_arg);
1776
+ if (check24(input)) return action24(action_arg);
1777
+ if (check25(input)) return action25(action_arg);
1778
+ if (check26(input)) return action26(action_arg);
1779
+ if (check27(input)) return action27(action_arg);
1780
+ if (check28(input)) return action28(action_arg);
1781
+ if (check29(input)) return action29(action_arg);
1782
+ if (check30(input)) return action30(action_arg);
1783
+ if (check31(input)) return action31(action_arg);
1784
+ if (check32(input)) return action32(action_arg);
1785
+ if (check33(input)) return action33(action_arg);
1786
+ if (check34(input)) return action34(action_arg);
1787
+ if (check35(input)) return action35(action_arg);
1788
+ if (check36(input)) return action36(action_arg);
1789
+ if (check37(input)) return action37(action_arg);
1790
+ return action_fail(action_arg);
1791
+ }
1792
+
1793
+ template <
1794
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1795
+ typename Check1, typename Check2, typename Check3, typename Check4,
1796
+ typename Check5, typename Check6, typename Check7, typename Check8,
1797
+ typename Check9, typename Check10, typename Check11, typename Check12,
1798
+ typename Check13, typename Check14, typename Check15, typename Check16,
1799
+ typename Check17, typename Check18, typename Check19, typename Check20,
1800
+ typename Check21, typename Check22, typename Check23, typename Check24,
1801
+ typename Check25, typename Check26, typename Check27, typename Check28,
1802
+ typename Check29, typename Check30, typename Check31, typename Check32,
1803
+ typename Check33, typename Check34, typename Check35, typename Check36,
1804
+ typename Check37, typename Check38, typename Action0, typename Action1,
1805
+ typename Action2, typename Action3, typename Action4, typename Action5,
1806
+ typename Action6, typename Action7, typename Action8, typename Action9,
1807
+ typename Action10, typename Action11, typename Action12, typename Action13,
1808
+ typename Action14, typename Action15, typename Action16, typename Action17,
1809
+ typename Action18, typename Action19, typename Action20, typename Action21,
1810
+ typename Action22, typename Action23, typename Action24, typename Action25,
1811
+ typename Action26, typename Action27, typename Action28, typename Action29,
1812
+ typename Action30, typename Action31, typename Action32, typename Action33,
1813
+ typename Action34, typename Action35, typename Action36, typename Action37,
1814
+ typename Action38>
1815
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1816
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1817
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1818
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1819
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1820
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1821
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1822
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1823
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
1824
+ Check32 check32, Check33 check33, Check34 check34, Check35 check35,
1825
+ Check36 check36, Check37 check37, Check38 check38, Action0 action0,
1826
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
1827
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
1828
+ Action9 action9, Action10 action10, Action11 action11,
1829
+ Action12 action12, Action13 action13, Action14 action14,
1830
+ Action15 action15, Action16 action16, Action17 action17,
1831
+ Action18 action18, Action19 action19, Action20 action20,
1832
+ Action21 action21, Action22 action22, Action23 action23,
1833
+ Action24 action24, Action25 action25, Action26 action26,
1834
+ Action27 action27, Action28 action28, Action29 action29,
1835
+ Action30 action30, Action31 action31, Action32 action32,
1836
+ Action33 action33, Action34 action34, Action35 action35,
1837
+ Action36 action36, Action37 action37, Action38 action38) {
1838
+ if (check0(input)) return action0(action_arg);
1839
+ if (check1(input)) return action1(action_arg);
1840
+ if (check2(input)) return action2(action_arg);
1841
+ if (check3(input)) return action3(action_arg);
1842
+ if (check4(input)) return action4(action_arg);
1843
+ if (check5(input)) return action5(action_arg);
1844
+ if (check6(input)) return action6(action_arg);
1845
+ if (check7(input)) return action7(action_arg);
1846
+ if (check8(input)) return action8(action_arg);
1847
+ if (check9(input)) return action9(action_arg);
1848
+ if (check10(input)) return action10(action_arg);
1849
+ if (check11(input)) return action11(action_arg);
1850
+ if (check12(input)) return action12(action_arg);
1851
+ if (check13(input)) return action13(action_arg);
1852
+ if (check14(input)) return action14(action_arg);
1853
+ if (check15(input)) return action15(action_arg);
1854
+ if (check16(input)) return action16(action_arg);
1855
+ if (check17(input)) return action17(action_arg);
1856
+ if (check18(input)) return action18(action_arg);
1857
+ if (check19(input)) return action19(action_arg);
1858
+ if (check20(input)) return action20(action_arg);
1859
+ if (check21(input)) return action21(action_arg);
1860
+ if (check22(input)) return action22(action_arg);
1861
+ if (check23(input)) return action23(action_arg);
1862
+ if (check24(input)) return action24(action_arg);
1863
+ if (check25(input)) return action25(action_arg);
1864
+ if (check26(input)) return action26(action_arg);
1865
+ if (check27(input)) return action27(action_arg);
1866
+ if (check28(input)) return action28(action_arg);
1867
+ if (check29(input)) return action29(action_arg);
1868
+ if (check30(input)) return action30(action_arg);
1869
+ if (check31(input)) return action31(action_arg);
1870
+ if (check32(input)) return action32(action_arg);
1871
+ if (check33(input)) return action33(action_arg);
1872
+ if (check34(input)) return action34(action_arg);
1873
+ if (check35(input)) return action35(action_arg);
1874
+ if (check36(input)) return action36(action_arg);
1875
+ if (check37(input)) return action37(action_arg);
1876
+ if (check38(input)) return action38(action_arg);
1877
+ return action_fail(action_arg);
1878
+ }
1879
+
1880
+ template <
1881
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1882
+ typename Check1, typename Check2, typename Check3, typename Check4,
1883
+ typename Check5, typename Check6, typename Check7, typename Check8,
1884
+ typename Check9, typename Check10, typename Check11, typename Check12,
1885
+ typename Check13, typename Check14, typename Check15, typename Check16,
1886
+ typename Check17, typename Check18, typename Check19, typename Check20,
1887
+ typename Check21, typename Check22, typename Check23, typename Check24,
1888
+ typename Check25, typename Check26, typename Check27, typename Check28,
1889
+ typename Check29, typename Check30, typename Check31, typename Check32,
1890
+ typename Check33, typename Check34, typename Check35, typename Check36,
1891
+ typename Check37, typename Check38, typename Check39, typename Action0,
1892
+ typename Action1, typename Action2, typename Action3, typename Action4,
1893
+ typename Action5, typename Action6, typename Action7, typename Action8,
1894
+ typename Action9, typename Action10, typename Action11, typename Action12,
1895
+ typename Action13, typename Action14, typename Action15, typename Action16,
1896
+ typename Action17, typename Action18, typename Action19, typename Action20,
1897
+ typename Action21, typename Action22, typename Action23, typename Action24,
1898
+ typename Action25, typename Action26, typename Action27, typename Action28,
1899
+ typename Action29, typename Action30, typename Action31, typename Action32,
1900
+ typename Action33, typename Action34, typename Action35, typename Action36,
1901
+ typename Action37, typename Action38, typename Action39>
1902
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
1903
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
1904
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
1905
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
1906
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
1907
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
1908
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
1909
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
1910
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
1911
+ Check32 check32, Check33 check33, Check34 check34, Check35 check35,
1912
+ Check36 check36, Check37 check37, Check38 check38, Check39 check39,
1913
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
1914
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
1915
+ Action8 action8, Action9 action9, Action10 action10,
1916
+ Action11 action11, Action12 action12, Action13 action13,
1917
+ Action14 action14, Action15 action15, Action16 action16,
1918
+ Action17 action17, Action18 action18, Action19 action19,
1919
+ Action20 action20, Action21 action21, Action22 action22,
1920
+ Action23 action23, Action24 action24, Action25 action25,
1921
+ Action26 action26, Action27 action27, Action28 action28,
1922
+ Action29 action29, Action30 action30, Action31 action31,
1923
+ Action32 action32, Action33 action33, Action34 action34,
1924
+ Action35 action35, Action36 action36, Action37 action37,
1925
+ Action38 action38, Action39 action39) {
1926
+ if (check0(input)) return action0(action_arg);
1927
+ if (check1(input)) return action1(action_arg);
1928
+ if (check2(input)) return action2(action_arg);
1929
+ if (check3(input)) return action3(action_arg);
1930
+ if (check4(input)) return action4(action_arg);
1931
+ if (check5(input)) return action5(action_arg);
1932
+ if (check6(input)) return action6(action_arg);
1933
+ if (check7(input)) return action7(action_arg);
1934
+ if (check8(input)) return action8(action_arg);
1935
+ if (check9(input)) return action9(action_arg);
1936
+ if (check10(input)) return action10(action_arg);
1937
+ if (check11(input)) return action11(action_arg);
1938
+ if (check12(input)) return action12(action_arg);
1939
+ if (check13(input)) return action13(action_arg);
1940
+ if (check14(input)) return action14(action_arg);
1941
+ if (check15(input)) return action15(action_arg);
1942
+ if (check16(input)) return action16(action_arg);
1943
+ if (check17(input)) return action17(action_arg);
1944
+ if (check18(input)) return action18(action_arg);
1945
+ if (check19(input)) return action19(action_arg);
1946
+ if (check20(input)) return action20(action_arg);
1947
+ if (check21(input)) return action21(action_arg);
1948
+ if (check22(input)) return action22(action_arg);
1949
+ if (check23(input)) return action23(action_arg);
1950
+ if (check24(input)) return action24(action_arg);
1951
+ if (check25(input)) return action25(action_arg);
1952
+ if (check26(input)) return action26(action_arg);
1953
+ if (check27(input)) return action27(action_arg);
1954
+ if (check28(input)) return action28(action_arg);
1955
+ if (check29(input)) return action29(action_arg);
1956
+ if (check30(input)) return action30(action_arg);
1957
+ if (check31(input)) return action31(action_arg);
1958
+ if (check32(input)) return action32(action_arg);
1959
+ if (check33(input)) return action33(action_arg);
1960
+ if (check34(input)) return action34(action_arg);
1961
+ if (check35(input)) return action35(action_arg);
1962
+ if (check36(input)) return action36(action_arg);
1963
+ if (check37(input)) return action37(action_arg);
1964
+ if (check38(input)) return action38(action_arg);
1965
+ if (check39(input)) return action39(action_arg);
1966
+ return action_fail(action_arg);
1967
+ }
1968
+
1969
+ template <
1970
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
1971
+ typename Check1, typename Check2, typename Check3, typename Check4,
1972
+ typename Check5, typename Check6, typename Check7, typename Check8,
1973
+ typename Check9, typename Check10, typename Check11, typename Check12,
1974
+ typename Check13, typename Check14, typename Check15, typename Check16,
1975
+ typename Check17, typename Check18, typename Check19, typename Check20,
1976
+ typename Check21, typename Check22, typename Check23, typename Check24,
1977
+ typename Check25, typename Check26, typename Check27, typename Check28,
1978
+ typename Check29, typename Check30, typename Check31, typename Check32,
1979
+ typename Check33, typename Check34, typename Check35, typename Check36,
1980
+ typename Check37, typename Check38, typename Check39, typename Check40,
1981
+ typename Action0, typename Action1, typename Action2, typename Action3,
1982
+ typename Action4, typename Action5, typename Action6, typename Action7,
1983
+ typename Action8, typename Action9, typename Action10, typename Action11,
1984
+ typename Action12, typename Action13, typename Action14, typename Action15,
1985
+ typename Action16, typename Action17, typename Action18, typename Action19,
1986
+ typename Action20, typename Action21, typename Action22, typename Action23,
1987
+ typename Action24, typename Action25, typename Action26, typename Action27,
1988
+ typename Action28, typename Action29, typename Action30, typename Action31,
1989
+ typename Action32, typename Action33, typename Action34, typename Action35,
1990
+ typename Action36, typename Action37, typename Action38, typename Action39,
1991
+ typename Action40>
1992
+ auto IfList(
1993
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
1994
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
1995
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
1996
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
1997
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
1998
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
1999
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
2000
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
2001
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
2002
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
2003
+ Check39 check39, Check40 check40, Action0 action0, Action1 action1,
2004
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
2005
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
2006
+ Action10 action10, Action11 action11, Action12 action12, Action13 action13,
2007
+ Action14 action14, Action15 action15, Action16 action16, Action17 action17,
2008
+ Action18 action18, Action19 action19, Action20 action20, Action21 action21,
2009
+ Action22 action22, Action23 action23, Action24 action24, Action25 action25,
2010
+ Action26 action26, Action27 action27, Action28 action28, Action29 action29,
2011
+ Action30 action30, Action31 action31, Action32 action32, Action33 action33,
2012
+ Action34 action34, Action35 action35, Action36 action36, Action37 action37,
2013
+ Action38 action38, Action39 action39, Action40 action40) {
2014
+ if (check0(input)) return action0(action_arg);
2015
+ if (check1(input)) return action1(action_arg);
2016
+ if (check2(input)) return action2(action_arg);
2017
+ if (check3(input)) return action3(action_arg);
2018
+ if (check4(input)) return action4(action_arg);
2019
+ if (check5(input)) return action5(action_arg);
2020
+ if (check6(input)) return action6(action_arg);
2021
+ if (check7(input)) return action7(action_arg);
2022
+ if (check8(input)) return action8(action_arg);
2023
+ if (check9(input)) return action9(action_arg);
2024
+ if (check10(input)) return action10(action_arg);
2025
+ if (check11(input)) return action11(action_arg);
2026
+ if (check12(input)) return action12(action_arg);
2027
+ if (check13(input)) return action13(action_arg);
2028
+ if (check14(input)) return action14(action_arg);
2029
+ if (check15(input)) return action15(action_arg);
2030
+ if (check16(input)) return action16(action_arg);
2031
+ if (check17(input)) return action17(action_arg);
2032
+ if (check18(input)) return action18(action_arg);
2033
+ if (check19(input)) return action19(action_arg);
2034
+ if (check20(input)) return action20(action_arg);
2035
+ if (check21(input)) return action21(action_arg);
2036
+ if (check22(input)) return action22(action_arg);
2037
+ if (check23(input)) return action23(action_arg);
2038
+ if (check24(input)) return action24(action_arg);
2039
+ if (check25(input)) return action25(action_arg);
2040
+ if (check26(input)) return action26(action_arg);
2041
+ if (check27(input)) return action27(action_arg);
2042
+ if (check28(input)) return action28(action_arg);
2043
+ if (check29(input)) return action29(action_arg);
2044
+ if (check30(input)) return action30(action_arg);
2045
+ if (check31(input)) return action31(action_arg);
2046
+ if (check32(input)) return action32(action_arg);
2047
+ if (check33(input)) return action33(action_arg);
2048
+ if (check34(input)) return action34(action_arg);
2049
+ if (check35(input)) return action35(action_arg);
2050
+ if (check36(input)) return action36(action_arg);
2051
+ if (check37(input)) return action37(action_arg);
2052
+ if (check38(input)) return action38(action_arg);
2053
+ if (check39(input)) return action39(action_arg);
2054
+ if (check40(input)) return action40(action_arg);
2055
+ return action_fail(action_arg);
2056
+ }
2057
+
2058
+ template <
2059
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
2060
+ typename Check1, typename Check2, typename Check3, typename Check4,
2061
+ typename Check5, typename Check6, typename Check7, typename Check8,
2062
+ typename Check9, typename Check10, typename Check11, typename Check12,
2063
+ typename Check13, typename Check14, typename Check15, typename Check16,
2064
+ typename Check17, typename Check18, typename Check19, typename Check20,
2065
+ typename Check21, typename Check22, typename Check23, typename Check24,
2066
+ typename Check25, typename Check26, typename Check27, typename Check28,
2067
+ typename Check29, typename Check30, typename Check31, typename Check32,
2068
+ typename Check33, typename Check34, typename Check35, typename Check36,
2069
+ typename Check37, typename Check38, typename Check39, typename Check40,
2070
+ typename Check41, typename Action0, typename Action1, typename Action2,
2071
+ typename Action3, typename Action4, typename Action5, typename Action6,
2072
+ typename Action7, typename Action8, typename Action9, typename Action10,
2073
+ typename Action11, typename Action12, typename Action13, typename Action14,
2074
+ typename Action15, typename Action16, typename Action17, typename Action18,
2075
+ typename Action19, typename Action20, typename Action21, typename Action22,
2076
+ typename Action23, typename Action24, typename Action25, typename Action26,
2077
+ typename Action27, typename Action28, typename Action29, typename Action30,
2078
+ typename Action31, typename Action32, typename Action33, typename Action34,
2079
+ typename Action35, typename Action36, typename Action37, typename Action38,
2080
+ typename Action39, typename Action40, typename Action41>
2081
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
2082
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
2083
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
2084
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
2085
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
2086
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
2087
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
2088
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
2089
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
2090
+ Check32 check32, Check33 check33, Check34 check34, Check35 check35,
2091
+ Check36 check36, Check37 check37, Check38 check38, Check39 check39,
2092
+ Check40 check40, Check41 check41, Action0 action0, Action1 action1,
2093
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
2094
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
2095
+ Action10 action10, Action11 action11, Action12 action12,
2096
+ Action13 action13, Action14 action14, Action15 action15,
2097
+ Action16 action16, Action17 action17, Action18 action18,
2098
+ Action19 action19, Action20 action20, Action21 action21,
2099
+ Action22 action22, Action23 action23, Action24 action24,
2100
+ Action25 action25, Action26 action26, Action27 action27,
2101
+ Action28 action28, Action29 action29, Action30 action30,
2102
+ Action31 action31, Action32 action32, Action33 action33,
2103
+ Action34 action34, Action35 action35, Action36 action36,
2104
+ Action37 action37, Action38 action38, Action39 action39,
2105
+ Action40 action40, Action41 action41) {
2106
+ if (check0(input)) return action0(action_arg);
2107
+ if (check1(input)) return action1(action_arg);
2108
+ if (check2(input)) return action2(action_arg);
2109
+ if (check3(input)) return action3(action_arg);
2110
+ if (check4(input)) return action4(action_arg);
2111
+ if (check5(input)) return action5(action_arg);
2112
+ if (check6(input)) return action6(action_arg);
2113
+ if (check7(input)) return action7(action_arg);
2114
+ if (check8(input)) return action8(action_arg);
2115
+ if (check9(input)) return action9(action_arg);
2116
+ if (check10(input)) return action10(action_arg);
2117
+ if (check11(input)) return action11(action_arg);
2118
+ if (check12(input)) return action12(action_arg);
2119
+ if (check13(input)) return action13(action_arg);
2120
+ if (check14(input)) return action14(action_arg);
2121
+ if (check15(input)) return action15(action_arg);
2122
+ if (check16(input)) return action16(action_arg);
2123
+ if (check17(input)) return action17(action_arg);
2124
+ if (check18(input)) return action18(action_arg);
2125
+ if (check19(input)) return action19(action_arg);
2126
+ if (check20(input)) return action20(action_arg);
2127
+ if (check21(input)) return action21(action_arg);
2128
+ if (check22(input)) return action22(action_arg);
2129
+ if (check23(input)) return action23(action_arg);
2130
+ if (check24(input)) return action24(action_arg);
2131
+ if (check25(input)) return action25(action_arg);
2132
+ if (check26(input)) return action26(action_arg);
2133
+ if (check27(input)) return action27(action_arg);
2134
+ if (check28(input)) return action28(action_arg);
2135
+ if (check29(input)) return action29(action_arg);
2136
+ if (check30(input)) return action30(action_arg);
2137
+ if (check31(input)) return action31(action_arg);
2138
+ if (check32(input)) return action32(action_arg);
2139
+ if (check33(input)) return action33(action_arg);
2140
+ if (check34(input)) return action34(action_arg);
2141
+ if (check35(input)) return action35(action_arg);
2142
+ if (check36(input)) return action36(action_arg);
2143
+ if (check37(input)) return action37(action_arg);
2144
+ if (check38(input)) return action38(action_arg);
2145
+ if (check39(input)) return action39(action_arg);
2146
+ if (check40(input)) return action40(action_arg);
2147
+ if (check41(input)) return action41(action_arg);
2148
+ return action_fail(action_arg);
2149
+ }
2150
+
2151
+ template <
2152
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
2153
+ typename Check1, typename Check2, typename Check3, typename Check4,
2154
+ typename Check5, typename Check6, typename Check7, typename Check8,
2155
+ typename Check9, typename Check10, typename Check11, typename Check12,
2156
+ typename Check13, typename Check14, typename Check15, typename Check16,
2157
+ typename Check17, typename Check18, typename Check19, typename Check20,
2158
+ typename Check21, typename Check22, typename Check23, typename Check24,
2159
+ typename Check25, typename Check26, typename Check27, typename Check28,
2160
+ typename Check29, typename Check30, typename Check31, typename Check32,
2161
+ typename Check33, typename Check34, typename Check35, typename Check36,
2162
+ typename Check37, typename Check38, typename Check39, typename Check40,
2163
+ typename Check41, typename Check42, typename Action0, typename Action1,
2164
+ typename Action2, typename Action3, typename Action4, typename Action5,
2165
+ typename Action6, typename Action7, typename Action8, typename Action9,
2166
+ typename Action10, typename Action11, typename Action12, typename Action13,
2167
+ typename Action14, typename Action15, typename Action16, typename Action17,
2168
+ typename Action18, typename Action19, typename Action20, typename Action21,
2169
+ typename Action22, typename Action23, typename Action24, typename Action25,
2170
+ typename Action26, typename Action27, typename Action28, typename Action29,
2171
+ typename Action30, typename Action31, typename Action32, typename Action33,
2172
+ typename Action34, typename Action35, typename Action36, typename Action37,
2173
+ typename Action38, typename Action39, typename Action40, typename Action41,
2174
+ typename Action42>
2175
+ auto IfList(
2176
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
2177
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
2178
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
2179
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
2180
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
2181
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
2182
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
2183
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
2184
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
2185
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
2186
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
2187
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
2188
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
2189
+ Action8 action8, Action9 action9, Action10 action10, Action11 action11,
2190
+ Action12 action12, Action13 action13, Action14 action14, Action15 action15,
2191
+ Action16 action16, Action17 action17, Action18 action18, Action19 action19,
2192
+ Action20 action20, Action21 action21, Action22 action22, Action23 action23,
2193
+ Action24 action24, Action25 action25, Action26 action26, Action27 action27,
2194
+ Action28 action28, Action29 action29, Action30 action30, Action31 action31,
2195
+ Action32 action32, Action33 action33, Action34 action34, Action35 action35,
2196
+ Action36 action36, Action37 action37, Action38 action38, Action39 action39,
2197
+ Action40 action40, Action41 action41, Action42 action42) {
2198
+ if (check0(input)) return action0(action_arg);
2199
+ if (check1(input)) return action1(action_arg);
2200
+ if (check2(input)) return action2(action_arg);
2201
+ if (check3(input)) return action3(action_arg);
2202
+ if (check4(input)) return action4(action_arg);
2203
+ if (check5(input)) return action5(action_arg);
2204
+ if (check6(input)) return action6(action_arg);
2205
+ if (check7(input)) return action7(action_arg);
2206
+ if (check8(input)) return action8(action_arg);
2207
+ if (check9(input)) return action9(action_arg);
2208
+ if (check10(input)) return action10(action_arg);
2209
+ if (check11(input)) return action11(action_arg);
2210
+ if (check12(input)) return action12(action_arg);
2211
+ if (check13(input)) return action13(action_arg);
2212
+ if (check14(input)) return action14(action_arg);
2213
+ if (check15(input)) return action15(action_arg);
2214
+ if (check16(input)) return action16(action_arg);
2215
+ if (check17(input)) return action17(action_arg);
2216
+ if (check18(input)) return action18(action_arg);
2217
+ if (check19(input)) return action19(action_arg);
2218
+ if (check20(input)) return action20(action_arg);
2219
+ if (check21(input)) return action21(action_arg);
2220
+ if (check22(input)) return action22(action_arg);
2221
+ if (check23(input)) return action23(action_arg);
2222
+ if (check24(input)) return action24(action_arg);
2223
+ if (check25(input)) return action25(action_arg);
2224
+ if (check26(input)) return action26(action_arg);
2225
+ if (check27(input)) return action27(action_arg);
2226
+ if (check28(input)) return action28(action_arg);
2227
+ if (check29(input)) return action29(action_arg);
2228
+ if (check30(input)) return action30(action_arg);
2229
+ if (check31(input)) return action31(action_arg);
2230
+ if (check32(input)) return action32(action_arg);
2231
+ if (check33(input)) return action33(action_arg);
2232
+ if (check34(input)) return action34(action_arg);
2233
+ if (check35(input)) return action35(action_arg);
2234
+ if (check36(input)) return action36(action_arg);
2235
+ if (check37(input)) return action37(action_arg);
2236
+ if (check38(input)) return action38(action_arg);
2237
+ if (check39(input)) return action39(action_arg);
2238
+ if (check40(input)) return action40(action_arg);
2239
+ if (check41(input)) return action41(action_arg);
2240
+ if (check42(input)) return action42(action_arg);
2241
+ return action_fail(action_arg);
2242
+ }
2243
+
2244
+ template <
2245
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
2246
+ typename Check1, typename Check2, typename Check3, typename Check4,
2247
+ typename Check5, typename Check6, typename Check7, typename Check8,
2248
+ typename Check9, typename Check10, typename Check11, typename Check12,
2249
+ typename Check13, typename Check14, typename Check15, typename Check16,
2250
+ typename Check17, typename Check18, typename Check19, typename Check20,
2251
+ typename Check21, typename Check22, typename Check23, typename Check24,
2252
+ typename Check25, typename Check26, typename Check27, typename Check28,
2253
+ typename Check29, typename Check30, typename Check31, typename Check32,
2254
+ typename Check33, typename Check34, typename Check35, typename Check36,
2255
+ typename Check37, typename Check38, typename Check39, typename Check40,
2256
+ typename Check41, typename Check42, typename Check43, typename Action0,
2257
+ typename Action1, typename Action2, typename Action3, typename Action4,
2258
+ typename Action5, typename Action6, typename Action7, typename Action8,
2259
+ typename Action9, typename Action10, typename Action11, typename Action12,
2260
+ typename Action13, typename Action14, typename Action15, typename Action16,
2261
+ typename Action17, typename Action18, typename Action19, typename Action20,
2262
+ typename Action21, typename Action22, typename Action23, typename Action24,
2263
+ typename Action25, typename Action26, typename Action27, typename Action28,
2264
+ typename Action29, typename Action30, typename Action31, typename Action32,
2265
+ typename Action33, typename Action34, typename Action35, typename Action36,
2266
+ typename Action37, typename Action38, typename Action39, typename Action40,
2267
+ typename Action41, typename Action42, typename Action43>
2268
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
2269
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
2270
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
2271
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
2272
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
2273
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
2274
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
2275
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
2276
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
2277
+ Check32 check32, Check33 check33, Check34 check34, Check35 check35,
2278
+ Check36 check36, Check37 check37, Check38 check38, Check39 check39,
2279
+ Check40 check40, Check41 check41, Check42 check42, Check43 check43,
2280
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
2281
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
2282
+ Action8 action8, Action9 action9, Action10 action10,
2283
+ Action11 action11, Action12 action12, Action13 action13,
2284
+ Action14 action14, Action15 action15, Action16 action16,
2285
+ Action17 action17, Action18 action18, Action19 action19,
2286
+ Action20 action20, Action21 action21, Action22 action22,
2287
+ Action23 action23, Action24 action24, Action25 action25,
2288
+ Action26 action26, Action27 action27, Action28 action28,
2289
+ Action29 action29, Action30 action30, Action31 action31,
2290
+ Action32 action32, Action33 action33, Action34 action34,
2291
+ Action35 action35, Action36 action36, Action37 action37,
2292
+ Action38 action38, Action39 action39, Action40 action40,
2293
+ Action41 action41, Action42 action42, Action43 action43) {
2294
+ if (check0(input)) return action0(action_arg);
2295
+ if (check1(input)) return action1(action_arg);
2296
+ if (check2(input)) return action2(action_arg);
2297
+ if (check3(input)) return action3(action_arg);
2298
+ if (check4(input)) return action4(action_arg);
2299
+ if (check5(input)) return action5(action_arg);
2300
+ if (check6(input)) return action6(action_arg);
2301
+ if (check7(input)) return action7(action_arg);
2302
+ if (check8(input)) return action8(action_arg);
2303
+ if (check9(input)) return action9(action_arg);
2304
+ if (check10(input)) return action10(action_arg);
2305
+ if (check11(input)) return action11(action_arg);
2306
+ if (check12(input)) return action12(action_arg);
2307
+ if (check13(input)) return action13(action_arg);
2308
+ if (check14(input)) return action14(action_arg);
2309
+ if (check15(input)) return action15(action_arg);
2310
+ if (check16(input)) return action16(action_arg);
2311
+ if (check17(input)) return action17(action_arg);
2312
+ if (check18(input)) return action18(action_arg);
2313
+ if (check19(input)) return action19(action_arg);
2314
+ if (check20(input)) return action20(action_arg);
2315
+ if (check21(input)) return action21(action_arg);
2316
+ if (check22(input)) return action22(action_arg);
2317
+ if (check23(input)) return action23(action_arg);
2318
+ if (check24(input)) return action24(action_arg);
2319
+ if (check25(input)) return action25(action_arg);
2320
+ if (check26(input)) return action26(action_arg);
2321
+ if (check27(input)) return action27(action_arg);
2322
+ if (check28(input)) return action28(action_arg);
2323
+ if (check29(input)) return action29(action_arg);
2324
+ if (check30(input)) return action30(action_arg);
2325
+ if (check31(input)) return action31(action_arg);
2326
+ if (check32(input)) return action32(action_arg);
2327
+ if (check33(input)) return action33(action_arg);
2328
+ if (check34(input)) return action34(action_arg);
2329
+ if (check35(input)) return action35(action_arg);
2330
+ if (check36(input)) return action36(action_arg);
2331
+ if (check37(input)) return action37(action_arg);
2332
+ if (check38(input)) return action38(action_arg);
2333
+ if (check39(input)) return action39(action_arg);
2334
+ if (check40(input)) return action40(action_arg);
2335
+ if (check41(input)) return action41(action_arg);
2336
+ if (check42(input)) return action42(action_arg);
2337
+ if (check43(input)) return action43(action_arg);
2338
+ return action_fail(action_arg);
2339
+ }
2340
+
2341
+ template <
2342
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
2343
+ typename Check1, typename Check2, typename Check3, typename Check4,
2344
+ typename Check5, typename Check6, typename Check7, typename Check8,
2345
+ typename Check9, typename Check10, typename Check11, typename Check12,
2346
+ typename Check13, typename Check14, typename Check15, typename Check16,
2347
+ typename Check17, typename Check18, typename Check19, typename Check20,
2348
+ typename Check21, typename Check22, typename Check23, typename Check24,
2349
+ typename Check25, typename Check26, typename Check27, typename Check28,
2350
+ typename Check29, typename Check30, typename Check31, typename Check32,
2351
+ typename Check33, typename Check34, typename Check35, typename Check36,
2352
+ typename Check37, typename Check38, typename Check39, typename Check40,
2353
+ typename Check41, typename Check42, typename Check43, typename Check44,
2354
+ typename Action0, typename Action1, typename Action2, typename Action3,
2355
+ typename Action4, typename Action5, typename Action6, typename Action7,
2356
+ typename Action8, typename Action9, typename Action10, typename Action11,
2357
+ typename Action12, typename Action13, typename Action14, typename Action15,
2358
+ typename Action16, typename Action17, typename Action18, typename Action19,
2359
+ typename Action20, typename Action21, typename Action22, typename Action23,
2360
+ typename Action24, typename Action25, typename Action26, typename Action27,
2361
+ typename Action28, typename Action29, typename Action30, typename Action31,
2362
+ typename Action32, typename Action33, typename Action34, typename Action35,
2363
+ typename Action36, typename Action37, typename Action38, typename Action39,
2364
+ typename Action40, typename Action41, typename Action42, typename Action43,
2365
+ typename Action44>
2366
+ auto IfList(
2367
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
2368
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
2369
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
2370
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
2371
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
2372
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
2373
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
2374
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
2375
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
2376
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
2377
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
2378
+ Check43 check43, Check44 check44, Action0 action0, Action1 action1,
2379
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
2380
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
2381
+ Action10 action10, Action11 action11, Action12 action12, Action13 action13,
2382
+ Action14 action14, Action15 action15, Action16 action16, Action17 action17,
2383
+ Action18 action18, Action19 action19, Action20 action20, Action21 action21,
2384
+ Action22 action22, Action23 action23, Action24 action24, Action25 action25,
2385
+ Action26 action26, Action27 action27, Action28 action28, Action29 action29,
2386
+ Action30 action30, Action31 action31, Action32 action32, Action33 action33,
2387
+ Action34 action34, Action35 action35, Action36 action36, Action37 action37,
2388
+ Action38 action38, Action39 action39, Action40 action40, Action41 action41,
2389
+ Action42 action42, Action43 action43, Action44 action44) {
2390
+ if (check0(input)) return action0(action_arg);
2391
+ if (check1(input)) return action1(action_arg);
2392
+ if (check2(input)) return action2(action_arg);
2393
+ if (check3(input)) return action3(action_arg);
2394
+ if (check4(input)) return action4(action_arg);
2395
+ if (check5(input)) return action5(action_arg);
2396
+ if (check6(input)) return action6(action_arg);
2397
+ if (check7(input)) return action7(action_arg);
2398
+ if (check8(input)) return action8(action_arg);
2399
+ if (check9(input)) return action9(action_arg);
2400
+ if (check10(input)) return action10(action_arg);
2401
+ if (check11(input)) return action11(action_arg);
2402
+ if (check12(input)) return action12(action_arg);
2403
+ if (check13(input)) return action13(action_arg);
2404
+ if (check14(input)) return action14(action_arg);
2405
+ if (check15(input)) return action15(action_arg);
2406
+ if (check16(input)) return action16(action_arg);
2407
+ if (check17(input)) return action17(action_arg);
2408
+ if (check18(input)) return action18(action_arg);
2409
+ if (check19(input)) return action19(action_arg);
2410
+ if (check20(input)) return action20(action_arg);
2411
+ if (check21(input)) return action21(action_arg);
2412
+ if (check22(input)) return action22(action_arg);
2413
+ if (check23(input)) return action23(action_arg);
2414
+ if (check24(input)) return action24(action_arg);
2415
+ if (check25(input)) return action25(action_arg);
2416
+ if (check26(input)) return action26(action_arg);
2417
+ if (check27(input)) return action27(action_arg);
2418
+ if (check28(input)) return action28(action_arg);
2419
+ if (check29(input)) return action29(action_arg);
2420
+ if (check30(input)) return action30(action_arg);
2421
+ if (check31(input)) return action31(action_arg);
2422
+ if (check32(input)) return action32(action_arg);
2423
+ if (check33(input)) return action33(action_arg);
2424
+ if (check34(input)) return action34(action_arg);
2425
+ if (check35(input)) return action35(action_arg);
2426
+ if (check36(input)) return action36(action_arg);
2427
+ if (check37(input)) return action37(action_arg);
2428
+ if (check38(input)) return action38(action_arg);
2429
+ if (check39(input)) return action39(action_arg);
2430
+ if (check40(input)) return action40(action_arg);
2431
+ if (check41(input)) return action41(action_arg);
2432
+ if (check42(input)) return action42(action_arg);
2433
+ if (check43(input)) return action43(action_arg);
2434
+ if (check44(input)) return action44(action_arg);
2435
+ return action_fail(action_arg);
2436
+ }
2437
+
2438
+ template <
2439
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
2440
+ typename Check1, typename Check2, typename Check3, typename Check4,
2441
+ typename Check5, typename Check6, typename Check7, typename Check8,
2442
+ typename Check9, typename Check10, typename Check11, typename Check12,
2443
+ typename Check13, typename Check14, typename Check15, typename Check16,
2444
+ typename Check17, typename Check18, typename Check19, typename Check20,
2445
+ typename Check21, typename Check22, typename Check23, typename Check24,
2446
+ typename Check25, typename Check26, typename Check27, typename Check28,
2447
+ typename Check29, typename Check30, typename Check31, typename Check32,
2448
+ typename Check33, typename Check34, typename Check35, typename Check36,
2449
+ typename Check37, typename Check38, typename Check39, typename Check40,
2450
+ typename Check41, typename Check42, typename Check43, typename Check44,
2451
+ typename Check45, typename Action0, typename Action1, typename Action2,
2452
+ typename Action3, typename Action4, typename Action5, typename Action6,
2453
+ typename Action7, typename Action8, typename Action9, typename Action10,
2454
+ typename Action11, typename Action12, typename Action13, typename Action14,
2455
+ typename Action15, typename Action16, typename Action17, typename Action18,
2456
+ typename Action19, typename Action20, typename Action21, typename Action22,
2457
+ typename Action23, typename Action24, typename Action25, typename Action26,
2458
+ typename Action27, typename Action28, typename Action29, typename Action30,
2459
+ typename Action31, typename Action32, typename Action33, typename Action34,
2460
+ typename Action35, typename Action36, typename Action37, typename Action38,
2461
+ typename Action39, typename Action40, typename Action41, typename Action42,
2462
+ typename Action43, typename Action44, typename Action45>
2463
+ auto IfList(CheckArg input, ActionArg action_arg, ActionFail action_fail,
2464
+ Check0 check0, Check1 check1, Check2 check2, Check3 check3,
2465
+ Check4 check4, Check5 check5, Check6 check6, Check7 check7,
2466
+ Check8 check8, Check9 check9, Check10 check10, Check11 check11,
2467
+ Check12 check12, Check13 check13, Check14 check14, Check15 check15,
2468
+ Check16 check16, Check17 check17, Check18 check18, Check19 check19,
2469
+ Check20 check20, Check21 check21, Check22 check22, Check23 check23,
2470
+ Check24 check24, Check25 check25, Check26 check26, Check27 check27,
2471
+ Check28 check28, Check29 check29, Check30 check30, Check31 check31,
2472
+ Check32 check32, Check33 check33, Check34 check34, Check35 check35,
2473
+ Check36 check36, Check37 check37, Check38 check38, Check39 check39,
2474
+ Check40 check40, Check41 check41, Check42 check42, Check43 check43,
2475
+ Check44 check44, Check45 check45, Action0 action0, Action1 action1,
2476
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
2477
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
2478
+ Action10 action10, Action11 action11, Action12 action12,
2479
+ Action13 action13, Action14 action14, Action15 action15,
2480
+ Action16 action16, Action17 action17, Action18 action18,
2481
+ Action19 action19, Action20 action20, Action21 action21,
2482
+ Action22 action22, Action23 action23, Action24 action24,
2483
+ Action25 action25, Action26 action26, Action27 action27,
2484
+ Action28 action28, Action29 action29, Action30 action30,
2485
+ Action31 action31, Action32 action32, Action33 action33,
2486
+ Action34 action34, Action35 action35, Action36 action36,
2487
+ Action37 action37, Action38 action38, Action39 action39,
2488
+ Action40 action40, Action41 action41, Action42 action42,
2489
+ Action43 action43, Action44 action44, Action45 action45) {
2490
+ if (check0(input)) return action0(action_arg);
2491
+ if (check1(input)) return action1(action_arg);
2492
+ if (check2(input)) return action2(action_arg);
2493
+ if (check3(input)) return action3(action_arg);
2494
+ if (check4(input)) return action4(action_arg);
2495
+ if (check5(input)) return action5(action_arg);
2496
+ if (check6(input)) return action6(action_arg);
2497
+ if (check7(input)) return action7(action_arg);
2498
+ if (check8(input)) return action8(action_arg);
2499
+ if (check9(input)) return action9(action_arg);
2500
+ if (check10(input)) return action10(action_arg);
2501
+ if (check11(input)) return action11(action_arg);
2502
+ if (check12(input)) return action12(action_arg);
2503
+ if (check13(input)) return action13(action_arg);
2504
+ if (check14(input)) return action14(action_arg);
2505
+ if (check15(input)) return action15(action_arg);
2506
+ if (check16(input)) return action16(action_arg);
2507
+ if (check17(input)) return action17(action_arg);
2508
+ if (check18(input)) return action18(action_arg);
2509
+ if (check19(input)) return action19(action_arg);
2510
+ if (check20(input)) return action20(action_arg);
2511
+ if (check21(input)) return action21(action_arg);
2512
+ if (check22(input)) return action22(action_arg);
2513
+ if (check23(input)) return action23(action_arg);
2514
+ if (check24(input)) return action24(action_arg);
2515
+ if (check25(input)) return action25(action_arg);
2516
+ if (check26(input)) return action26(action_arg);
2517
+ if (check27(input)) return action27(action_arg);
2518
+ if (check28(input)) return action28(action_arg);
2519
+ if (check29(input)) return action29(action_arg);
2520
+ if (check30(input)) return action30(action_arg);
2521
+ if (check31(input)) return action31(action_arg);
2522
+ if (check32(input)) return action32(action_arg);
2523
+ if (check33(input)) return action33(action_arg);
2524
+ if (check34(input)) return action34(action_arg);
2525
+ if (check35(input)) return action35(action_arg);
2526
+ if (check36(input)) return action36(action_arg);
2527
+ if (check37(input)) return action37(action_arg);
2528
+ if (check38(input)) return action38(action_arg);
2529
+ if (check39(input)) return action39(action_arg);
2530
+ if (check40(input)) return action40(action_arg);
2531
+ if (check41(input)) return action41(action_arg);
2532
+ if (check42(input)) return action42(action_arg);
2533
+ if (check43(input)) return action43(action_arg);
2534
+ if (check44(input)) return action44(action_arg);
2535
+ if (check45(input)) return action45(action_arg);
2536
+ return action_fail(action_arg);
2537
+ }
2538
+
2539
+ template <
2540
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
2541
+ typename Check1, typename Check2, typename Check3, typename Check4,
2542
+ typename Check5, typename Check6, typename Check7, typename Check8,
2543
+ typename Check9, typename Check10, typename Check11, typename Check12,
2544
+ typename Check13, typename Check14, typename Check15, typename Check16,
2545
+ typename Check17, typename Check18, typename Check19, typename Check20,
2546
+ typename Check21, typename Check22, typename Check23, typename Check24,
2547
+ typename Check25, typename Check26, typename Check27, typename Check28,
2548
+ typename Check29, typename Check30, typename Check31, typename Check32,
2549
+ typename Check33, typename Check34, typename Check35, typename Check36,
2550
+ typename Check37, typename Check38, typename Check39, typename Check40,
2551
+ typename Check41, typename Check42, typename Check43, typename Check44,
2552
+ typename Check45, typename Check46, typename Action0, typename Action1,
2553
+ typename Action2, typename Action3, typename Action4, typename Action5,
2554
+ typename Action6, typename Action7, typename Action8, typename Action9,
2555
+ typename Action10, typename Action11, typename Action12, typename Action13,
2556
+ typename Action14, typename Action15, typename Action16, typename Action17,
2557
+ typename Action18, typename Action19, typename Action20, typename Action21,
2558
+ typename Action22, typename Action23, typename Action24, typename Action25,
2559
+ typename Action26, typename Action27, typename Action28, typename Action29,
2560
+ typename Action30, typename Action31, typename Action32, typename Action33,
2561
+ typename Action34, typename Action35, typename Action36, typename Action37,
2562
+ typename Action38, typename Action39, typename Action40, typename Action41,
2563
+ typename Action42, typename Action43, typename Action44, typename Action45,
2564
+ typename Action46>
2565
+ auto IfList(
2566
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
2567
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
2568
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
2569
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
2570
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
2571
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
2572
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
2573
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
2574
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
2575
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
2576
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
2577
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
2578
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
2579
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
2580
+ Action8 action8, Action9 action9, Action10 action10, Action11 action11,
2581
+ Action12 action12, Action13 action13, Action14 action14, Action15 action15,
2582
+ Action16 action16, Action17 action17, Action18 action18, Action19 action19,
2583
+ Action20 action20, Action21 action21, Action22 action22, Action23 action23,
2584
+ Action24 action24, Action25 action25, Action26 action26, Action27 action27,
2585
+ Action28 action28, Action29 action29, Action30 action30, Action31 action31,
2586
+ Action32 action32, Action33 action33, Action34 action34, Action35 action35,
2587
+ Action36 action36, Action37 action37, Action38 action38, Action39 action39,
2588
+ Action40 action40, Action41 action41, Action42 action42, Action43 action43,
2589
+ Action44 action44, Action45 action45, Action46 action46) {
2590
+ if (check0(input)) return action0(action_arg);
2591
+ if (check1(input)) return action1(action_arg);
2592
+ if (check2(input)) return action2(action_arg);
2593
+ if (check3(input)) return action3(action_arg);
2594
+ if (check4(input)) return action4(action_arg);
2595
+ if (check5(input)) return action5(action_arg);
2596
+ if (check6(input)) return action6(action_arg);
2597
+ if (check7(input)) return action7(action_arg);
2598
+ if (check8(input)) return action8(action_arg);
2599
+ if (check9(input)) return action9(action_arg);
2600
+ if (check10(input)) return action10(action_arg);
2601
+ if (check11(input)) return action11(action_arg);
2602
+ if (check12(input)) return action12(action_arg);
2603
+ if (check13(input)) return action13(action_arg);
2604
+ if (check14(input)) return action14(action_arg);
2605
+ if (check15(input)) return action15(action_arg);
2606
+ if (check16(input)) return action16(action_arg);
2607
+ if (check17(input)) return action17(action_arg);
2608
+ if (check18(input)) return action18(action_arg);
2609
+ if (check19(input)) return action19(action_arg);
2610
+ if (check20(input)) return action20(action_arg);
2611
+ if (check21(input)) return action21(action_arg);
2612
+ if (check22(input)) return action22(action_arg);
2613
+ if (check23(input)) return action23(action_arg);
2614
+ if (check24(input)) return action24(action_arg);
2615
+ if (check25(input)) return action25(action_arg);
2616
+ if (check26(input)) return action26(action_arg);
2617
+ if (check27(input)) return action27(action_arg);
2618
+ if (check28(input)) return action28(action_arg);
2619
+ if (check29(input)) return action29(action_arg);
2620
+ if (check30(input)) return action30(action_arg);
2621
+ if (check31(input)) return action31(action_arg);
2622
+ if (check32(input)) return action32(action_arg);
2623
+ if (check33(input)) return action33(action_arg);
2624
+ if (check34(input)) return action34(action_arg);
2625
+ if (check35(input)) return action35(action_arg);
2626
+ if (check36(input)) return action36(action_arg);
2627
+ if (check37(input)) return action37(action_arg);
2628
+ if (check38(input)) return action38(action_arg);
2629
+ if (check39(input)) return action39(action_arg);
2630
+ if (check40(input)) return action40(action_arg);
2631
+ if (check41(input)) return action41(action_arg);
2632
+ if (check42(input)) return action42(action_arg);
2633
+ if (check43(input)) return action43(action_arg);
2634
+ if (check44(input)) return action44(action_arg);
2635
+ if (check45(input)) return action45(action_arg);
2636
+ if (check46(input)) return action46(action_arg);
2637
+ return action_fail(action_arg);
2638
+ }
2639
+
2640
+ template <
2641
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
2642
+ typename Check1, typename Check2, typename Check3, typename Check4,
2643
+ typename Check5, typename Check6, typename Check7, typename Check8,
2644
+ typename Check9, typename Check10, typename Check11, typename Check12,
2645
+ typename Check13, typename Check14, typename Check15, typename Check16,
2646
+ typename Check17, typename Check18, typename Check19, typename Check20,
2647
+ typename Check21, typename Check22, typename Check23, typename Check24,
2648
+ typename Check25, typename Check26, typename Check27, typename Check28,
2649
+ typename Check29, typename Check30, typename Check31, typename Check32,
2650
+ typename Check33, typename Check34, typename Check35, typename Check36,
2651
+ typename Check37, typename Check38, typename Check39, typename Check40,
2652
+ typename Check41, typename Check42, typename Check43, typename Check44,
2653
+ typename Check45, typename Check46, typename Check47, typename Action0,
2654
+ typename Action1, typename Action2, typename Action3, typename Action4,
2655
+ typename Action5, typename Action6, typename Action7, typename Action8,
2656
+ typename Action9, typename Action10, typename Action11, typename Action12,
2657
+ typename Action13, typename Action14, typename Action15, typename Action16,
2658
+ typename Action17, typename Action18, typename Action19, typename Action20,
2659
+ typename Action21, typename Action22, typename Action23, typename Action24,
2660
+ typename Action25, typename Action26, typename Action27, typename Action28,
2661
+ typename Action29, typename Action30, typename Action31, typename Action32,
2662
+ typename Action33, typename Action34, typename Action35, typename Action36,
2663
+ typename Action37, typename Action38, typename Action39, typename Action40,
2664
+ typename Action41, typename Action42, typename Action43, typename Action44,
2665
+ typename Action45, typename Action46, typename Action47>
2666
+ auto IfList(
2667
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
2668
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
2669
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
2670
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
2671
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
2672
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
2673
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
2674
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
2675
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
2676
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
2677
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
2678
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
2679
+ Check47 check47, Action0 action0, Action1 action1, Action2 action2,
2680
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
2681
+ Action7 action7, Action8 action8, Action9 action9, Action10 action10,
2682
+ Action11 action11, Action12 action12, Action13 action13, Action14 action14,
2683
+ Action15 action15, Action16 action16, Action17 action17, Action18 action18,
2684
+ Action19 action19, Action20 action20, Action21 action21, Action22 action22,
2685
+ Action23 action23, Action24 action24, Action25 action25, Action26 action26,
2686
+ Action27 action27, Action28 action28, Action29 action29, Action30 action30,
2687
+ Action31 action31, Action32 action32, Action33 action33, Action34 action34,
2688
+ Action35 action35, Action36 action36, Action37 action37, Action38 action38,
2689
+ Action39 action39, Action40 action40, Action41 action41, Action42 action42,
2690
+ Action43 action43, Action44 action44, Action45 action45, Action46 action46,
2691
+ Action47 action47) {
2692
+ if (check0(input)) return action0(action_arg);
2693
+ if (check1(input)) return action1(action_arg);
2694
+ if (check2(input)) return action2(action_arg);
2695
+ if (check3(input)) return action3(action_arg);
2696
+ if (check4(input)) return action4(action_arg);
2697
+ if (check5(input)) return action5(action_arg);
2698
+ if (check6(input)) return action6(action_arg);
2699
+ if (check7(input)) return action7(action_arg);
2700
+ if (check8(input)) return action8(action_arg);
2701
+ if (check9(input)) return action9(action_arg);
2702
+ if (check10(input)) return action10(action_arg);
2703
+ if (check11(input)) return action11(action_arg);
2704
+ if (check12(input)) return action12(action_arg);
2705
+ if (check13(input)) return action13(action_arg);
2706
+ if (check14(input)) return action14(action_arg);
2707
+ if (check15(input)) return action15(action_arg);
2708
+ if (check16(input)) return action16(action_arg);
2709
+ if (check17(input)) return action17(action_arg);
2710
+ if (check18(input)) return action18(action_arg);
2711
+ if (check19(input)) return action19(action_arg);
2712
+ if (check20(input)) return action20(action_arg);
2713
+ if (check21(input)) return action21(action_arg);
2714
+ if (check22(input)) return action22(action_arg);
2715
+ if (check23(input)) return action23(action_arg);
2716
+ if (check24(input)) return action24(action_arg);
2717
+ if (check25(input)) return action25(action_arg);
2718
+ if (check26(input)) return action26(action_arg);
2719
+ if (check27(input)) return action27(action_arg);
2720
+ if (check28(input)) return action28(action_arg);
2721
+ if (check29(input)) return action29(action_arg);
2722
+ if (check30(input)) return action30(action_arg);
2723
+ if (check31(input)) return action31(action_arg);
2724
+ if (check32(input)) return action32(action_arg);
2725
+ if (check33(input)) return action33(action_arg);
2726
+ if (check34(input)) return action34(action_arg);
2727
+ if (check35(input)) return action35(action_arg);
2728
+ if (check36(input)) return action36(action_arg);
2729
+ if (check37(input)) return action37(action_arg);
2730
+ if (check38(input)) return action38(action_arg);
2731
+ if (check39(input)) return action39(action_arg);
2732
+ if (check40(input)) return action40(action_arg);
2733
+ if (check41(input)) return action41(action_arg);
2734
+ if (check42(input)) return action42(action_arg);
2735
+ if (check43(input)) return action43(action_arg);
2736
+ if (check44(input)) return action44(action_arg);
2737
+ if (check45(input)) return action45(action_arg);
2738
+ if (check46(input)) return action46(action_arg);
2739
+ if (check47(input)) return action47(action_arg);
2740
+ return action_fail(action_arg);
2741
+ }
2742
+
2743
+ template <
2744
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
2745
+ typename Check1, typename Check2, typename Check3, typename Check4,
2746
+ typename Check5, typename Check6, typename Check7, typename Check8,
2747
+ typename Check9, typename Check10, typename Check11, typename Check12,
2748
+ typename Check13, typename Check14, typename Check15, typename Check16,
2749
+ typename Check17, typename Check18, typename Check19, typename Check20,
2750
+ typename Check21, typename Check22, typename Check23, typename Check24,
2751
+ typename Check25, typename Check26, typename Check27, typename Check28,
2752
+ typename Check29, typename Check30, typename Check31, typename Check32,
2753
+ typename Check33, typename Check34, typename Check35, typename Check36,
2754
+ typename Check37, typename Check38, typename Check39, typename Check40,
2755
+ typename Check41, typename Check42, typename Check43, typename Check44,
2756
+ typename Check45, typename Check46, typename Check47, typename Check48,
2757
+ typename Action0, typename Action1, typename Action2, typename Action3,
2758
+ typename Action4, typename Action5, typename Action6, typename Action7,
2759
+ typename Action8, typename Action9, typename Action10, typename Action11,
2760
+ typename Action12, typename Action13, typename Action14, typename Action15,
2761
+ typename Action16, typename Action17, typename Action18, typename Action19,
2762
+ typename Action20, typename Action21, typename Action22, typename Action23,
2763
+ typename Action24, typename Action25, typename Action26, typename Action27,
2764
+ typename Action28, typename Action29, typename Action30, typename Action31,
2765
+ typename Action32, typename Action33, typename Action34, typename Action35,
2766
+ typename Action36, typename Action37, typename Action38, typename Action39,
2767
+ typename Action40, typename Action41, typename Action42, typename Action43,
2768
+ typename Action44, typename Action45, typename Action46, typename Action47,
2769
+ typename Action48>
2770
+ auto IfList(
2771
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
2772
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
2773
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
2774
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
2775
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
2776
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
2777
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
2778
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
2779
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
2780
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
2781
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
2782
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
2783
+ Check47 check47, Check48 check48, Action0 action0, Action1 action1,
2784
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
2785
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
2786
+ Action10 action10, Action11 action11, Action12 action12, Action13 action13,
2787
+ Action14 action14, Action15 action15, Action16 action16, Action17 action17,
2788
+ Action18 action18, Action19 action19, Action20 action20, Action21 action21,
2789
+ Action22 action22, Action23 action23, Action24 action24, Action25 action25,
2790
+ Action26 action26, Action27 action27, Action28 action28, Action29 action29,
2791
+ Action30 action30, Action31 action31, Action32 action32, Action33 action33,
2792
+ Action34 action34, Action35 action35, Action36 action36, Action37 action37,
2793
+ Action38 action38, Action39 action39, Action40 action40, Action41 action41,
2794
+ Action42 action42, Action43 action43, Action44 action44, Action45 action45,
2795
+ Action46 action46, Action47 action47, Action48 action48) {
2796
+ if (check0(input)) return action0(action_arg);
2797
+ if (check1(input)) return action1(action_arg);
2798
+ if (check2(input)) return action2(action_arg);
2799
+ if (check3(input)) return action3(action_arg);
2800
+ if (check4(input)) return action4(action_arg);
2801
+ if (check5(input)) return action5(action_arg);
2802
+ if (check6(input)) return action6(action_arg);
2803
+ if (check7(input)) return action7(action_arg);
2804
+ if (check8(input)) return action8(action_arg);
2805
+ if (check9(input)) return action9(action_arg);
2806
+ if (check10(input)) return action10(action_arg);
2807
+ if (check11(input)) return action11(action_arg);
2808
+ if (check12(input)) return action12(action_arg);
2809
+ if (check13(input)) return action13(action_arg);
2810
+ if (check14(input)) return action14(action_arg);
2811
+ if (check15(input)) return action15(action_arg);
2812
+ if (check16(input)) return action16(action_arg);
2813
+ if (check17(input)) return action17(action_arg);
2814
+ if (check18(input)) return action18(action_arg);
2815
+ if (check19(input)) return action19(action_arg);
2816
+ if (check20(input)) return action20(action_arg);
2817
+ if (check21(input)) return action21(action_arg);
2818
+ if (check22(input)) return action22(action_arg);
2819
+ if (check23(input)) return action23(action_arg);
2820
+ if (check24(input)) return action24(action_arg);
2821
+ if (check25(input)) return action25(action_arg);
2822
+ if (check26(input)) return action26(action_arg);
2823
+ if (check27(input)) return action27(action_arg);
2824
+ if (check28(input)) return action28(action_arg);
2825
+ if (check29(input)) return action29(action_arg);
2826
+ if (check30(input)) return action30(action_arg);
2827
+ if (check31(input)) return action31(action_arg);
2828
+ if (check32(input)) return action32(action_arg);
2829
+ if (check33(input)) return action33(action_arg);
2830
+ if (check34(input)) return action34(action_arg);
2831
+ if (check35(input)) return action35(action_arg);
2832
+ if (check36(input)) return action36(action_arg);
2833
+ if (check37(input)) return action37(action_arg);
2834
+ if (check38(input)) return action38(action_arg);
2835
+ if (check39(input)) return action39(action_arg);
2836
+ if (check40(input)) return action40(action_arg);
2837
+ if (check41(input)) return action41(action_arg);
2838
+ if (check42(input)) return action42(action_arg);
2839
+ if (check43(input)) return action43(action_arg);
2840
+ if (check44(input)) return action44(action_arg);
2841
+ if (check45(input)) return action45(action_arg);
2842
+ if (check46(input)) return action46(action_arg);
2843
+ if (check47(input)) return action47(action_arg);
2844
+ if (check48(input)) return action48(action_arg);
2845
+ return action_fail(action_arg);
2846
+ }
2847
+
2848
+ template <
2849
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
2850
+ typename Check1, typename Check2, typename Check3, typename Check4,
2851
+ typename Check5, typename Check6, typename Check7, typename Check8,
2852
+ typename Check9, typename Check10, typename Check11, typename Check12,
2853
+ typename Check13, typename Check14, typename Check15, typename Check16,
2854
+ typename Check17, typename Check18, typename Check19, typename Check20,
2855
+ typename Check21, typename Check22, typename Check23, typename Check24,
2856
+ typename Check25, typename Check26, typename Check27, typename Check28,
2857
+ typename Check29, typename Check30, typename Check31, typename Check32,
2858
+ typename Check33, typename Check34, typename Check35, typename Check36,
2859
+ typename Check37, typename Check38, typename Check39, typename Check40,
2860
+ typename Check41, typename Check42, typename Check43, typename Check44,
2861
+ typename Check45, typename Check46, typename Check47, typename Check48,
2862
+ typename Check49, typename Action0, typename Action1, typename Action2,
2863
+ typename Action3, typename Action4, typename Action5, typename Action6,
2864
+ typename Action7, typename Action8, typename Action9, typename Action10,
2865
+ typename Action11, typename Action12, typename Action13, typename Action14,
2866
+ typename Action15, typename Action16, typename Action17, typename Action18,
2867
+ typename Action19, typename Action20, typename Action21, typename Action22,
2868
+ typename Action23, typename Action24, typename Action25, typename Action26,
2869
+ typename Action27, typename Action28, typename Action29, typename Action30,
2870
+ typename Action31, typename Action32, typename Action33, typename Action34,
2871
+ typename Action35, typename Action36, typename Action37, typename Action38,
2872
+ typename Action39, typename Action40, typename Action41, typename Action42,
2873
+ typename Action43, typename Action44, typename Action45, typename Action46,
2874
+ typename Action47, typename Action48, typename Action49>
2875
+ auto IfList(
2876
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
2877
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
2878
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
2879
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
2880
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
2881
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
2882
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
2883
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
2884
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
2885
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
2886
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
2887
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
2888
+ Check47 check47, Check48 check48, Check49 check49, Action0 action0,
2889
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
2890
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
2891
+ Action9 action9, Action10 action10, Action11 action11, Action12 action12,
2892
+ Action13 action13, Action14 action14, Action15 action15, Action16 action16,
2893
+ Action17 action17, Action18 action18, Action19 action19, Action20 action20,
2894
+ Action21 action21, Action22 action22, Action23 action23, Action24 action24,
2895
+ Action25 action25, Action26 action26, Action27 action27, Action28 action28,
2896
+ Action29 action29, Action30 action30, Action31 action31, Action32 action32,
2897
+ Action33 action33, Action34 action34, Action35 action35, Action36 action36,
2898
+ Action37 action37, Action38 action38, Action39 action39, Action40 action40,
2899
+ Action41 action41, Action42 action42, Action43 action43, Action44 action44,
2900
+ Action45 action45, Action46 action46, Action47 action47, Action48 action48,
2901
+ Action49 action49) {
2902
+ if (check0(input)) return action0(action_arg);
2903
+ if (check1(input)) return action1(action_arg);
2904
+ if (check2(input)) return action2(action_arg);
2905
+ if (check3(input)) return action3(action_arg);
2906
+ if (check4(input)) return action4(action_arg);
2907
+ if (check5(input)) return action5(action_arg);
2908
+ if (check6(input)) return action6(action_arg);
2909
+ if (check7(input)) return action7(action_arg);
2910
+ if (check8(input)) return action8(action_arg);
2911
+ if (check9(input)) return action9(action_arg);
2912
+ if (check10(input)) return action10(action_arg);
2913
+ if (check11(input)) return action11(action_arg);
2914
+ if (check12(input)) return action12(action_arg);
2915
+ if (check13(input)) return action13(action_arg);
2916
+ if (check14(input)) return action14(action_arg);
2917
+ if (check15(input)) return action15(action_arg);
2918
+ if (check16(input)) return action16(action_arg);
2919
+ if (check17(input)) return action17(action_arg);
2920
+ if (check18(input)) return action18(action_arg);
2921
+ if (check19(input)) return action19(action_arg);
2922
+ if (check20(input)) return action20(action_arg);
2923
+ if (check21(input)) return action21(action_arg);
2924
+ if (check22(input)) return action22(action_arg);
2925
+ if (check23(input)) return action23(action_arg);
2926
+ if (check24(input)) return action24(action_arg);
2927
+ if (check25(input)) return action25(action_arg);
2928
+ if (check26(input)) return action26(action_arg);
2929
+ if (check27(input)) return action27(action_arg);
2930
+ if (check28(input)) return action28(action_arg);
2931
+ if (check29(input)) return action29(action_arg);
2932
+ if (check30(input)) return action30(action_arg);
2933
+ if (check31(input)) return action31(action_arg);
2934
+ if (check32(input)) return action32(action_arg);
2935
+ if (check33(input)) return action33(action_arg);
2936
+ if (check34(input)) return action34(action_arg);
2937
+ if (check35(input)) return action35(action_arg);
2938
+ if (check36(input)) return action36(action_arg);
2939
+ if (check37(input)) return action37(action_arg);
2940
+ if (check38(input)) return action38(action_arg);
2941
+ if (check39(input)) return action39(action_arg);
2942
+ if (check40(input)) return action40(action_arg);
2943
+ if (check41(input)) return action41(action_arg);
2944
+ if (check42(input)) return action42(action_arg);
2945
+ if (check43(input)) return action43(action_arg);
2946
+ if (check44(input)) return action44(action_arg);
2947
+ if (check45(input)) return action45(action_arg);
2948
+ if (check46(input)) return action46(action_arg);
2949
+ if (check47(input)) return action47(action_arg);
2950
+ if (check48(input)) return action48(action_arg);
2951
+ if (check49(input)) return action49(action_arg);
2952
+ return action_fail(action_arg);
2953
+ }
2954
+
2955
+ template <
2956
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
2957
+ typename Check1, typename Check2, typename Check3, typename Check4,
2958
+ typename Check5, typename Check6, typename Check7, typename Check8,
2959
+ typename Check9, typename Check10, typename Check11, typename Check12,
2960
+ typename Check13, typename Check14, typename Check15, typename Check16,
2961
+ typename Check17, typename Check18, typename Check19, typename Check20,
2962
+ typename Check21, typename Check22, typename Check23, typename Check24,
2963
+ typename Check25, typename Check26, typename Check27, typename Check28,
2964
+ typename Check29, typename Check30, typename Check31, typename Check32,
2965
+ typename Check33, typename Check34, typename Check35, typename Check36,
2966
+ typename Check37, typename Check38, typename Check39, typename Check40,
2967
+ typename Check41, typename Check42, typename Check43, typename Check44,
2968
+ typename Check45, typename Check46, typename Check47, typename Check48,
2969
+ typename Check49, typename Check50, typename Action0, typename Action1,
2970
+ typename Action2, typename Action3, typename Action4, typename Action5,
2971
+ typename Action6, typename Action7, typename Action8, typename Action9,
2972
+ typename Action10, typename Action11, typename Action12, typename Action13,
2973
+ typename Action14, typename Action15, typename Action16, typename Action17,
2974
+ typename Action18, typename Action19, typename Action20, typename Action21,
2975
+ typename Action22, typename Action23, typename Action24, typename Action25,
2976
+ typename Action26, typename Action27, typename Action28, typename Action29,
2977
+ typename Action30, typename Action31, typename Action32, typename Action33,
2978
+ typename Action34, typename Action35, typename Action36, typename Action37,
2979
+ typename Action38, typename Action39, typename Action40, typename Action41,
2980
+ typename Action42, typename Action43, typename Action44, typename Action45,
2981
+ typename Action46, typename Action47, typename Action48, typename Action49,
2982
+ typename Action50>
2983
+ auto IfList(
2984
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
2985
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
2986
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
2987
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
2988
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
2989
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
2990
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
2991
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
2992
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
2993
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
2994
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
2995
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
2996
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
2997
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
2998
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
2999
+ Action8 action8, Action9 action9, Action10 action10, Action11 action11,
3000
+ Action12 action12, Action13 action13, Action14 action14, Action15 action15,
3001
+ Action16 action16, Action17 action17, Action18 action18, Action19 action19,
3002
+ Action20 action20, Action21 action21, Action22 action22, Action23 action23,
3003
+ Action24 action24, Action25 action25, Action26 action26, Action27 action27,
3004
+ Action28 action28, Action29 action29, Action30 action30, Action31 action31,
3005
+ Action32 action32, Action33 action33, Action34 action34, Action35 action35,
3006
+ Action36 action36, Action37 action37, Action38 action38, Action39 action39,
3007
+ Action40 action40, Action41 action41, Action42 action42, Action43 action43,
3008
+ Action44 action44, Action45 action45, Action46 action46, Action47 action47,
3009
+ Action48 action48, Action49 action49, Action50 action50) {
3010
+ if (check0(input)) return action0(action_arg);
3011
+ if (check1(input)) return action1(action_arg);
3012
+ if (check2(input)) return action2(action_arg);
3013
+ if (check3(input)) return action3(action_arg);
3014
+ if (check4(input)) return action4(action_arg);
3015
+ if (check5(input)) return action5(action_arg);
3016
+ if (check6(input)) return action6(action_arg);
3017
+ if (check7(input)) return action7(action_arg);
3018
+ if (check8(input)) return action8(action_arg);
3019
+ if (check9(input)) return action9(action_arg);
3020
+ if (check10(input)) return action10(action_arg);
3021
+ if (check11(input)) return action11(action_arg);
3022
+ if (check12(input)) return action12(action_arg);
3023
+ if (check13(input)) return action13(action_arg);
3024
+ if (check14(input)) return action14(action_arg);
3025
+ if (check15(input)) return action15(action_arg);
3026
+ if (check16(input)) return action16(action_arg);
3027
+ if (check17(input)) return action17(action_arg);
3028
+ if (check18(input)) return action18(action_arg);
3029
+ if (check19(input)) return action19(action_arg);
3030
+ if (check20(input)) return action20(action_arg);
3031
+ if (check21(input)) return action21(action_arg);
3032
+ if (check22(input)) return action22(action_arg);
3033
+ if (check23(input)) return action23(action_arg);
3034
+ if (check24(input)) return action24(action_arg);
3035
+ if (check25(input)) return action25(action_arg);
3036
+ if (check26(input)) return action26(action_arg);
3037
+ if (check27(input)) return action27(action_arg);
3038
+ if (check28(input)) return action28(action_arg);
3039
+ if (check29(input)) return action29(action_arg);
3040
+ if (check30(input)) return action30(action_arg);
3041
+ if (check31(input)) return action31(action_arg);
3042
+ if (check32(input)) return action32(action_arg);
3043
+ if (check33(input)) return action33(action_arg);
3044
+ if (check34(input)) return action34(action_arg);
3045
+ if (check35(input)) return action35(action_arg);
3046
+ if (check36(input)) return action36(action_arg);
3047
+ if (check37(input)) return action37(action_arg);
3048
+ if (check38(input)) return action38(action_arg);
3049
+ if (check39(input)) return action39(action_arg);
3050
+ if (check40(input)) return action40(action_arg);
3051
+ if (check41(input)) return action41(action_arg);
3052
+ if (check42(input)) return action42(action_arg);
3053
+ if (check43(input)) return action43(action_arg);
3054
+ if (check44(input)) return action44(action_arg);
3055
+ if (check45(input)) return action45(action_arg);
3056
+ if (check46(input)) return action46(action_arg);
3057
+ if (check47(input)) return action47(action_arg);
3058
+ if (check48(input)) return action48(action_arg);
3059
+ if (check49(input)) return action49(action_arg);
3060
+ if (check50(input)) return action50(action_arg);
3061
+ return action_fail(action_arg);
3062
+ }
3063
+
3064
+ template <
3065
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
3066
+ typename Check1, typename Check2, typename Check3, typename Check4,
3067
+ typename Check5, typename Check6, typename Check7, typename Check8,
3068
+ typename Check9, typename Check10, typename Check11, typename Check12,
3069
+ typename Check13, typename Check14, typename Check15, typename Check16,
3070
+ typename Check17, typename Check18, typename Check19, typename Check20,
3071
+ typename Check21, typename Check22, typename Check23, typename Check24,
3072
+ typename Check25, typename Check26, typename Check27, typename Check28,
3073
+ typename Check29, typename Check30, typename Check31, typename Check32,
3074
+ typename Check33, typename Check34, typename Check35, typename Check36,
3075
+ typename Check37, typename Check38, typename Check39, typename Check40,
3076
+ typename Check41, typename Check42, typename Check43, typename Check44,
3077
+ typename Check45, typename Check46, typename Check47, typename Check48,
3078
+ typename Check49, typename Check50, typename Check51, typename Action0,
3079
+ typename Action1, typename Action2, typename Action3, typename Action4,
3080
+ typename Action5, typename Action6, typename Action7, typename Action8,
3081
+ typename Action9, typename Action10, typename Action11, typename Action12,
3082
+ typename Action13, typename Action14, typename Action15, typename Action16,
3083
+ typename Action17, typename Action18, typename Action19, typename Action20,
3084
+ typename Action21, typename Action22, typename Action23, typename Action24,
3085
+ typename Action25, typename Action26, typename Action27, typename Action28,
3086
+ typename Action29, typename Action30, typename Action31, typename Action32,
3087
+ typename Action33, typename Action34, typename Action35, typename Action36,
3088
+ typename Action37, typename Action38, typename Action39, typename Action40,
3089
+ typename Action41, typename Action42, typename Action43, typename Action44,
3090
+ typename Action45, typename Action46, typename Action47, typename Action48,
3091
+ typename Action49, typename Action50, typename Action51>
3092
+ auto IfList(
3093
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
3094
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
3095
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
3096
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
3097
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
3098
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
3099
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
3100
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
3101
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
3102
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
3103
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
3104
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
3105
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
3106
+ Check51 check51, Action0 action0, Action1 action1, Action2 action2,
3107
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
3108
+ Action7 action7, Action8 action8, Action9 action9, Action10 action10,
3109
+ Action11 action11, Action12 action12, Action13 action13, Action14 action14,
3110
+ Action15 action15, Action16 action16, Action17 action17, Action18 action18,
3111
+ Action19 action19, Action20 action20, Action21 action21, Action22 action22,
3112
+ Action23 action23, Action24 action24, Action25 action25, Action26 action26,
3113
+ Action27 action27, Action28 action28, Action29 action29, Action30 action30,
3114
+ Action31 action31, Action32 action32, Action33 action33, Action34 action34,
3115
+ Action35 action35, Action36 action36, Action37 action37, Action38 action38,
3116
+ Action39 action39, Action40 action40, Action41 action41, Action42 action42,
3117
+ Action43 action43, Action44 action44, Action45 action45, Action46 action46,
3118
+ Action47 action47, Action48 action48, Action49 action49, Action50 action50,
3119
+ Action51 action51) {
3120
+ if (check0(input)) return action0(action_arg);
3121
+ if (check1(input)) return action1(action_arg);
3122
+ if (check2(input)) return action2(action_arg);
3123
+ if (check3(input)) return action3(action_arg);
3124
+ if (check4(input)) return action4(action_arg);
3125
+ if (check5(input)) return action5(action_arg);
3126
+ if (check6(input)) return action6(action_arg);
3127
+ if (check7(input)) return action7(action_arg);
3128
+ if (check8(input)) return action8(action_arg);
3129
+ if (check9(input)) return action9(action_arg);
3130
+ if (check10(input)) return action10(action_arg);
3131
+ if (check11(input)) return action11(action_arg);
3132
+ if (check12(input)) return action12(action_arg);
3133
+ if (check13(input)) return action13(action_arg);
3134
+ if (check14(input)) return action14(action_arg);
3135
+ if (check15(input)) return action15(action_arg);
3136
+ if (check16(input)) return action16(action_arg);
3137
+ if (check17(input)) return action17(action_arg);
3138
+ if (check18(input)) return action18(action_arg);
3139
+ if (check19(input)) return action19(action_arg);
3140
+ if (check20(input)) return action20(action_arg);
3141
+ if (check21(input)) return action21(action_arg);
3142
+ if (check22(input)) return action22(action_arg);
3143
+ if (check23(input)) return action23(action_arg);
3144
+ if (check24(input)) return action24(action_arg);
3145
+ if (check25(input)) return action25(action_arg);
3146
+ if (check26(input)) return action26(action_arg);
3147
+ if (check27(input)) return action27(action_arg);
3148
+ if (check28(input)) return action28(action_arg);
3149
+ if (check29(input)) return action29(action_arg);
3150
+ if (check30(input)) return action30(action_arg);
3151
+ if (check31(input)) return action31(action_arg);
3152
+ if (check32(input)) return action32(action_arg);
3153
+ if (check33(input)) return action33(action_arg);
3154
+ if (check34(input)) return action34(action_arg);
3155
+ if (check35(input)) return action35(action_arg);
3156
+ if (check36(input)) return action36(action_arg);
3157
+ if (check37(input)) return action37(action_arg);
3158
+ if (check38(input)) return action38(action_arg);
3159
+ if (check39(input)) return action39(action_arg);
3160
+ if (check40(input)) return action40(action_arg);
3161
+ if (check41(input)) return action41(action_arg);
3162
+ if (check42(input)) return action42(action_arg);
3163
+ if (check43(input)) return action43(action_arg);
3164
+ if (check44(input)) return action44(action_arg);
3165
+ if (check45(input)) return action45(action_arg);
3166
+ if (check46(input)) return action46(action_arg);
3167
+ if (check47(input)) return action47(action_arg);
3168
+ if (check48(input)) return action48(action_arg);
3169
+ if (check49(input)) return action49(action_arg);
3170
+ if (check50(input)) return action50(action_arg);
3171
+ if (check51(input)) return action51(action_arg);
3172
+ return action_fail(action_arg);
3173
+ }
3174
+
3175
+ template <
3176
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
3177
+ typename Check1, typename Check2, typename Check3, typename Check4,
3178
+ typename Check5, typename Check6, typename Check7, typename Check8,
3179
+ typename Check9, typename Check10, typename Check11, typename Check12,
3180
+ typename Check13, typename Check14, typename Check15, typename Check16,
3181
+ typename Check17, typename Check18, typename Check19, typename Check20,
3182
+ typename Check21, typename Check22, typename Check23, typename Check24,
3183
+ typename Check25, typename Check26, typename Check27, typename Check28,
3184
+ typename Check29, typename Check30, typename Check31, typename Check32,
3185
+ typename Check33, typename Check34, typename Check35, typename Check36,
3186
+ typename Check37, typename Check38, typename Check39, typename Check40,
3187
+ typename Check41, typename Check42, typename Check43, typename Check44,
3188
+ typename Check45, typename Check46, typename Check47, typename Check48,
3189
+ typename Check49, typename Check50, typename Check51, typename Check52,
3190
+ typename Action0, typename Action1, typename Action2, typename Action3,
3191
+ typename Action4, typename Action5, typename Action6, typename Action7,
3192
+ typename Action8, typename Action9, typename Action10, typename Action11,
3193
+ typename Action12, typename Action13, typename Action14, typename Action15,
3194
+ typename Action16, typename Action17, typename Action18, typename Action19,
3195
+ typename Action20, typename Action21, typename Action22, typename Action23,
3196
+ typename Action24, typename Action25, typename Action26, typename Action27,
3197
+ typename Action28, typename Action29, typename Action30, typename Action31,
3198
+ typename Action32, typename Action33, typename Action34, typename Action35,
3199
+ typename Action36, typename Action37, typename Action38, typename Action39,
3200
+ typename Action40, typename Action41, typename Action42, typename Action43,
3201
+ typename Action44, typename Action45, typename Action46, typename Action47,
3202
+ typename Action48, typename Action49, typename Action50, typename Action51,
3203
+ typename Action52>
3204
+ auto IfList(
3205
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
3206
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
3207
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
3208
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
3209
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
3210
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
3211
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
3212
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
3213
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
3214
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
3215
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
3216
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
3217
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
3218
+ Check51 check51, Check52 check52, Action0 action0, Action1 action1,
3219
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
3220
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
3221
+ Action10 action10, Action11 action11, Action12 action12, Action13 action13,
3222
+ Action14 action14, Action15 action15, Action16 action16, Action17 action17,
3223
+ Action18 action18, Action19 action19, Action20 action20, Action21 action21,
3224
+ Action22 action22, Action23 action23, Action24 action24, Action25 action25,
3225
+ Action26 action26, Action27 action27, Action28 action28, Action29 action29,
3226
+ Action30 action30, Action31 action31, Action32 action32, Action33 action33,
3227
+ Action34 action34, Action35 action35, Action36 action36, Action37 action37,
3228
+ Action38 action38, Action39 action39, Action40 action40, Action41 action41,
3229
+ Action42 action42, Action43 action43, Action44 action44, Action45 action45,
3230
+ Action46 action46, Action47 action47, Action48 action48, Action49 action49,
3231
+ Action50 action50, Action51 action51, Action52 action52) {
3232
+ if (check0(input)) return action0(action_arg);
3233
+ if (check1(input)) return action1(action_arg);
3234
+ if (check2(input)) return action2(action_arg);
3235
+ if (check3(input)) return action3(action_arg);
3236
+ if (check4(input)) return action4(action_arg);
3237
+ if (check5(input)) return action5(action_arg);
3238
+ if (check6(input)) return action6(action_arg);
3239
+ if (check7(input)) return action7(action_arg);
3240
+ if (check8(input)) return action8(action_arg);
3241
+ if (check9(input)) return action9(action_arg);
3242
+ if (check10(input)) return action10(action_arg);
3243
+ if (check11(input)) return action11(action_arg);
3244
+ if (check12(input)) return action12(action_arg);
3245
+ if (check13(input)) return action13(action_arg);
3246
+ if (check14(input)) return action14(action_arg);
3247
+ if (check15(input)) return action15(action_arg);
3248
+ if (check16(input)) return action16(action_arg);
3249
+ if (check17(input)) return action17(action_arg);
3250
+ if (check18(input)) return action18(action_arg);
3251
+ if (check19(input)) return action19(action_arg);
3252
+ if (check20(input)) return action20(action_arg);
3253
+ if (check21(input)) return action21(action_arg);
3254
+ if (check22(input)) return action22(action_arg);
3255
+ if (check23(input)) return action23(action_arg);
3256
+ if (check24(input)) return action24(action_arg);
3257
+ if (check25(input)) return action25(action_arg);
3258
+ if (check26(input)) return action26(action_arg);
3259
+ if (check27(input)) return action27(action_arg);
3260
+ if (check28(input)) return action28(action_arg);
3261
+ if (check29(input)) return action29(action_arg);
3262
+ if (check30(input)) return action30(action_arg);
3263
+ if (check31(input)) return action31(action_arg);
3264
+ if (check32(input)) return action32(action_arg);
3265
+ if (check33(input)) return action33(action_arg);
3266
+ if (check34(input)) return action34(action_arg);
3267
+ if (check35(input)) return action35(action_arg);
3268
+ if (check36(input)) return action36(action_arg);
3269
+ if (check37(input)) return action37(action_arg);
3270
+ if (check38(input)) return action38(action_arg);
3271
+ if (check39(input)) return action39(action_arg);
3272
+ if (check40(input)) return action40(action_arg);
3273
+ if (check41(input)) return action41(action_arg);
3274
+ if (check42(input)) return action42(action_arg);
3275
+ if (check43(input)) return action43(action_arg);
3276
+ if (check44(input)) return action44(action_arg);
3277
+ if (check45(input)) return action45(action_arg);
3278
+ if (check46(input)) return action46(action_arg);
3279
+ if (check47(input)) return action47(action_arg);
3280
+ if (check48(input)) return action48(action_arg);
3281
+ if (check49(input)) return action49(action_arg);
3282
+ if (check50(input)) return action50(action_arg);
3283
+ if (check51(input)) return action51(action_arg);
3284
+ if (check52(input)) return action52(action_arg);
3285
+ return action_fail(action_arg);
3286
+ }
3287
+
3288
+ template <
3289
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
3290
+ typename Check1, typename Check2, typename Check3, typename Check4,
3291
+ typename Check5, typename Check6, typename Check7, typename Check8,
3292
+ typename Check9, typename Check10, typename Check11, typename Check12,
3293
+ typename Check13, typename Check14, typename Check15, typename Check16,
3294
+ typename Check17, typename Check18, typename Check19, typename Check20,
3295
+ typename Check21, typename Check22, typename Check23, typename Check24,
3296
+ typename Check25, typename Check26, typename Check27, typename Check28,
3297
+ typename Check29, typename Check30, typename Check31, typename Check32,
3298
+ typename Check33, typename Check34, typename Check35, typename Check36,
3299
+ typename Check37, typename Check38, typename Check39, typename Check40,
3300
+ typename Check41, typename Check42, typename Check43, typename Check44,
3301
+ typename Check45, typename Check46, typename Check47, typename Check48,
3302
+ typename Check49, typename Check50, typename Check51, typename Check52,
3303
+ typename Check53, typename Action0, typename Action1, typename Action2,
3304
+ typename Action3, typename Action4, typename Action5, typename Action6,
3305
+ typename Action7, typename Action8, typename Action9, typename Action10,
3306
+ typename Action11, typename Action12, typename Action13, typename Action14,
3307
+ typename Action15, typename Action16, typename Action17, typename Action18,
3308
+ typename Action19, typename Action20, typename Action21, typename Action22,
3309
+ typename Action23, typename Action24, typename Action25, typename Action26,
3310
+ typename Action27, typename Action28, typename Action29, typename Action30,
3311
+ typename Action31, typename Action32, typename Action33, typename Action34,
3312
+ typename Action35, typename Action36, typename Action37, typename Action38,
3313
+ typename Action39, typename Action40, typename Action41, typename Action42,
3314
+ typename Action43, typename Action44, typename Action45, typename Action46,
3315
+ typename Action47, typename Action48, typename Action49, typename Action50,
3316
+ typename Action51, typename Action52, typename Action53>
3317
+ auto IfList(
3318
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
3319
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
3320
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
3321
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
3322
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
3323
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
3324
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
3325
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
3326
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
3327
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
3328
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
3329
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
3330
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
3331
+ Check51 check51, Check52 check52, Check53 check53, Action0 action0,
3332
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
3333
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
3334
+ Action9 action9, Action10 action10, Action11 action11, Action12 action12,
3335
+ Action13 action13, Action14 action14, Action15 action15, Action16 action16,
3336
+ Action17 action17, Action18 action18, Action19 action19, Action20 action20,
3337
+ Action21 action21, Action22 action22, Action23 action23, Action24 action24,
3338
+ Action25 action25, Action26 action26, Action27 action27, Action28 action28,
3339
+ Action29 action29, Action30 action30, Action31 action31, Action32 action32,
3340
+ Action33 action33, Action34 action34, Action35 action35, Action36 action36,
3341
+ Action37 action37, Action38 action38, Action39 action39, Action40 action40,
3342
+ Action41 action41, Action42 action42, Action43 action43, Action44 action44,
3343
+ Action45 action45, Action46 action46, Action47 action47, Action48 action48,
3344
+ Action49 action49, Action50 action50, Action51 action51, Action52 action52,
3345
+ Action53 action53) {
3346
+ if (check0(input)) return action0(action_arg);
3347
+ if (check1(input)) return action1(action_arg);
3348
+ if (check2(input)) return action2(action_arg);
3349
+ if (check3(input)) return action3(action_arg);
3350
+ if (check4(input)) return action4(action_arg);
3351
+ if (check5(input)) return action5(action_arg);
3352
+ if (check6(input)) return action6(action_arg);
3353
+ if (check7(input)) return action7(action_arg);
3354
+ if (check8(input)) return action8(action_arg);
3355
+ if (check9(input)) return action9(action_arg);
3356
+ if (check10(input)) return action10(action_arg);
3357
+ if (check11(input)) return action11(action_arg);
3358
+ if (check12(input)) return action12(action_arg);
3359
+ if (check13(input)) return action13(action_arg);
3360
+ if (check14(input)) return action14(action_arg);
3361
+ if (check15(input)) return action15(action_arg);
3362
+ if (check16(input)) return action16(action_arg);
3363
+ if (check17(input)) return action17(action_arg);
3364
+ if (check18(input)) return action18(action_arg);
3365
+ if (check19(input)) return action19(action_arg);
3366
+ if (check20(input)) return action20(action_arg);
3367
+ if (check21(input)) return action21(action_arg);
3368
+ if (check22(input)) return action22(action_arg);
3369
+ if (check23(input)) return action23(action_arg);
3370
+ if (check24(input)) return action24(action_arg);
3371
+ if (check25(input)) return action25(action_arg);
3372
+ if (check26(input)) return action26(action_arg);
3373
+ if (check27(input)) return action27(action_arg);
3374
+ if (check28(input)) return action28(action_arg);
3375
+ if (check29(input)) return action29(action_arg);
3376
+ if (check30(input)) return action30(action_arg);
3377
+ if (check31(input)) return action31(action_arg);
3378
+ if (check32(input)) return action32(action_arg);
3379
+ if (check33(input)) return action33(action_arg);
3380
+ if (check34(input)) return action34(action_arg);
3381
+ if (check35(input)) return action35(action_arg);
3382
+ if (check36(input)) return action36(action_arg);
3383
+ if (check37(input)) return action37(action_arg);
3384
+ if (check38(input)) return action38(action_arg);
3385
+ if (check39(input)) return action39(action_arg);
3386
+ if (check40(input)) return action40(action_arg);
3387
+ if (check41(input)) return action41(action_arg);
3388
+ if (check42(input)) return action42(action_arg);
3389
+ if (check43(input)) return action43(action_arg);
3390
+ if (check44(input)) return action44(action_arg);
3391
+ if (check45(input)) return action45(action_arg);
3392
+ if (check46(input)) return action46(action_arg);
3393
+ if (check47(input)) return action47(action_arg);
3394
+ if (check48(input)) return action48(action_arg);
3395
+ if (check49(input)) return action49(action_arg);
3396
+ if (check50(input)) return action50(action_arg);
3397
+ if (check51(input)) return action51(action_arg);
3398
+ if (check52(input)) return action52(action_arg);
3399
+ if (check53(input)) return action53(action_arg);
3400
+ return action_fail(action_arg);
3401
+ }
3402
+
3403
+ template <
3404
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
3405
+ typename Check1, typename Check2, typename Check3, typename Check4,
3406
+ typename Check5, typename Check6, typename Check7, typename Check8,
3407
+ typename Check9, typename Check10, typename Check11, typename Check12,
3408
+ typename Check13, typename Check14, typename Check15, typename Check16,
3409
+ typename Check17, typename Check18, typename Check19, typename Check20,
3410
+ typename Check21, typename Check22, typename Check23, typename Check24,
3411
+ typename Check25, typename Check26, typename Check27, typename Check28,
3412
+ typename Check29, typename Check30, typename Check31, typename Check32,
3413
+ typename Check33, typename Check34, typename Check35, typename Check36,
3414
+ typename Check37, typename Check38, typename Check39, typename Check40,
3415
+ typename Check41, typename Check42, typename Check43, typename Check44,
3416
+ typename Check45, typename Check46, typename Check47, typename Check48,
3417
+ typename Check49, typename Check50, typename Check51, typename Check52,
3418
+ typename Check53, typename Check54, typename Action0, typename Action1,
3419
+ typename Action2, typename Action3, typename Action4, typename Action5,
3420
+ typename Action6, typename Action7, typename Action8, typename Action9,
3421
+ typename Action10, typename Action11, typename Action12, typename Action13,
3422
+ typename Action14, typename Action15, typename Action16, typename Action17,
3423
+ typename Action18, typename Action19, typename Action20, typename Action21,
3424
+ typename Action22, typename Action23, typename Action24, typename Action25,
3425
+ typename Action26, typename Action27, typename Action28, typename Action29,
3426
+ typename Action30, typename Action31, typename Action32, typename Action33,
3427
+ typename Action34, typename Action35, typename Action36, typename Action37,
3428
+ typename Action38, typename Action39, typename Action40, typename Action41,
3429
+ typename Action42, typename Action43, typename Action44, typename Action45,
3430
+ typename Action46, typename Action47, typename Action48, typename Action49,
3431
+ typename Action50, typename Action51, typename Action52, typename Action53,
3432
+ typename Action54>
3433
+ auto IfList(
3434
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
3435
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
3436
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
3437
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
3438
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
3439
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
3440
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
3441
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
3442
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
3443
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
3444
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
3445
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
3446
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
3447
+ Check51 check51, Check52 check52, Check53 check53, Check54 check54,
3448
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
3449
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
3450
+ Action8 action8, Action9 action9, Action10 action10, Action11 action11,
3451
+ Action12 action12, Action13 action13, Action14 action14, Action15 action15,
3452
+ Action16 action16, Action17 action17, Action18 action18, Action19 action19,
3453
+ Action20 action20, Action21 action21, Action22 action22, Action23 action23,
3454
+ Action24 action24, Action25 action25, Action26 action26, Action27 action27,
3455
+ Action28 action28, Action29 action29, Action30 action30, Action31 action31,
3456
+ Action32 action32, Action33 action33, Action34 action34, Action35 action35,
3457
+ Action36 action36, Action37 action37, Action38 action38, Action39 action39,
3458
+ Action40 action40, Action41 action41, Action42 action42, Action43 action43,
3459
+ Action44 action44, Action45 action45, Action46 action46, Action47 action47,
3460
+ Action48 action48, Action49 action49, Action50 action50, Action51 action51,
3461
+ Action52 action52, Action53 action53, Action54 action54) {
3462
+ if (check0(input)) return action0(action_arg);
3463
+ if (check1(input)) return action1(action_arg);
3464
+ if (check2(input)) return action2(action_arg);
3465
+ if (check3(input)) return action3(action_arg);
3466
+ if (check4(input)) return action4(action_arg);
3467
+ if (check5(input)) return action5(action_arg);
3468
+ if (check6(input)) return action6(action_arg);
3469
+ if (check7(input)) return action7(action_arg);
3470
+ if (check8(input)) return action8(action_arg);
3471
+ if (check9(input)) return action9(action_arg);
3472
+ if (check10(input)) return action10(action_arg);
3473
+ if (check11(input)) return action11(action_arg);
3474
+ if (check12(input)) return action12(action_arg);
3475
+ if (check13(input)) return action13(action_arg);
3476
+ if (check14(input)) return action14(action_arg);
3477
+ if (check15(input)) return action15(action_arg);
3478
+ if (check16(input)) return action16(action_arg);
3479
+ if (check17(input)) return action17(action_arg);
3480
+ if (check18(input)) return action18(action_arg);
3481
+ if (check19(input)) return action19(action_arg);
3482
+ if (check20(input)) return action20(action_arg);
3483
+ if (check21(input)) return action21(action_arg);
3484
+ if (check22(input)) return action22(action_arg);
3485
+ if (check23(input)) return action23(action_arg);
3486
+ if (check24(input)) return action24(action_arg);
3487
+ if (check25(input)) return action25(action_arg);
3488
+ if (check26(input)) return action26(action_arg);
3489
+ if (check27(input)) return action27(action_arg);
3490
+ if (check28(input)) return action28(action_arg);
3491
+ if (check29(input)) return action29(action_arg);
3492
+ if (check30(input)) return action30(action_arg);
3493
+ if (check31(input)) return action31(action_arg);
3494
+ if (check32(input)) return action32(action_arg);
3495
+ if (check33(input)) return action33(action_arg);
3496
+ if (check34(input)) return action34(action_arg);
3497
+ if (check35(input)) return action35(action_arg);
3498
+ if (check36(input)) return action36(action_arg);
3499
+ if (check37(input)) return action37(action_arg);
3500
+ if (check38(input)) return action38(action_arg);
3501
+ if (check39(input)) return action39(action_arg);
3502
+ if (check40(input)) return action40(action_arg);
3503
+ if (check41(input)) return action41(action_arg);
3504
+ if (check42(input)) return action42(action_arg);
3505
+ if (check43(input)) return action43(action_arg);
3506
+ if (check44(input)) return action44(action_arg);
3507
+ if (check45(input)) return action45(action_arg);
3508
+ if (check46(input)) return action46(action_arg);
3509
+ if (check47(input)) return action47(action_arg);
3510
+ if (check48(input)) return action48(action_arg);
3511
+ if (check49(input)) return action49(action_arg);
3512
+ if (check50(input)) return action50(action_arg);
3513
+ if (check51(input)) return action51(action_arg);
3514
+ if (check52(input)) return action52(action_arg);
3515
+ if (check53(input)) return action53(action_arg);
3516
+ if (check54(input)) return action54(action_arg);
3517
+ return action_fail(action_arg);
3518
+ }
3519
+
3520
+ template <
3521
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
3522
+ typename Check1, typename Check2, typename Check3, typename Check4,
3523
+ typename Check5, typename Check6, typename Check7, typename Check8,
3524
+ typename Check9, typename Check10, typename Check11, typename Check12,
3525
+ typename Check13, typename Check14, typename Check15, typename Check16,
3526
+ typename Check17, typename Check18, typename Check19, typename Check20,
3527
+ typename Check21, typename Check22, typename Check23, typename Check24,
3528
+ typename Check25, typename Check26, typename Check27, typename Check28,
3529
+ typename Check29, typename Check30, typename Check31, typename Check32,
3530
+ typename Check33, typename Check34, typename Check35, typename Check36,
3531
+ typename Check37, typename Check38, typename Check39, typename Check40,
3532
+ typename Check41, typename Check42, typename Check43, typename Check44,
3533
+ typename Check45, typename Check46, typename Check47, typename Check48,
3534
+ typename Check49, typename Check50, typename Check51, typename Check52,
3535
+ typename Check53, typename Check54, typename Check55, typename Action0,
3536
+ typename Action1, typename Action2, typename Action3, typename Action4,
3537
+ typename Action5, typename Action6, typename Action7, typename Action8,
3538
+ typename Action9, typename Action10, typename Action11, typename Action12,
3539
+ typename Action13, typename Action14, typename Action15, typename Action16,
3540
+ typename Action17, typename Action18, typename Action19, typename Action20,
3541
+ typename Action21, typename Action22, typename Action23, typename Action24,
3542
+ typename Action25, typename Action26, typename Action27, typename Action28,
3543
+ typename Action29, typename Action30, typename Action31, typename Action32,
3544
+ typename Action33, typename Action34, typename Action35, typename Action36,
3545
+ typename Action37, typename Action38, typename Action39, typename Action40,
3546
+ typename Action41, typename Action42, typename Action43, typename Action44,
3547
+ typename Action45, typename Action46, typename Action47, typename Action48,
3548
+ typename Action49, typename Action50, typename Action51, typename Action52,
3549
+ typename Action53, typename Action54, typename Action55>
3550
+ auto IfList(
3551
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
3552
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
3553
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
3554
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
3555
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
3556
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
3557
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
3558
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
3559
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
3560
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
3561
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
3562
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
3563
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
3564
+ Check51 check51, Check52 check52, Check53 check53, Check54 check54,
3565
+ Check55 check55, Action0 action0, Action1 action1, Action2 action2,
3566
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
3567
+ Action7 action7, Action8 action8, Action9 action9, Action10 action10,
3568
+ Action11 action11, Action12 action12, Action13 action13, Action14 action14,
3569
+ Action15 action15, Action16 action16, Action17 action17, Action18 action18,
3570
+ Action19 action19, Action20 action20, Action21 action21, Action22 action22,
3571
+ Action23 action23, Action24 action24, Action25 action25, Action26 action26,
3572
+ Action27 action27, Action28 action28, Action29 action29, Action30 action30,
3573
+ Action31 action31, Action32 action32, Action33 action33, Action34 action34,
3574
+ Action35 action35, Action36 action36, Action37 action37, Action38 action38,
3575
+ Action39 action39, Action40 action40, Action41 action41, Action42 action42,
3576
+ Action43 action43, Action44 action44, Action45 action45, Action46 action46,
3577
+ Action47 action47, Action48 action48, Action49 action49, Action50 action50,
3578
+ Action51 action51, Action52 action52, Action53 action53, Action54 action54,
3579
+ Action55 action55) {
3580
+ if (check0(input)) return action0(action_arg);
3581
+ if (check1(input)) return action1(action_arg);
3582
+ if (check2(input)) return action2(action_arg);
3583
+ if (check3(input)) return action3(action_arg);
3584
+ if (check4(input)) return action4(action_arg);
3585
+ if (check5(input)) return action5(action_arg);
3586
+ if (check6(input)) return action6(action_arg);
3587
+ if (check7(input)) return action7(action_arg);
3588
+ if (check8(input)) return action8(action_arg);
3589
+ if (check9(input)) return action9(action_arg);
3590
+ if (check10(input)) return action10(action_arg);
3591
+ if (check11(input)) return action11(action_arg);
3592
+ if (check12(input)) return action12(action_arg);
3593
+ if (check13(input)) return action13(action_arg);
3594
+ if (check14(input)) return action14(action_arg);
3595
+ if (check15(input)) return action15(action_arg);
3596
+ if (check16(input)) return action16(action_arg);
3597
+ if (check17(input)) return action17(action_arg);
3598
+ if (check18(input)) return action18(action_arg);
3599
+ if (check19(input)) return action19(action_arg);
3600
+ if (check20(input)) return action20(action_arg);
3601
+ if (check21(input)) return action21(action_arg);
3602
+ if (check22(input)) return action22(action_arg);
3603
+ if (check23(input)) return action23(action_arg);
3604
+ if (check24(input)) return action24(action_arg);
3605
+ if (check25(input)) return action25(action_arg);
3606
+ if (check26(input)) return action26(action_arg);
3607
+ if (check27(input)) return action27(action_arg);
3608
+ if (check28(input)) return action28(action_arg);
3609
+ if (check29(input)) return action29(action_arg);
3610
+ if (check30(input)) return action30(action_arg);
3611
+ if (check31(input)) return action31(action_arg);
3612
+ if (check32(input)) return action32(action_arg);
3613
+ if (check33(input)) return action33(action_arg);
3614
+ if (check34(input)) return action34(action_arg);
3615
+ if (check35(input)) return action35(action_arg);
3616
+ if (check36(input)) return action36(action_arg);
3617
+ if (check37(input)) return action37(action_arg);
3618
+ if (check38(input)) return action38(action_arg);
3619
+ if (check39(input)) return action39(action_arg);
3620
+ if (check40(input)) return action40(action_arg);
3621
+ if (check41(input)) return action41(action_arg);
3622
+ if (check42(input)) return action42(action_arg);
3623
+ if (check43(input)) return action43(action_arg);
3624
+ if (check44(input)) return action44(action_arg);
3625
+ if (check45(input)) return action45(action_arg);
3626
+ if (check46(input)) return action46(action_arg);
3627
+ if (check47(input)) return action47(action_arg);
3628
+ if (check48(input)) return action48(action_arg);
3629
+ if (check49(input)) return action49(action_arg);
3630
+ if (check50(input)) return action50(action_arg);
3631
+ if (check51(input)) return action51(action_arg);
3632
+ if (check52(input)) return action52(action_arg);
3633
+ if (check53(input)) return action53(action_arg);
3634
+ if (check54(input)) return action54(action_arg);
3635
+ if (check55(input)) return action55(action_arg);
3636
+ return action_fail(action_arg);
3637
+ }
3638
+
3639
+ template <
3640
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
3641
+ typename Check1, typename Check2, typename Check3, typename Check4,
3642
+ typename Check5, typename Check6, typename Check7, typename Check8,
3643
+ typename Check9, typename Check10, typename Check11, typename Check12,
3644
+ typename Check13, typename Check14, typename Check15, typename Check16,
3645
+ typename Check17, typename Check18, typename Check19, typename Check20,
3646
+ typename Check21, typename Check22, typename Check23, typename Check24,
3647
+ typename Check25, typename Check26, typename Check27, typename Check28,
3648
+ typename Check29, typename Check30, typename Check31, typename Check32,
3649
+ typename Check33, typename Check34, typename Check35, typename Check36,
3650
+ typename Check37, typename Check38, typename Check39, typename Check40,
3651
+ typename Check41, typename Check42, typename Check43, typename Check44,
3652
+ typename Check45, typename Check46, typename Check47, typename Check48,
3653
+ typename Check49, typename Check50, typename Check51, typename Check52,
3654
+ typename Check53, typename Check54, typename Check55, typename Check56,
3655
+ typename Action0, typename Action1, typename Action2, typename Action3,
3656
+ typename Action4, typename Action5, typename Action6, typename Action7,
3657
+ typename Action8, typename Action9, typename Action10, typename Action11,
3658
+ typename Action12, typename Action13, typename Action14, typename Action15,
3659
+ typename Action16, typename Action17, typename Action18, typename Action19,
3660
+ typename Action20, typename Action21, typename Action22, typename Action23,
3661
+ typename Action24, typename Action25, typename Action26, typename Action27,
3662
+ typename Action28, typename Action29, typename Action30, typename Action31,
3663
+ typename Action32, typename Action33, typename Action34, typename Action35,
3664
+ typename Action36, typename Action37, typename Action38, typename Action39,
3665
+ typename Action40, typename Action41, typename Action42, typename Action43,
3666
+ typename Action44, typename Action45, typename Action46, typename Action47,
3667
+ typename Action48, typename Action49, typename Action50, typename Action51,
3668
+ typename Action52, typename Action53, typename Action54, typename Action55,
3669
+ typename Action56>
3670
+ auto IfList(
3671
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
3672
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
3673
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
3674
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
3675
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
3676
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
3677
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
3678
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
3679
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
3680
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
3681
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
3682
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
3683
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
3684
+ Check51 check51, Check52 check52, Check53 check53, Check54 check54,
3685
+ Check55 check55, Check56 check56, Action0 action0, Action1 action1,
3686
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
3687
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
3688
+ Action10 action10, Action11 action11, Action12 action12, Action13 action13,
3689
+ Action14 action14, Action15 action15, Action16 action16, Action17 action17,
3690
+ Action18 action18, Action19 action19, Action20 action20, Action21 action21,
3691
+ Action22 action22, Action23 action23, Action24 action24, Action25 action25,
3692
+ Action26 action26, Action27 action27, Action28 action28, Action29 action29,
3693
+ Action30 action30, Action31 action31, Action32 action32, Action33 action33,
3694
+ Action34 action34, Action35 action35, Action36 action36, Action37 action37,
3695
+ Action38 action38, Action39 action39, Action40 action40, Action41 action41,
3696
+ Action42 action42, Action43 action43, Action44 action44, Action45 action45,
3697
+ Action46 action46, Action47 action47, Action48 action48, Action49 action49,
3698
+ Action50 action50, Action51 action51, Action52 action52, Action53 action53,
3699
+ Action54 action54, Action55 action55, Action56 action56) {
3700
+ if (check0(input)) return action0(action_arg);
3701
+ if (check1(input)) return action1(action_arg);
3702
+ if (check2(input)) return action2(action_arg);
3703
+ if (check3(input)) return action3(action_arg);
3704
+ if (check4(input)) return action4(action_arg);
3705
+ if (check5(input)) return action5(action_arg);
3706
+ if (check6(input)) return action6(action_arg);
3707
+ if (check7(input)) return action7(action_arg);
3708
+ if (check8(input)) return action8(action_arg);
3709
+ if (check9(input)) return action9(action_arg);
3710
+ if (check10(input)) return action10(action_arg);
3711
+ if (check11(input)) return action11(action_arg);
3712
+ if (check12(input)) return action12(action_arg);
3713
+ if (check13(input)) return action13(action_arg);
3714
+ if (check14(input)) return action14(action_arg);
3715
+ if (check15(input)) return action15(action_arg);
3716
+ if (check16(input)) return action16(action_arg);
3717
+ if (check17(input)) return action17(action_arg);
3718
+ if (check18(input)) return action18(action_arg);
3719
+ if (check19(input)) return action19(action_arg);
3720
+ if (check20(input)) return action20(action_arg);
3721
+ if (check21(input)) return action21(action_arg);
3722
+ if (check22(input)) return action22(action_arg);
3723
+ if (check23(input)) return action23(action_arg);
3724
+ if (check24(input)) return action24(action_arg);
3725
+ if (check25(input)) return action25(action_arg);
3726
+ if (check26(input)) return action26(action_arg);
3727
+ if (check27(input)) return action27(action_arg);
3728
+ if (check28(input)) return action28(action_arg);
3729
+ if (check29(input)) return action29(action_arg);
3730
+ if (check30(input)) return action30(action_arg);
3731
+ if (check31(input)) return action31(action_arg);
3732
+ if (check32(input)) return action32(action_arg);
3733
+ if (check33(input)) return action33(action_arg);
3734
+ if (check34(input)) return action34(action_arg);
3735
+ if (check35(input)) return action35(action_arg);
3736
+ if (check36(input)) return action36(action_arg);
3737
+ if (check37(input)) return action37(action_arg);
3738
+ if (check38(input)) return action38(action_arg);
3739
+ if (check39(input)) return action39(action_arg);
3740
+ if (check40(input)) return action40(action_arg);
3741
+ if (check41(input)) return action41(action_arg);
3742
+ if (check42(input)) return action42(action_arg);
3743
+ if (check43(input)) return action43(action_arg);
3744
+ if (check44(input)) return action44(action_arg);
3745
+ if (check45(input)) return action45(action_arg);
3746
+ if (check46(input)) return action46(action_arg);
3747
+ if (check47(input)) return action47(action_arg);
3748
+ if (check48(input)) return action48(action_arg);
3749
+ if (check49(input)) return action49(action_arg);
3750
+ if (check50(input)) return action50(action_arg);
3751
+ if (check51(input)) return action51(action_arg);
3752
+ if (check52(input)) return action52(action_arg);
3753
+ if (check53(input)) return action53(action_arg);
3754
+ if (check54(input)) return action54(action_arg);
3755
+ if (check55(input)) return action55(action_arg);
3756
+ if (check56(input)) return action56(action_arg);
3757
+ return action_fail(action_arg);
3758
+ }
3759
+
3760
+ template <
3761
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
3762
+ typename Check1, typename Check2, typename Check3, typename Check4,
3763
+ typename Check5, typename Check6, typename Check7, typename Check8,
3764
+ typename Check9, typename Check10, typename Check11, typename Check12,
3765
+ typename Check13, typename Check14, typename Check15, typename Check16,
3766
+ typename Check17, typename Check18, typename Check19, typename Check20,
3767
+ typename Check21, typename Check22, typename Check23, typename Check24,
3768
+ typename Check25, typename Check26, typename Check27, typename Check28,
3769
+ typename Check29, typename Check30, typename Check31, typename Check32,
3770
+ typename Check33, typename Check34, typename Check35, typename Check36,
3771
+ typename Check37, typename Check38, typename Check39, typename Check40,
3772
+ typename Check41, typename Check42, typename Check43, typename Check44,
3773
+ typename Check45, typename Check46, typename Check47, typename Check48,
3774
+ typename Check49, typename Check50, typename Check51, typename Check52,
3775
+ typename Check53, typename Check54, typename Check55, typename Check56,
3776
+ typename Check57, typename Action0, typename Action1, typename Action2,
3777
+ typename Action3, typename Action4, typename Action5, typename Action6,
3778
+ typename Action7, typename Action8, typename Action9, typename Action10,
3779
+ typename Action11, typename Action12, typename Action13, typename Action14,
3780
+ typename Action15, typename Action16, typename Action17, typename Action18,
3781
+ typename Action19, typename Action20, typename Action21, typename Action22,
3782
+ typename Action23, typename Action24, typename Action25, typename Action26,
3783
+ typename Action27, typename Action28, typename Action29, typename Action30,
3784
+ typename Action31, typename Action32, typename Action33, typename Action34,
3785
+ typename Action35, typename Action36, typename Action37, typename Action38,
3786
+ typename Action39, typename Action40, typename Action41, typename Action42,
3787
+ typename Action43, typename Action44, typename Action45, typename Action46,
3788
+ typename Action47, typename Action48, typename Action49, typename Action50,
3789
+ typename Action51, typename Action52, typename Action53, typename Action54,
3790
+ typename Action55, typename Action56, typename Action57>
3791
+ auto IfList(
3792
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
3793
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
3794
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
3795
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
3796
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
3797
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
3798
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
3799
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
3800
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
3801
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
3802
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
3803
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
3804
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
3805
+ Check51 check51, Check52 check52, Check53 check53, Check54 check54,
3806
+ Check55 check55, Check56 check56, Check57 check57, Action0 action0,
3807
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
3808
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
3809
+ Action9 action9, Action10 action10, Action11 action11, Action12 action12,
3810
+ Action13 action13, Action14 action14, Action15 action15, Action16 action16,
3811
+ Action17 action17, Action18 action18, Action19 action19, Action20 action20,
3812
+ Action21 action21, Action22 action22, Action23 action23, Action24 action24,
3813
+ Action25 action25, Action26 action26, Action27 action27, Action28 action28,
3814
+ Action29 action29, Action30 action30, Action31 action31, Action32 action32,
3815
+ Action33 action33, Action34 action34, Action35 action35, Action36 action36,
3816
+ Action37 action37, Action38 action38, Action39 action39, Action40 action40,
3817
+ Action41 action41, Action42 action42, Action43 action43, Action44 action44,
3818
+ Action45 action45, Action46 action46, Action47 action47, Action48 action48,
3819
+ Action49 action49, Action50 action50, Action51 action51, Action52 action52,
3820
+ Action53 action53, Action54 action54, Action55 action55, Action56 action56,
3821
+ Action57 action57) {
3822
+ if (check0(input)) return action0(action_arg);
3823
+ if (check1(input)) return action1(action_arg);
3824
+ if (check2(input)) return action2(action_arg);
3825
+ if (check3(input)) return action3(action_arg);
3826
+ if (check4(input)) return action4(action_arg);
3827
+ if (check5(input)) return action5(action_arg);
3828
+ if (check6(input)) return action6(action_arg);
3829
+ if (check7(input)) return action7(action_arg);
3830
+ if (check8(input)) return action8(action_arg);
3831
+ if (check9(input)) return action9(action_arg);
3832
+ if (check10(input)) return action10(action_arg);
3833
+ if (check11(input)) return action11(action_arg);
3834
+ if (check12(input)) return action12(action_arg);
3835
+ if (check13(input)) return action13(action_arg);
3836
+ if (check14(input)) return action14(action_arg);
3837
+ if (check15(input)) return action15(action_arg);
3838
+ if (check16(input)) return action16(action_arg);
3839
+ if (check17(input)) return action17(action_arg);
3840
+ if (check18(input)) return action18(action_arg);
3841
+ if (check19(input)) return action19(action_arg);
3842
+ if (check20(input)) return action20(action_arg);
3843
+ if (check21(input)) return action21(action_arg);
3844
+ if (check22(input)) return action22(action_arg);
3845
+ if (check23(input)) return action23(action_arg);
3846
+ if (check24(input)) return action24(action_arg);
3847
+ if (check25(input)) return action25(action_arg);
3848
+ if (check26(input)) return action26(action_arg);
3849
+ if (check27(input)) return action27(action_arg);
3850
+ if (check28(input)) return action28(action_arg);
3851
+ if (check29(input)) return action29(action_arg);
3852
+ if (check30(input)) return action30(action_arg);
3853
+ if (check31(input)) return action31(action_arg);
3854
+ if (check32(input)) return action32(action_arg);
3855
+ if (check33(input)) return action33(action_arg);
3856
+ if (check34(input)) return action34(action_arg);
3857
+ if (check35(input)) return action35(action_arg);
3858
+ if (check36(input)) return action36(action_arg);
3859
+ if (check37(input)) return action37(action_arg);
3860
+ if (check38(input)) return action38(action_arg);
3861
+ if (check39(input)) return action39(action_arg);
3862
+ if (check40(input)) return action40(action_arg);
3863
+ if (check41(input)) return action41(action_arg);
3864
+ if (check42(input)) return action42(action_arg);
3865
+ if (check43(input)) return action43(action_arg);
3866
+ if (check44(input)) return action44(action_arg);
3867
+ if (check45(input)) return action45(action_arg);
3868
+ if (check46(input)) return action46(action_arg);
3869
+ if (check47(input)) return action47(action_arg);
3870
+ if (check48(input)) return action48(action_arg);
3871
+ if (check49(input)) return action49(action_arg);
3872
+ if (check50(input)) return action50(action_arg);
3873
+ if (check51(input)) return action51(action_arg);
3874
+ if (check52(input)) return action52(action_arg);
3875
+ if (check53(input)) return action53(action_arg);
3876
+ if (check54(input)) return action54(action_arg);
3877
+ if (check55(input)) return action55(action_arg);
3878
+ if (check56(input)) return action56(action_arg);
3879
+ if (check57(input)) return action57(action_arg);
3880
+ return action_fail(action_arg);
3881
+ }
3882
+
3883
+ template <
3884
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
3885
+ typename Check1, typename Check2, typename Check3, typename Check4,
3886
+ typename Check5, typename Check6, typename Check7, typename Check8,
3887
+ typename Check9, typename Check10, typename Check11, typename Check12,
3888
+ typename Check13, typename Check14, typename Check15, typename Check16,
3889
+ typename Check17, typename Check18, typename Check19, typename Check20,
3890
+ typename Check21, typename Check22, typename Check23, typename Check24,
3891
+ typename Check25, typename Check26, typename Check27, typename Check28,
3892
+ typename Check29, typename Check30, typename Check31, typename Check32,
3893
+ typename Check33, typename Check34, typename Check35, typename Check36,
3894
+ typename Check37, typename Check38, typename Check39, typename Check40,
3895
+ typename Check41, typename Check42, typename Check43, typename Check44,
3896
+ typename Check45, typename Check46, typename Check47, typename Check48,
3897
+ typename Check49, typename Check50, typename Check51, typename Check52,
3898
+ typename Check53, typename Check54, typename Check55, typename Check56,
3899
+ typename Check57, typename Check58, typename Action0, typename Action1,
3900
+ typename Action2, typename Action3, typename Action4, typename Action5,
3901
+ typename Action6, typename Action7, typename Action8, typename Action9,
3902
+ typename Action10, typename Action11, typename Action12, typename Action13,
3903
+ typename Action14, typename Action15, typename Action16, typename Action17,
3904
+ typename Action18, typename Action19, typename Action20, typename Action21,
3905
+ typename Action22, typename Action23, typename Action24, typename Action25,
3906
+ typename Action26, typename Action27, typename Action28, typename Action29,
3907
+ typename Action30, typename Action31, typename Action32, typename Action33,
3908
+ typename Action34, typename Action35, typename Action36, typename Action37,
3909
+ typename Action38, typename Action39, typename Action40, typename Action41,
3910
+ typename Action42, typename Action43, typename Action44, typename Action45,
3911
+ typename Action46, typename Action47, typename Action48, typename Action49,
3912
+ typename Action50, typename Action51, typename Action52, typename Action53,
3913
+ typename Action54, typename Action55, typename Action56, typename Action57,
3914
+ typename Action58>
3915
+ auto IfList(
3916
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
3917
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
3918
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
3919
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
3920
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
3921
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
3922
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
3923
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
3924
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
3925
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
3926
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
3927
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
3928
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
3929
+ Check51 check51, Check52 check52, Check53 check53, Check54 check54,
3930
+ Check55 check55, Check56 check56, Check57 check57, Check58 check58,
3931
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
3932
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
3933
+ Action8 action8, Action9 action9, Action10 action10, Action11 action11,
3934
+ Action12 action12, Action13 action13, Action14 action14, Action15 action15,
3935
+ Action16 action16, Action17 action17, Action18 action18, Action19 action19,
3936
+ Action20 action20, Action21 action21, Action22 action22, Action23 action23,
3937
+ Action24 action24, Action25 action25, Action26 action26, Action27 action27,
3938
+ Action28 action28, Action29 action29, Action30 action30, Action31 action31,
3939
+ Action32 action32, Action33 action33, Action34 action34, Action35 action35,
3940
+ Action36 action36, Action37 action37, Action38 action38, Action39 action39,
3941
+ Action40 action40, Action41 action41, Action42 action42, Action43 action43,
3942
+ Action44 action44, Action45 action45, Action46 action46, Action47 action47,
3943
+ Action48 action48, Action49 action49, Action50 action50, Action51 action51,
3944
+ Action52 action52, Action53 action53, Action54 action54, Action55 action55,
3945
+ Action56 action56, Action57 action57, Action58 action58) {
3946
+ if (check0(input)) return action0(action_arg);
3947
+ if (check1(input)) return action1(action_arg);
3948
+ if (check2(input)) return action2(action_arg);
3949
+ if (check3(input)) return action3(action_arg);
3950
+ if (check4(input)) return action4(action_arg);
3951
+ if (check5(input)) return action5(action_arg);
3952
+ if (check6(input)) return action6(action_arg);
3953
+ if (check7(input)) return action7(action_arg);
3954
+ if (check8(input)) return action8(action_arg);
3955
+ if (check9(input)) return action9(action_arg);
3956
+ if (check10(input)) return action10(action_arg);
3957
+ if (check11(input)) return action11(action_arg);
3958
+ if (check12(input)) return action12(action_arg);
3959
+ if (check13(input)) return action13(action_arg);
3960
+ if (check14(input)) return action14(action_arg);
3961
+ if (check15(input)) return action15(action_arg);
3962
+ if (check16(input)) return action16(action_arg);
3963
+ if (check17(input)) return action17(action_arg);
3964
+ if (check18(input)) return action18(action_arg);
3965
+ if (check19(input)) return action19(action_arg);
3966
+ if (check20(input)) return action20(action_arg);
3967
+ if (check21(input)) return action21(action_arg);
3968
+ if (check22(input)) return action22(action_arg);
3969
+ if (check23(input)) return action23(action_arg);
3970
+ if (check24(input)) return action24(action_arg);
3971
+ if (check25(input)) return action25(action_arg);
3972
+ if (check26(input)) return action26(action_arg);
3973
+ if (check27(input)) return action27(action_arg);
3974
+ if (check28(input)) return action28(action_arg);
3975
+ if (check29(input)) return action29(action_arg);
3976
+ if (check30(input)) return action30(action_arg);
3977
+ if (check31(input)) return action31(action_arg);
3978
+ if (check32(input)) return action32(action_arg);
3979
+ if (check33(input)) return action33(action_arg);
3980
+ if (check34(input)) return action34(action_arg);
3981
+ if (check35(input)) return action35(action_arg);
3982
+ if (check36(input)) return action36(action_arg);
3983
+ if (check37(input)) return action37(action_arg);
3984
+ if (check38(input)) return action38(action_arg);
3985
+ if (check39(input)) return action39(action_arg);
3986
+ if (check40(input)) return action40(action_arg);
3987
+ if (check41(input)) return action41(action_arg);
3988
+ if (check42(input)) return action42(action_arg);
3989
+ if (check43(input)) return action43(action_arg);
3990
+ if (check44(input)) return action44(action_arg);
3991
+ if (check45(input)) return action45(action_arg);
3992
+ if (check46(input)) return action46(action_arg);
3993
+ if (check47(input)) return action47(action_arg);
3994
+ if (check48(input)) return action48(action_arg);
3995
+ if (check49(input)) return action49(action_arg);
3996
+ if (check50(input)) return action50(action_arg);
3997
+ if (check51(input)) return action51(action_arg);
3998
+ if (check52(input)) return action52(action_arg);
3999
+ if (check53(input)) return action53(action_arg);
4000
+ if (check54(input)) return action54(action_arg);
4001
+ if (check55(input)) return action55(action_arg);
4002
+ if (check56(input)) return action56(action_arg);
4003
+ if (check57(input)) return action57(action_arg);
4004
+ if (check58(input)) return action58(action_arg);
4005
+ return action_fail(action_arg);
4006
+ }
4007
+
4008
+ template <
4009
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
4010
+ typename Check1, typename Check2, typename Check3, typename Check4,
4011
+ typename Check5, typename Check6, typename Check7, typename Check8,
4012
+ typename Check9, typename Check10, typename Check11, typename Check12,
4013
+ typename Check13, typename Check14, typename Check15, typename Check16,
4014
+ typename Check17, typename Check18, typename Check19, typename Check20,
4015
+ typename Check21, typename Check22, typename Check23, typename Check24,
4016
+ typename Check25, typename Check26, typename Check27, typename Check28,
4017
+ typename Check29, typename Check30, typename Check31, typename Check32,
4018
+ typename Check33, typename Check34, typename Check35, typename Check36,
4019
+ typename Check37, typename Check38, typename Check39, typename Check40,
4020
+ typename Check41, typename Check42, typename Check43, typename Check44,
4021
+ typename Check45, typename Check46, typename Check47, typename Check48,
4022
+ typename Check49, typename Check50, typename Check51, typename Check52,
4023
+ typename Check53, typename Check54, typename Check55, typename Check56,
4024
+ typename Check57, typename Check58, typename Check59, typename Action0,
4025
+ typename Action1, typename Action2, typename Action3, typename Action4,
4026
+ typename Action5, typename Action6, typename Action7, typename Action8,
4027
+ typename Action9, typename Action10, typename Action11, typename Action12,
4028
+ typename Action13, typename Action14, typename Action15, typename Action16,
4029
+ typename Action17, typename Action18, typename Action19, typename Action20,
4030
+ typename Action21, typename Action22, typename Action23, typename Action24,
4031
+ typename Action25, typename Action26, typename Action27, typename Action28,
4032
+ typename Action29, typename Action30, typename Action31, typename Action32,
4033
+ typename Action33, typename Action34, typename Action35, typename Action36,
4034
+ typename Action37, typename Action38, typename Action39, typename Action40,
4035
+ typename Action41, typename Action42, typename Action43, typename Action44,
4036
+ typename Action45, typename Action46, typename Action47, typename Action48,
4037
+ typename Action49, typename Action50, typename Action51, typename Action52,
4038
+ typename Action53, typename Action54, typename Action55, typename Action56,
4039
+ typename Action57, typename Action58, typename Action59>
4040
+ auto IfList(
4041
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
4042
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
4043
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
4044
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
4045
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
4046
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
4047
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
4048
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
4049
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
4050
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
4051
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
4052
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
4053
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
4054
+ Check51 check51, Check52 check52, Check53 check53, Check54 check54,
4055
+ Check55 check55, Check56 check56, Check57 check57, Check58 check58,
4056
+ Check59 check59, Action0 action0, Action1 action1, Action2 action2,
4057
+ Action3 action3, Action4 action4, Action5 action5, Action6 action6,
4058
+ Action7 action7, Action8 action8, Action9 action9, Action10 action10,
4059
+ Action11 action11, Action12 action12, Action13 action13, Action14 action14,
4060
+ Action15 action15, Action16 action16, Action17 action17, Action18 action18,
4061
+ Action19 action19, Action20 action20, Action21 action21, Action22 action22,
4062
+ Action23 action23, Action24 action24, Action25 action25, Action26 action26,
4063
+ Action27 action27, Action28 action28, Action29 action29, Action30 action30,
4064
+ Action31 action31, Action32 action32, Action33 action33, Action34 action34,
4065
+ Action35 action35, Action36 action36, Action37 action37, Action38 action38,
4066
+ Action39 action39, Action40 action40, Action41 action41, Action42 action42,
4067
+ Action43 action43, Action44 action44, Action45 action45, Action46 action46,
4068
+ Action47 action47, Action48 action48, Action49 action49, Action50 action50,
4069
+ Action51 action51, Action52 action52, Action53 action53, Action54 action54,
4070
+ Action55 action55, Action56 action56, Action57 action57, Action58 action58,
4071
+ Action59 action59) {
4072
+ if (check0(input)) return action0(action_arg);
4073
+ if (check1(input)) return action1(action_arg);
4074
+ if (check2(input)) return action2(action_arg);
4075
+ if (check3(input)) return action3(action_arg);
4076
+ if (check4(input)) return action4(action_arg);
4077
+ if (check5(input)) return action5(action_arg);
4078
+ if (check6(input)) return action6(action_arg);
4079
+ if (check7(input)) return action7(action_arg);
4080
+ if (check8(input)) return action8(action_arg);
4081
+ if (check9(input)) return action9(action_arg);
4082
+ if (check10(input)) return action10(action_arg);
4083
+ if (check11(input)) return action11(action_arg);
4084
+ if (check12(input)) return action12(action_arg);
4085
+ if (check13(input)) return action13(action_arg);
4086
+ if (check14(input)) return action14(action_arg);
4087
+ if (check15(input)) return action15(action_arg);
4088
+ if (check16(input)) return action16(action_arg);
4089
+ if (check17(input)) return action17(action_arg);
4090
+ if (check18(input)) return action18(action_arg);
4091
+ if (check19(input)) return action19(action_arg);
4092
+ if (check20(input)) return action20(action_arg);
4093
+ if (check21(input)) return action21(action_arg);
4094
+ if (check22(input)) return action22(action_arg);
4095
+ if (check23(input)) return action23(action_arg);
4096
+ if (check24(input)) return action24(action_arg);
4097
+ if (check25(input)) return action25(action_arg);
4098
+ if (check26(input)) return action26(action_arg);
4099
+ if (check27(input)) return action27(action_arg);
4100
+ if (check28(input)) return action28(action_arg);
4101
+ if (check29(input)) return action29(action_arg);
4102
+ if (check30(input)) return action30(action_arg);
4103
+ if (check31(input)) return action31(action_arg);
4104
+ if (check32(input)) return action32(action_arg);
4105
+ if (check33(input)) return action33(action_arg);
4106
+ if (check34(input)) return action34(action_arg);
4107
+ if (check35(input)) return action35(action_arg);
4108
+ if (check36(input)) return action36(action_arg);
4109
+ if (check37(input)) return action37(action_arg);
4110
+ if (check38(input)) return action38(action_arg);
4111
+ if (check39(input)) return action39(action_arg);
4112
+ if (check40(input)) return action40(action_arg);
4113
+ if (check41(input)) return action41(action_arg);
4114
+ if (check42(input)) return action42(action_arg);
4115
+ if (check43(input)) return action43(action_arg);
4116
+ if (check44(input)) return action44(action_arg);
4117
+ if (check45(input)) return action45(action_arg);
4118
+ if (check46(input)) return action46(action_arg);
4119
+ if (check47(input)) return action47(action_arg);
4120
+ if (check48(input)) return action48(action_arg);
4121
+ if (check49(input)) return action49(action_arg);
4122
+ if (check50(input)) return action50(action_arg);
4123
+ if (check51(input)) return action51(action_arg);
4124
+ if (check52(input)) return action52(action_arg);
4125
+ if (check53(input)) return action53(action_arg);
4126
+ if (check54(input)) return action54(action_arg);
4127
+ if (check55(input)) return action55(action_arg);
4128
+ if (check56(input)) return action56(action_arg);
4129
+ if (check57(input)) return action57(action_arg);
4130
+ if (check58(input)) return action58(action_arg);
4131
+ if (check59(input)) return action59(action_arg);
4132
+ return action_fail(action_arg);
4133
+ }
4134
+
4135
+ template <
4136
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
4137
+ typename Check1, typename Check2, typename Check3, typename Check4,
4138
+ typename Check5, typename Check6, typename Check7, typename Check8,
4139
+ typename Check9, typename Check10, typename Check11, typename Check12,
4140
+ typename Check13, typename Check14, typename Check15, typename Check16,
4141
+ typename Check17, typename Check18, typename Check19, typename Check20,
4142
+ typename Check21, typename Check22, typename Check23, typename Check24,
4143
+ typename Check25, typename Check26, typename Check27, typename Check28,
4144
+ typename Check29, typename Check30, typename Check31, typename Check32,
4145
+ typename Check33, typename Check34, typename Check35, typename Check36,
4146
+ typename Check37, typename Check38, typename Check39, typename Check40,
4147
+ typename Check41, typename Check42, typename Check43, typename Check44,
4148
+ typename Check45, typename Check46, typename Check47, typename Check48,
4149
+ typename Check49, typename Check50, typename Check51, typename Check52,
4150
+ typename Check53, typename Check54, typename Check55, typename Check56,
4151
+ typename Check57, typename Check58, typename Check59, typename Check60,
4152
+ typename Action0, typename Action1, typename Action2, typename Action3,
4153
+ typename Action4, typename Action5, typename Action6, typename Action7,
4154
+ typename Action8, typename Action9, typename Action10, typename Action11,
4155
+ typename Action12, typename Action13, typename Action14, typename Action15,
4156
+ typename Action16, typename Action17, typename Action18, typename Action19,
4157
+ typename Action20, typename Action21, typename Action22, typename Action23,
4158
+ typename Action24, typename Action25, typename Action26, typename Action27,
4159
+ typename Action28, typename Action29, typename Action30, typename Action31,
4160
+ typename Action32, typename Action33, typename Action34, typename Action35,
4161
+ typename Action36, typename Action37, typename Action38, typename Action39,
4162
+ typename Action40, typename Action41, typename Action42, typename Action43,
4163
+ typename Action44, typename Action45, typename Action46, typename Action47,
4164
+ typename Action48, typename Action49, typename Action50, typename Action51,
4165
+ typename Action52, typename Action53, typename Action54, typename Action55,
4166
+ typename Action56, typename Action57, typename Action58, typename Action59,
4167
+ typename Action60>
4168
+ auto IfList(
4169
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
4170
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
4171
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
4172
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
4173
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
4174
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
4175
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
4176
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
4177
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
4178
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
4179
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
4180
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
4181
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
4182
+ Check51 check51, Check52 check52, Check53 check53, Check54 check54,
4183
+ Check55 check55, Check56 check56, Check57 check57, Check58 check58,
4184
+ Check59 check59, Check60 check60, Action0 action0, Action1 action1,
4185
+ Action2 action2, Action3 action3, Action4 action4, Action5 action5,
4186
+ Action6 action6, Action7 action7, Action8 action8, Action9 action9,
4187
+ Action10 action10, Action11 action11, Action12 action12, Action13 action13,
4188
+ Action14 action14, Action15 action15, Action16 action16, Action17 action17,
4189
+ Action18 action18, Action19 action19, Action20 action20, Action21 action21,
4190
+ Action22 action22, Action23 action23, Action24 action24, Action25 action25,
4191
+ Action26 action26, Action27 action27, Action28 action28, Action29 action29,
4192
+ Action30 action30, Action31 action31, Action32 action32, Action33 action33,
4193
+ Action34 action34, Action35 action35, Action36 action36, Action37 action37,
4194
+ Action38 action38, Action39 action39, Action40 action40, Action41 action41,
4195
+ Action42 action42, Action43 action43, Action44 action44, Action45 action45,
4196
+ Action46 action46, Action47 action47, Action48 action48, Action49 action49,
4197
+ Action50 action50, Action51 action51, Action52 action52, Action53 action53,
4198
+ Action54 action54, Action55 action55, Action56 action56, Action57 action57,
4199
+ Action58 action58, Action59 action59, Action60 action60) {
4200
+ if (check0(input)) return action0(action_arg);
4201
+ if (check1(input)) return action1(action_arg);
4202
+ if (check2(input)) return action2(action_arg);
4203
+ if (check3(input)) return action3(action_arg);
4204
+ if (check4(input)) return action4(action_arg);
4205
+ if (check5(input)) return action5(action_arg);
4206
+ if (check6(input)) return action6(action_arg);
4207
+ if (check7(input)) return action7(action_arg);
4208
+ if (check8(input)) return action8(action_arg);
4209
+ if (check9(input)) return action9(action_arg);
4210
+ if (check10(input)) return action10(action_arg);
4211
+ if (check11(input)) return action11(action_arg);
4212
+ if (check12(input)) return action12(action_arg);
4213
+ if (check13(input)) return action13(action_arg);
4214
+ if (check14(input)) return action14(action_arg);
4215
+ if (check15(input)) return action15(action_arg);
4216
+ if (check16(input)) return action16(action_arg);
4217
+ if (check17(input)) return action17(action_arg);
4218
+ if (check18(input)) return action18(action_arg);
4219
+ if (check19(input)) return action19(action_arg);
4220
+ if (check20(input)) return action20(action_arg);
4221
+ if (check21(input)) return action21(action_arg);
4222
+ if (check22(input)) return action22(action_arg);
4223
+ if (check23(input)) return action23(action_arg);
4224
+ if (check24(input)) return action24(action_arg);
4225
+ if (check25(input)) return action25(action_arg);
4226
+ if (check26(input)) return action26(action_arg);
4227
+ if (check27(input)) return action27(action_arg);
4228
+ if (check28(input)) return action28(action_arg);
4229
+ if (check29(input)) return action29(action_arg);
4230
+ if (check30(input)) return action30(action_arg);
4231
+ if (check31(input)) return action31(action_arg);
4232
+ if (check32(input)) return action32(action_arg);
4233
+ if (check33(input)) return action33(action_arg);
4234
+ if (check34(input)) return action34(action_arg);
4235
+ if (check35(input)) return action35(action_arg);
4236
+ if (check36(input)) return action36(action_arg);
4237
+ if (check37(input)) return action37(action_arg);
4238
+ if (check38(input)) return action38(action_arg);
4239
+ if (check39(input)) return action39(action_arg);
4240
+ if (check40(input)) return action40(action_arg);
4241
+ if (check41(input)) return action41(action_arg);
4242
+ if (check42(input)) return action42(action_arg);
4243
+ if (check43(input)) return action43(action_arg);
4244
+ if (check44(input)) return action44(action_arg);
4245
+ if (check45(input)) return action45(action_arg);
4246
+ if (check46(input)) return action46(action_arg);
4247
+ if (check47(input)) return action47(action_arg);
4248
+ if (check48(input)) return action48(action_arg);
4249
+ if (check49(input)) return action49(action_arg);
4250
+ if (check50(input)) return action50(action_arg);
4251
+ if (check51(input)) return action51(action_arg);
4252
+ if (check52(input)) return action52(action_arg);
4253
+ if (check53(input)) return action53(action_arg);
4254
+ if (check54(input)) return action54(action_arg);
4255
+ if (check55(input)) return action55(action_arg);
4256
+ if (check56(input)) return action56(action_arg);
4257
+ if (check57(input)) return action57(action_arg);
4258
+ if (check58(input)) return action58(action_arg);
4259
+ if (check59(input)) return action59(action_arg);
4260
+ if (check60(input)) return action60(action_arg);
4261
+ return action_fail(action_arg);
4262
+ }
4263
+
4264
+ template <
4265
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
4266
+ typename Check1, typename Check2, typename Check3, typename Check4,
4267
+ typename Check5, typename Check6, typename Check7, typename Check8,
4268
+ typename Check9, typename Check10, typename Check11, typename Check12,
4269
+ typename Check13, typename Check14, typename Check15, typename Check16,
4270
+ typename Check17, typename Check18, typename Check19, typename Check20,
4271
+ typename Check21, typename Check22, typename Check23, typename Check24,
4272
+ typename Check25, typename Check26, typename Check27, typename Check28,
4273
+ typename Check29, typename Check30, typename Check31, typename Check32,
4274
+ typename Check33, typename Check34, typename Check35, typename Check36,
4275
+ typename Check37, typename Check38, typename Check39, typename Check40,
4276
+ typename Check41, typename Check42, typename Check43, typename Check44,
4277
+ typename Check45, typename Check46, typename Check47, typename Check48,
4278
+ typename Check49, typename Check50, typename Check51, typename Check52,
4279
+ typename Check53, typename Check54, typename Check55, typename Check56,
4280
+ typename Check57, typename Check58, typename Check59, typename Check60,
4281
+ typename Check61, typename Action0, typename Action1, typename Action2,
4282
+ typename Action3, typename Action4, typename Action5, typename Action6,
4283
+ typename Action7, typename Action8, typename Action9, typename Action10,
4284
+ typename Action11, typename Action12, typename Action13, typename Action14,
4285
+ typename Action15, typename Action16, typename Action17, typename Action18,
4286
+ typename Action19, typename Action20, typename Action21, typename Action22,
4287
+ typename Action23, typename Action24, typename Action25, typename Action26,
4288
+ typename Action27, typename Action28, typename Action29, typename Action30,
4289
+ typename Action31, typename Action32, typename Action33, typename Action34,
4290
+ typename Action35, typename Action36, typename Action37, typename Action38,
4291
+ typename Action39, typename Action40, typename Action41, typename Action42,
4292
+ typename Action43, typename Action44, typename Action45, typename Action46,
4293
+ typename Action47, typename Action48, typename Action49, typename Action50,
4294
+ typename Action51, typename Action52, typename Action53, typename Action54,
4295
+ typename Action55, typename Action56, typename Action57, typename Action58,
4296
+ typename Action59, typename Action60, typename Action61>
4297
+ auto IfList(
4298
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
4299
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
4300
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
4301
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
4302
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
4303
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
4304
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
4305
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
4306
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
4307
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
4308
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
4309
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
4310
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
4311
+ Check51 check51, Check52 check52, Check53 check53, Check54 check54,
4312
+ Check55 check55, Check56 check56, Check57 check57, Check58 check58,
4313
+ Check59 check59, Check60 check60, Check61 check61, Action0 action0,
4314
+ Action1 action1, Action2 action2, Action3 action3, Action4 action4,
4315
+ Action5 action5, Action6 action6, Action7 action7, Action8 action8,
4316
+ Action9 action9, Action10 action10, Action11 action11, Action12 action12,
4317
+ Action13 action13, Action14 action14, Action15 action15, Action16 action16,
4318
+ Action17 action17, Action18 action18, Action19 action19, Action20 action20,
4319
+ Action21 action21, Action22 action22, Action23 action23, Action24 action24,
4320
+ Action25 action25, Action26 action26, Action27 action27, Action28 action28,
4321
+ Action29 action29, Action30 action30, Action31 action31, Action32 action32,
4322
+ Action33 action33, Action34 action34, Action35 action35, Action36 action36,
4323
+ Action37 action37, Action38 action38, Action39 action39, Action40 action40,
4324
+ Action41 action41, Action42 action42, Action43 action43, Action44 action44,
4325
+ Action45 action45, Action46 action46, Action47 action47, Action48 action48,
4326
+ Action49 action49, Action50 action50, Action51 action51, Action52 action52,
4327
+ Action53 action53, Action54 action54, Action55 action55, Action56 action56,
4328
+ Action57 action57, Action58 action58, Action59 action59, Action60 action60,
4329
+ Action61 action61) {
4330
+ if (check0(input)) return action0(action_arg);
4331
+ if (check1(input)) return action1(action_arg);
4332
+ if (check2(input)) return action2(action_arg);
4333
+ if (check3(input)) return action3(action_arg);
4334
+ if (check4(input)) return action4(action_arg);
4335
+ if (check5(input)) return action5(action_arg);
4336
+ if (check6(input)) return action6(action_arg);
4337
+ if (check7(input)) return action7(action_arg);
4338
+ if (check8(input)) return action8(action_arg);
4339
+ if (check9(input)) return action9(action_arg);
4340
+ if (check10(input)) return action10(action_arg);
4341
+ if (check11(input)) return action11(action_arg);
4342
+ if (check12(input)) return action12(action_arg);
4343
+ if (check13(input)) return action13(action_arg);
4344
+ if (check14(input)) return action14(action_arg);
4345
+ if (check15(input)) return action15(action_arg);
4346
+ if (check16(input)) return action16(action_arg);
4347
+ if (check17(input)) return action17(action_arg);
4348
+ if (check18(input)) return action18(action_arg);
4349
+ if (check19(input)) return action19(action_arg);
4350
+ if (check20(input)) return action20(action_arg);
4351
+ if (check21(input)) return action21(action_arg);
4352
+ if (check22(input)) return action22(action_arg);
4353
+ if (check23(input)) return action23(action_arg);
4354
+ if (check24(input)) return action24(action_arg);
4355
+ if (check25(input)) return action25(action_arg);
4356
+ if (check26(input)) return action26(action_arg);
4357
+ if (check27(input)) return action27(action_arg);
4358
+ if (check28(input)) return action28(action_arg);
4359
+ if (check29(input)) return action29(action_arg);
4360
+ if (check30(input)) return action30(action_arg);
4361
+ if (check31(input)) return action31(action_arg);
4362
+ if (check32(input)) return action32(action_arg);
4363
+ if (check33(input)) return action33(action_arg);
4364
+ if (check34(input)) return action34(action_arg);
4365
+ if (check35(input)) return action35(action_arg);
4366
+ if (check36(input)) return action36(action_arg);
4367
+ if (check37(input)) return action37(action_arg);
4368
+ if (check38(input)) return action38(action_arg);
4369
+ if (check39(input)) return action39(action_arg);
4370
+ if (check40(input)) return action40(action_arg);
4371
+ if (check41(input)) return action41(action_arg);
4372
+ if (check42(input)) return action42(action_arg);
4373
+ if (check43(input)) return action43(action_arg);
4374
+ if (check44(input)) return action44(action_arg);
4375
+ if (check45(input)) return action45(action_arg);
4376
+ if (check46(input)) return action46(action_arg);
4377
+ if (check47(input)) return action47(action_arg);
4378
+ if (check48(input)) return action48(action_arg);
4379
+ if (check49(input)) return action49(action_arg);
4380
+ if (check50(input)) return action50(action_arg);
4381
+ if (check51(input)) return action51(action_arg);
4382
+ if (check52(input)) return action52(action_arg);
4383
+ if (check53(input)) return action53(action_arg);
4384
+ if (check54(input)) return action54(action_arg);
4385
+ if (check55(input)) return action55(action_arg);
4386
+ if (check56(input)) return action56(action_arg);
4387
+ if (check57(input)) return action57(action_arg);
4388
+ if (check58(input)) return action58(action_arg);
4389
+ if (check59(input)) return action59(action_arg);
4390
+ if (check60(input)) return action60(action_arg);
4391
+ if (check61(input)) return action61(action_arg);
4392
+ return action_fail(action_arg);
4393
+ }
4394
+
4395
+ template <
4396
+ typename CheckArg, typename ActionArg, typename ActionFail, typename Check0,
4397
+ typename Check1, typename Check2, typename Check3, typename Check4,
4398
+ typename Check5, typename Check6, typename Check7, typename Check8,
4399
+ typename Check9, typename Check10, typename Check11, typename Check12,
4400
+ typename Check13, typename Check14, typename Check15, typename Check16,
4401
+ typename Check17, typename Check18, typename Check19, typename Check20,
4402
+ typename Check21, typename Check22, typename Check23, typename Check24,
4403
+ typename Check25, typename Check26, typename Check27, typename Check28,
4404
+ typename Check29, typename Check30, typename Check31, typename Check32,
4405
+ typename Check33, typename Check34, typename Check35, typename Check36,
4406
+ typename Check37, typename Check38, typename Check39, typename Check40,
4407
+ typename Check41, typename Check42, typename Check43, typename Check44,
4408
+ typename Check45, typename Check46, typename Check47, typename Check48,
4409
+ typename Check49, typename Check50, typename Check51, typename Check52,
4410
+ typename Check53, typename Check54, typename Check55, typename Check56,
4411
+ typename Check57, typename Check58, typename Check59, typename Check60,
4412
+ typename Check61, typename Check62, typename Action0, typename Action1,
4413
+ typename Action2, typename Action3, typename Action4, typename Action5,
4414
+ typename Action6, typename Action7, typename Action8, typename Action9,
4415
+ typename Action10, typename Action11, typename Action12, typename Action13,
4416
+ typename Action14, typename Action15, typename Action16, typename Action17,
4417
+ typename Action18, typename Action19, typename Action20, typename Action21,
4418
+ typename Action22, typename Action23, typename Action24, typename Action25,
4419
+ typename Action26, typename Action27, typename Action28, typename Action29,
4420
+ typename Action30, typename Action31, typename Action32, typename Action33,
4421
+ typename Action34, typename Action35, typename Action36, typename Action37,
4422
+ typename Action38, typename Action39, typename Action40, typename Action41,
4423
+ typename Action42, typename Action43, typename Action44, typename Action45,
4424
+ typename Action46, typename Action47, typename Action48, typename Action49,
4425
+ typename Action50, typename Action51, typename Action52, typename Action53,
4426
+ typename Action54, typename Action55, typename Action56, typename Action57,
4427
+ typename Action58, typename Action59, typename Action60, typename Action61,
4428
+ typename Action62>
4429
+ auto IfList(
4430
+ CheckArg input, ActionArg action_arg, ActionFail action_fail, Check0 check0,
4431
+ Check1 check1, Check2 check2, Check3 check3, Check4 check4, Check5 check5,
4432
+ Check6 check6, Check7 check7, Check8 check8, Check9 check9, Check10 check10,
4433
+ Check11 check11, Check12 check12, Check13 check13, Check14 check14,
4434
+ Check15 check15, Check16 check16, Check17 check17, Check18 check18,
4435
+ Check19 check19, Check20 check20, Check21 check21, Check22 check22,
4436
+ Check23 check23, Check24 check24, Check25 check25, Check26 check26,
4437
+ Check27 check27, Check28 check28, Check29 check29, Check30 check30,
4438
+ Check31 check31, Check32 check32, Check33 check33, Check34 check34,
4439
+ Check35 check35, Check36 check36, Check37 check37, Check38 check38,
4440
+ Check39 check39, Check40 check40, Check41 check41, Check42 check42,
4441
+ Check43 check43, Check44 check44, Check45 check45, Check46 check46,
4442
+ Check47 check47, Check48 check48, Check49 check49, Check50 check50,
4443
+ Check51 check51, Check52 check52, Check53 check53, Check54 check54,
4444
+ Check55 check55, Check56 check56, Check57 check57, Check58 check58,
4445
+ Check59 check59, Check60 check60, Check61 check61, Check62 check62,
4446
+ Action0 action0, Action1 action1, Action2 action2, Action3 action3,
4447
+ Action4 action4, Action5 action5, Action6 action6, Action7 action7,
4448
+ Action8 action8, Action9 action9, Action10 action10, Action11 action11,
4449
+ Action12 action12, Action13 action13, Action14 action14, Action15 action15,
4450
+ Action16 action16, Action17 action17, Action18 action18, Action19 action19,
4451
+ Action20 action20, Action21 action21, Action22 action22, Action23 action23,
4452
+ Action24 action24, Action25 action25, Action26 action26, Action27 action27,
4453
+ Action28 action28, Action29 action29, Action30 action30, Action31 action31,
4454
+ Action32 action32, Action33 action33, Action34 action34, Action35 action35,
4455
+ Action36 action36, Action37 action37, Action38 action38, Action39 action39,
4456
+ Action40 action40, Action41 action41, Action42 action42, Action43 action43,
4457
+ Action44 action44, Action45 action45, Action46 action46, Action47 action47,
4458
+ Action48 action48, Action49 action49, Action50 action50, Action51 action51,
4459
+ Action52 action52, Action53 action53, Action54 action54, Action55 action55,
4460
+ Action56 action56, Action57 action57, Action58 action58, Action59 action59,
4461
+ Action60 action60, Action61 action61, Action62 action62) {
4462
+ if (check0(input)) return action0(action_arg);
4463
+ if (check1(input)) return action1(action_arg);
4464
+ if (check2(input)) return action2(action_arg);
4465
+ if (check3(input)) return action3(action_arg);
4466
+ if (check4(input)) return action4(action_arg);
4467
+ if (check5(input)) return action5(action_arg);
4468
+ if (check6(input)) return action6(action_arg);
4469
+ if (check7(input)) return action7(action_arg);
4470
+ if (check8(input)) return action8(action_arg);
4471
+ if (check9(input)) return action9(action_arg);
4472
+ if (check10(input)) return action10(action_arg);
4473
+ if (check11(input)) return action11(action_arg);
4474
+ if (check12(input)) return action12(action_arg);
4475
+ if (check13(input)) return action13(action_arg);
4476
+ if (check14(input)) return action14(action_arg);
4477
+ if (check15(input)) return action15(action_arg);
4478
+ if (check16(input)) return action16(action_arg);
4479
+ if (check17(input)) return action17(action_arg);
4480
+ if (check18(input)) return action18(action_arg);
4481
+ if (check19(input)) return action19(action_arg);
4482
+ if (check20(input)) return action20(action_arg);
4483
+ if (check21(input)) return action21(action_arg);
4484
+ if (check22(input)) return action22(action_arg);
4485
+ if (check23(input)) return action23(action_arg);
4486
+ if (check24(input)) return action24(action_arg);
4487
+ if (check25(input)) return action25(action_arg);
4488
+ if (check26(input)) return action26(action_arg);
4489
+ if (check27(input)) return action27(action_arg);
4490
+ if (check28(input)) return action28(action_arg);
4491
+ if (check29(input)) return action29(action_arg);
4492
+ if (check30(input)) return action30(action_arg);
4493
+ if (check31(input)) return action31(action_arg);
4494
+ if (check32(input)) return action32(action_arg);
4495
+ if (check33(input)) return action33(action_arg);
4496
+ if (check34(input)) return action34(action_arg);
4497
+ if (check35(input)) return action35(action_arg);
4498
+ if (check36(input)) return action36(action_arg);
4499
+ if (check37(input)) return action37(action_arg);
4500
+ if (check38(input)) return action38(action_arg);
4501
+ if (check39(input)) return action39(action_arg);
4502
+ if (check40(input)) return action40(action_arg);
4503
+ if (check41(input)) return action41(action_arg);
4504
+ if (check42(input)) return action42(action_arg);
4505
+ if (check43(input)) return action43(action_arg);
4506
+ if (check44(input)) return action44(action_arg);
4507
+ if (check45(input)) return action45(action_arg);
4508
+ if (check46(input)) return action46(action_arg);
4509
+ if (check47(input)) return action47(action_arg);
4510
+ if (check48(input)) return action48(action_arg);
4511
+ if (check49(input)) return action49(action_arg);
4512
+ if (check50(input)) return action50(action_arg);
4513
+ if (check51(input)) return action51(action_arg);
4514
+ if (check52(input)) return action52(action_arg);
4515
+ if (check53(input)) return action53(action_arg);
4516
+ if (check54(input)) return action54(action_arg);
4517
+ if (check55(input)) return action55(action_arg);
4518
+ if (check56(input)) return action56(action_arg);
4519
+ if (check57(input)) return action57(action_arg);
4520
+ if (check58(input)) return action58(action_arg);
4521
+ if (check59(input)) return action59(action_arg);
4522
+ if (check60(input)) return action60(action_arg);
4523
+ if (check61(input)) return action61(action_arg);
4524
+ if (check62(input)) return action62(action_arg);
4525
+ return action_fail(action_arg);
4526
+ }
4527
+
4528
+ } // namespace grpc_core
4529
+
4530
+ #endif // GRPC_SRC_CORE_LIB_GPRPP_IF_LIST_H