From 3f2655baccadadd8ec08ab6a4a83efe19f5c3906 Mon Sep 17 00:00:00 2001 From: Barry Revzin Date: Sat, 2 Mar 2024 16:10:07 -0600 Subject: [PATCH] Revert "Let's try this approach" This reverts commit 7f7bd74bf9d628ca046100379e1ea9665da8f740. --- .nojekyll | 0 all_papers.html | 228 ------------------------------------------------ all_papers.md | 95 ++++++++++++++++++++ all_papers.tpl | 64 -------------- make_all_papers | 63 ++++--------- 5 files changed, 112 insertions(+), 338 deletions(-) delete mode 100644 .nojekyll delete mode 100644 all_papers.html create mode 100644 all_papers.md delete mode 100644 all_papers.tpl diff --git a/.nojekyll b/.nojekyll deleted file mode 100644 index e69de29b..00000000 diff --git a/all_papers.html b/all_papers.html deleted file mode 100644 index 066ee032..00000000 --- a/all_papers.html +++ /dev/null @@ -1,228 +0,0 @@ - - - - - - - - -Papers with Numbers | cpp_proposals - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

cpp_proposals

- - -

Papers with Numbers

- - -

Other Papers

- - - - -
- - - - diff --git a/all_papers.md b/all_papers.md new file mode 100644 index 00000000..926278a4 --- /dev/null +++ b/all_papers.md @@ -0,0 +1,95 @@ +# Papers with Numbers +- P0312 Making Pointers to Members Callable: [p0312r1](0312_pointers_to_members/p0312r1.html) +- P0573 Abbreviated Lambdas for Fun and Profit: [p0573r2](0573_abbrev_lambdas/p0573r2.html) +- P0644 Forward without forward: [p0644r1](0644_fwd/p0644r1.html) +- P0704 Fixing const-qualified pointers to members: [p0704r0](0704_const_qual_pmfs/p0704r0.html) [p0704r1](0704_const_qual_pmfs/p0704r1.html) +- P0780 Allow pack expansion in lambda init-capture: [p0780r0](0780_lambda_pack_capture/p0780r0.html) [p0780r1](0780_lambda_pack_capture/p0780r1.html) [p0780r2](0780_lambda_pack_capture/p0780r2.html) +- P0847 Deducing `this`: [p0847r0](0847_deducing_this/p0847r0.html) [p0847r1](0847_deducing_this/p0847r1.html) [p0847r2](0847_deducing_this/p0847r2.html) [p0847r4](0847_deducing_this/p0847r4.html) [p0847r5](0847_deducing_this/p0847r5.html) [p0847r6](0847_deducing_this/p0847r6.html) [p0847r7](0847_deducing_this/p0847r7.html) +- P0848 Conditionally Trivial Special Member Functions: [p0848r0](0848_special_members/p0848r0.html) [p0848r1](0848_special_members/p0848r1.html) [p0848r2](0848_special_members/p0848r2.html) [p0848r3](0848_special_members/p0848r3.html) +- P0892 explicit(bool): [p0892r0](0892_explicit_bool/p0892r0.html) [p0892r1](0892_explicit_bool/p0892r1.html) [p0892r2](0892_explicit_bool/p0892r2.html) +- P0893 Chaining Comparisons: [p0893r0](0893_chain_comparisons/p0893r0.html) [p0893r1](0893_chain_comparisons/p0893r1.html) [d0893r2](0893_chain_comparisons/d0893r2.html) +- P1061 Structured Bindings can introduce a Pack: [p1061r0](1061_sb_pack/p1061r0.html) [p1061r1](1061_sb_pack/p1061r1.html) [p1061r2](1061_sb_pack/p1061r2.html) [p1061r3](1061_sb_pack/p1061r3.html) [p1061r4](1061_sb_pack/p1061r4.html) [p1061r5](1061_sb_pack/p1061r5.html) [d1061r6](1061_sb_pack/d1061r6.html) [p1061r6](1061_sb_pack/p1061r6.html) [p1061r7](1061_sb_pack/p1061r7.html) +- P1065 constexpr INVOKE: [p1065r0](1065_constexpr_invoke/p1065r0.html) [p1065r1](1065_constexpr_invoke/p1065r1.html) [p1065r2](1065_constexpr_invoke/p1065r2.html) +- P1169 static operator(): [p1169r0](1169_static_call/p1169r0.html) [p1169r1](1169_static_call/p1169r1.html) [p1169r2](1169_static_call/p1169r2.html) [p1169r3](1169_static_call/p1169r3.html) [p1169r4](1169_static_call/p1169r4.html) +- P1170 Overload sets as function parameters: [p1170r0](1170_overload_sets/p1170r0.html) +- ![][~spaceship] P1185 <=> != ==: [p1185r0](118x_spaceship/p1185r0.html) [p1185r1](118x_spaceship/p1185r1.html) [p1185r2](118x_spaceship/p1185r2.html) +- ![][~spaceship] P1186 When do you actually use <=> ?: [p1186r0](118x_spaceship/p1186r0.html) [p1186r1](118x_spaceship/p1186r1.html) [p1186r2](118x_spaceship/p1186r2.html) [p1186r3](118x_spaceship/p1186r3.html) +- P1187 A type trait for std::compare_3way()'s type: [p1187r0](118x_spaceship/p1187r0.html) +- ![][~spaceship] P1188 Library utilities for <=>: [p1188r0](118x_spaceship/p1188r0.html) +- ![][~spaceship] P1189 Adding <=> to library: [p1189r0](118x_spaceship/p1189r0.html) +- P1240 Scalable Reflection in C++: [p1240r2](1240_scalable_reflection/p1240r2.html) [d1240r3](1240_scalable_reflection/d1240r3.html) +- P1500 Deduplicating Forwarding Overloads: [d1500r0](forward_ref/d1500r0.html) +- ![][~spaceship] P1614 The Mothership has Landed: [p1614r0](118x_spaceship/p1614r0.html) [p1614r1](118x_spaceship/p1614r1.html) [p1614r2](118x_spaceship/p1614r2.html) +- ![][~spaceship] P1630 Spaceship needs a tune-up: [p1630r0](118x_spaceship/p1630r0.html) [p1630r1](118x_spaceship/p1630r1.html) +- P1858 Generalized pack declaration and usage: [p1858r0](1858_generalized_packs/p1858r0.html) [p1858r1](1858_generalized_packs/p1858r1.html) [p1858r2](1858_generalized_packs/p1858r2.html) +- ![][~ranges] P1870 forwarding-range <T> is too subtle: [p1870r0](1870_forwarding_range/p1870r0.html) [p1870r1](1870_forwarding_range/p1870r1.html) +- ![][~ranges] P1871 Concept traits should be named after concepts: [p1871r0](1871_enable_sized_range/p1871r0.html) [p1871r1](1871_enable_sized_range/p1871r1.html) +- P1900 Concepts-Adjacent Problems: [p1900r0](1900_concepts/p1900r0.html) +- ![][~constexpr] P1938 if consteval: [p1938r0](1938_if_consteval/p1938r0.html) [p1938r1](1938_if_consteval/p1938r1.html) [p1938r2](1938_if_consteval/p1938r2.html) [p1938r3](1938_if_consteval/p1938r3.html) +- ![][~spaceship] P1946 Allow defaulting comparisons by value: [p1946r0](1946_dflt_value_comparisons/p1946r0.html) +- ![][~spaceship] P1959 Remove std::weak_equality and std::strong_equality: [p1959r0](1959_remove_equality/p1959r0.html) +- P2011 A pipeline-rewrite operator: [p2011r0](2011_pipeline/p2011r0.html) [p2011r1](2011_pipeline/p2011r1.html) [d2011r2](2011_pipeline/d2011r2.html) +- ![][~ranges] P2017 Conditionally borrowed ranges: [p2017r0](2017_safe_range/p2017r0.html) [p2017r1](2017_safe_range/p2017r1.html) +- P2036 Change scope of lambda trailing-return-type: [p2036r0](2036_lambda_scope/p2036r0.html) [p2036r1](2036_lambda_scope/p2036r1.html) [p2036r2](2036_lambda_scope/p2036r2.html) [d2036r3](2036_lambda_scope/d2036r3.html) [p2036r3](2036_lambda_scope/p2036r3.html) +- ![][~constexpr] P2089 Function parameter constraints are fragile: [p2089r0](2089_param_constraints/p2089r0.html) +- P2095 Resolve lambda init-capture pack grammar (CWG2378): [p2095r0](2095_lambda_pack_cwg/p2095r0.html) +- P2120 Simplified structured bindings protocol with pack aliases: [p2120r0](1858_generalized_packs/p2120r0.html) +- P2121 do not return or else: [d2121r0](2121_do_not_return/d2121r0.html) +- P2162 Inheriting from std::variant: [p2162r0](2162_inherit_variant/p2162r0.html) [p2162r1](2162_inherit_variant/p2162r1.html) [p2162r2](2162_inherit_variant/p2162r2.html) +- ![][~ranges] P2210 Superior String Splitting: [p2210r0](2210_string_split/p2210r0.html) [p2210r1](2210_string_split/p2210r1.html) [p2210r2](2210_string_split/p2210r2.html) +- ![][~ranges] P2214 A Plan for C++23 Ranges: [p2214r0](2214_ranges_plan/p2214r0.html) [p2214r1](2214_ranges_plan/p2214r1.html) [p2214r2](2214_ranges_plan/p2214r2.html) +- ![][~constexpr] P2231 Missing constexpr in std::optional and std::variant: [p2231r0](2231_constexpr_optional_variant/p2231r0.html) [p2231r1](2231_constexpr_optional_variant/p2231r1.html) +- P2277 Packs outside of Templates: [p2277r0](2277_packs_outside_of_templates/p2277r0.html) +- ![][~ranges] P2278 cbegin should always return a constant iterator: [p2278r0](2278_cbegin/p2278r0.html) [p2278r1](2278_cbegin/p2278r1.html) [p2278r2](2278_cbegin/p2278r2.html) [p2278r3](2278_cbegin/p2278r3.html) [p2278r4](2278_cbegin/p2278r4.html) +- P2279 We need a language mechanism for customization points: [p2279r0](2279_static_polymorphism/p2279r0.html) [d2279r1](2279_static_polymorphism/d2279r1.html) +- ![][~constexpr] P2280 Using unknown pointers and references in constant expressions: [p2280r0](2280_unknown_reference/p2280r0.html) [p2280r1](2280_unknown_reference/p2280r1.html) [p2280r2](2280_unknown_reference/p2280r2.html) [p2280r3](2280_unknown_reference/p2280r3.html) [p2280r4](2280_unknown_reference/p2280r4.html) +- ![][~ranges] P2286 Formatting Ranges: [p2286r0](2286_fmt_ranges/p2286r0.html) [p2286r1](2286_fmt_ranges/p2286r1.html) [p2286r2](2286_fmt_ranges/p2286r2.html) [p2286r3](2286_fmt_ranges/p2286r3.html) [p2286r4](2286_fmt_ranges/p2286r4.html) [p2286r5](2286_fmt_ranges/p2286r5.html) [p2286r6](2286_fmt_ranges/p2286r6.html) [p2286r7](2286_fmt_ranges/p2286r7.html) [p2286r8](2286_fmt_ranges/p2286r8.html) +- P2287 Designated-initializers for Base Classes: [p2287r0](2287_designated_base/p2287r0.html) [p2287r1](2287_designated_base/p2287r1.html) [p2287r2](2287_designated_base/p2287r2.html) +- ![][~ranges] P2322 ranges::fold: [p2322r0](2322_fold/p2322r0.html) [p2322r1](2322_fold/p2322r1.html) [p2322r2](2322_fold/p2322r2.html) [p2322r3](2322_fold/p2322r3.html) [p2322r4](2322_fold/p2322r4.html) [p2322r5](2322_fold/p2322r5.html) [p2322r6](2322_fold/p2322r6.html) +- ![][~ranges] P2325 Views should not be required to be default constructible: [p2325r0](2325_views_default/p2325r0.html) [p2325r1](2325_views_default/p2325r1.html) [p2325r2](2325_views_default/p2325r2.html) [p2325r3](2325_views_default/p2325r3.html) +- ![][~ranges] P2387 Pipe support for user-defined range adaptors: [p2387r0](2387_ranges_pipes/p2387r0.html) [p2387r1](2387_ranges_pipes/p2387r1.html) [p2387r2](2387_ranges_pipes/p2387r2.html) [p2387r3](2387_ranges_pipes/p2387r3.html) +- ![][~ranges] P2415 What is a view ?: [p2415r0](2415_what_view/p2415r0.html) [p2415r1](2415_what_view/p2415r1.html) [p2415r2](2415_what_view/p2415r2.html) +- ![][~ranges] P2441 views::join_with: [p2441r0](2441_join_with/p2441r0.html) [p2441r1](2441_join_with/p2441r1.html) [p2441r2](2441_join_with/p2441r2.html) +- ![][~ranges] P2446 views::as_rvalue: [p2446r0](2446_move_view/p2446r0.html) [p2446r1](2446_move_view/p2446r1.html) [p2446r2](2446_move_view/p2446r2.html) +- ![][~constexpr] P2448 Relaxing some constexpr restrictions: [p2448r0](2448_relax_constexpr/p2448r0.html) [p2448r1](2448_relax_constexpr/p2448r1.html) [p2448r2](2448_relax_constexpr/p2448r2.html) +- P2481 Forwarding reference to specific type/template: [p2481r0](2481_forward_ref/p2481r0.html) [p2481r1](2481_forward_ref/p2481r1.html) [p2481r2](2481_forward_ref/p2481r2.html) +- ![][~constexpr] P2484 Extending support for class types as non-type template parameters: [p2484r0](2484_extend_cnttp/p2484r0.html) +- P2493 Missing feature test macros for C++20 core papers: [p2493r0](2493_core_feature_test/p2493r0.html) +- P2508 Expose std::basic-format-string<charT, Args...>: [p2508r0](2508_expose_format_string/p2508r0.html) [p2508r1](2508_expose_format_string/p2508r1.html) [p2508r2](2508_expose_format_string/p2508r2.html) +- ![][~ranges] P2520 move_iterator<T*> should be a random access iterator: [p2520r0](2520_move_iterator/p2520r0.html) [p2520r1](2520_move_iterator/p2520r1.html) +- ![][~ranges] P2550 ranges::copy should say output_iterator somewhere: [p2550r0](2550_algo_output_iterator/p2550r0.html) [p2550r1](2550_algo_output_iterator/p2550r1.html) +- P2561 A control flow operator: [p2561r0](2561_operator_try/p2561r0.html) [p2561r1](2561_operator_try/p2561r1.html) [p2561r2](2561_operator_try/p2561r2.html) +- ![][~constexpr] P2564 consteval needs to propagate up: [p2564r0](2564_consteval_patch/p2564r0.html) [p2564r1](2564_consteval_patch/p2564r1.html) [p2564r2](2564_consteval_patch/p2564r2.html) [p2564r3](2564_consteval_patch/p2564r3.html) +- ![][~ranges] P2585 Improve default container formatting: [p2585r0](2585_fmt_container/p2585r0.html) [p2585r1](2585_fmt_container/p2585r1.html) +- P2593 Allowing static_assert(false): [p2593r0](2593_static_assert/p2593r0.html) [p2593r1](2593_static_assert/p2593r1.html) +- P2602 Poison Pills are Too Toxic: [p2602r0](2602_poison_pills/p2602r0.html) [p2602r1](2602_poison_pills/p2602r1.html) [p2602r2](2602_poison_pills/p2602r2.html) +- P2637 Member visit: [p2637r0](2637_member_visit/p2637r0.html) [p2637r1](2637_member_visit/p2637r1.html) [p2637r2](2637_member_visit/p2637r2.html) [p2637r3](2637_member_visit/p2637r3.html) +- ![][~constexpr] P2641 Checking if a union alternative is active: [p2641r0](2641_active_union/p2641r0.html) [p2641r1](2641_active_union/p2641r1.html) [p2641r2](2641_active_union/p2641r2.html) [p2641r3](2641_active_union/p2641r3.html) [p2641r4](2641_active_union/p2641r4.html) +- ![][~constexpr] P2647 Permitting static constexpr variables in constexpr functions: [p2647r0](2647_static_constexpr/p2647r0.html) [p2647r1](2647_static_constexpr/p2647r1.html) +- ![][~constexpr] P2670 Non-transient constexpr allocation: [p2670r0](2670_constexpr_allocation/p2670r0.html) [p2670r1](2670_constexpr_allocation/p2670r1.html) +- P2671 Syntax Choices for Generalized Pack Declaration and Usage: [p2671r0](2671_syntax_generalized_packs/p2671r0.html) +- P2672 Exploring the Design Space for a Pipeline Operator: [p2672r0](2672_pipeline_designs/p2672r0.html) +- ![][~constexpr] P2747 constexpr placement new: [p2747r0](2747_constexpr_void_ptr/p2747r0.html) [p2747r1](2747_constexpr_void_ptr/p2747r1.html) +- P2757 Type-checking format args: [p2757r0](2757_type_check_format/p2757r0.html) [p2757r1](2757_type_check_format/p2757r1.html) [p2757r2](2757_type_check_format/p2757r2.html) [p2757r3](2757_type_check_format/p2757r3.html) +- ![][~constexpr] P2758 Emitting messages at compile time: [p2758r0](2758_compile_time_messages/p2758r0.html) [p2758r1](2758_compile_time_messages/p2758r1.html) [p2758r2](2758_compile_time_messages/p2758r2.html) +- ![][~ranges] P2760 A Plan for C++26 Ranges: [p2760r0](2760_ranges_26_plan/p2760r0.html) [p2760r1](2760_ranges_26_plan/p2760r1.html) +- P2806 do expressions: [p2806r0](2806_do_expr/p2806r0.html) [p2806r1](2806_do_expr/p2806r1.html) [p2806r2](2806_do_expr/p2806r2.html) +- P2944 Comparisons for reference_wrapper: [p2944r0](2944_comparisons_for_reference_wrapper/p2944r0.html) [p2944r1](2944_comparisons_for_reference_wrapper/p2944r1.html) [p2944r2](2944_comparisons_for_reference_wrapper/p2944r2.html) +- P2945 Additional format specifiers for time_point: [p2945r0](2945_format_time_point/p2945r0.html) +- P2994 On the Naming of Packs: [p2994r0](2994_naming_of_packs/p2994r0.html) [p2994r1](2994_naming_of_packs/p2994r1.html) +- ![][~constexpr] P2996 Reflection for C++26: [p2996r0](2996_reflection/p2996r0.html) [p2996r1](2996_reflection/p2996r1.html) [p2996r2](2996_reflection/p2996r2.html) +- ![][~ranges] P2997 Removing the common reference requirement from the indirectly invocable concepts: [p2997r0](2997_common_reference_algo/p2997r0.html) +- ![][~constexpr] P3032 Less transient constexpr allocation: [p3032r0](3032_less_transient_allocation/p3032r0.html) +- ![][~constexpr] P3074 std::uninitialized<T>: [p3074r0](3074_consexpr_union_lifetime/p3074r0.html) [p3074r1](3074_consexpr_union_lifetime/p3074r1.html) [p3074r2](3074_consexpr_union_lifetime/p3074r2.html) +- P3171 Adding functionality to placeholder types: [p3171r0](3171_boost_lambda2/p3171r0.html) + +[~ranges]: https://img.shields.io/badge/-ranges-brightgreen +[~constexpr]: https://img.shields.io/badge/-constexpr-blueviolet +[~spaceship]: https://img.shields.io/badge/-%3C%3D%3E-yellow + +# Other Papers +- Concepts, v2: [concepts_v2.html](concepts_v2/concepts_v2.html) +- Exploring Placeholders: [dxxxxr0.html](xxxx_placeholders/dxxxxr0.html) +- Various Designs for Pipelines: [pipelines.html](xxxx_placeholders/pipelines.html) +- Exploring Placeholders: [placeholders.html](xxxx_placeholders/placeholders.html) +- Variadic Friends: [variadic_friends.html](variadic_friends/variadic_friends.html) diff --git a/all_papers.tpl b/all_papers.tpl deleted file mode 100644 index e3dc7fa7..00000000 --- a/all_papers.tpl +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - - - -Papers with Numbers | cpp_proposals - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

cpp_proposals

- - -

Papers with Numbers

- - -

Other Papers

- - - - -
- - - - diff --git a/make_all_papers b/make_all_papers index 74f7dd2d..86725d57 100755 --- a/make_all_papers +++ b/make_all_papers @@ -6,7 +6,6 @@ import collections import sys import frontmatter from bs4 import BeautifulSoup -import jinja2 def get_title(filename): with open(filename) as f: @@ -50,56 +49,28 @@ for filename in glob.glob(f'*/*.html'): else: others.append((base, filename)) +out = open('all_papers.md', 'w') +print('# Papers with Numbers', file=out) titles = {847: "Deducing `this`"} - -template = jinja2.Template(open("all_papers.tpl").read()) -numbered_papers = [] - -badges = { - "ranges": "-ranges-brightgreen", - "constexpr": "-constexpr-blueviolet", - "spaceship": "-%3C%3D%3E-yellow" -} - for num in sorted(papers): vals = sorted(papers[num]) title = titles.get(num) if title is None: title = get_title(vals[-1][-1]) - - current = {"number": f"P{num:04}", "title": title} - current["revisions"] = [{"href": filename, "name": f"{pd}{num:04}r{rev}"} for (rev, pd, _, filename) in vals] + all_revs = ' '.join(f'[{pd}{num:04d}r{rev}]({filename})' for (rev, pd, _, filename) in vals) tag = vals[-1][2] - if tag is not None: - current["badge"] = badges[tag] - - numbered_papers.append(current) - -print(template.render({"numbered_papers": numbered_papers}), file=open("all_papers.html", "w")) - -# out = open('all_papers.md', 'w') -# print('# Papers with Numbers', file=out) -# titles = {847: "Deducing `this`"} -# for num in sorted(papers): -# vals = sorted(papers[num]) -# title = titles.get(num) -# if title is None: -# title = get_title(vals[-1][-1]) -# all_revs = ' '.join(f'[{pd}{num:04d}r{rev}]({filename})' for (rev, pd, _, filename) in vals) - -# tag = vals[-1][2] -# if tag is None: -# tag_str = '' -# else: -# tag_str = f'![][~{tag}] ' -# print(f'- {tag_str}P{num:04} {title}: {all_revs}', file=out) - -# print(file=out) -# print('[~ranges]: https://img.shields.io/badge/-ranges-brightgreen', file=out) -# print('[~constexpr]: https://img.shields.io/badge/-constexpr-blueviolet', file=out) -# print('[~spaceship]: https://img.shields.io/badge/-%3C%3D%3E-yellow', file=out) -# print(file=out) -# print('# Other Papers', file=out) -# for (base, filename) in sorted(others): -# print(f'- {get_title(filename)}: [{base}]({filename})', file=out) + if tag is None: + tag_str = '' + else: + tag_str = f'![][~{tag}] ' + print(f'- {tag_str}P{num:04} {title}: {all_revs}', file=out) + +print(file=out) +print('[~ranges]: https://img.shields.io/badge/-ranges-brightgreen', file=out) +print('[~constexpr]: https://img.shields.io/badge/-constexpr-blueviolet', file=out) +print('[~spaceship]: https://img.shields.io/badge/-%3C%3D%3E-yellow', file=out) +print(file=out) +print('# Other Papers', file=out) +for (base, filename) in sorted(others): + print(f'- {get_title(filename)}: [{base}]({filename})', file=out)