pfr

std::tuple like methods for user defined types without any macro or boilerplate code (by boostorg)

Pfr Alternatives

Similar projects and alternatives to pfr

  1. serde

    198 pfr VS serde

    Serialization framework for Rust

  2. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  3. Rocket

    162 pfr VS Rocket

    A web framework for Rust.

  4. score

    112 pfr VS score

    ossia score, an interactive sequencer for the intermedia arts

  5. manifold

    97 pfr VS manifold

    Manifold is a Java compiler plugin, its features include Metaprogramming, Properties, Extension Methods, Operator Overloading, Templates, a Preprocessor, and more.

  6. create-rust-app

    Set up a modern rust+react web app by running one command.

  7. makepad

    24 pfr VS makepad

    Makepad is a creative software development platform for Rust that compiles to wasm/webGL, osx/metal, windows/dx11 linux/opengl

  8. magic_get

    std::tuple like methods for user defined types without any macro or boilerplate code

  9. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  10. ComLightInterop

    Cross-platform COM interop library for .NET Core 2.1 or newer

  11. Magic Enum C++

    Static reflection for enums (to string, from string, iteration) for modern C++, work with any enum type without any macro or boilerplate code

  12. miniserde

    5 pfr VS miniserde

    Data structure serialization library with several opposite design goals from Serde

  13. MLV-App

    7 pfr VS MLV-App

    All in one MLV processing app.

  14. EU4ConsolePatcher

    A simple memory patcher which enables the internal developer console in ironman mode

  15. nanoserde

    4 pfr VS nanoserde

    Serialization library with zero dependencies

  16. sapio

    2 pfr VS sapio

    A Bitcoin Programming Language

  17. clang-tutor

    A collection of out-of-tree Clang plugins for teaching and learning

  18. serde_v8

    1 pfr VS serde_v8

    Discontinued Moved to https://github.com/denoland/deno

  19. Aggreget

    Use your structures like tuples. Similar to MagicGet but using C++ 20 concepts.

  20. node-foundationdb

    1 pfr VS node-foundationdb

    Modern Node.js FoundationDB bindings

  21. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better pfr alternative or higher similarity.

pfr discussion

Log in or Post with

pfr reviews and mentions

Posts with mentions or reviews of pfr. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-03-23.
  • Rooting for P1061 "Structured Bindings can introduce a Pack"
    1 project | /r/cpp | 19 Oct 2023
    This single feature opens a world of new possiblities. For example, it makes implementing "getting the number of fields" trivial. Furthrmore, and much more importantly, it enables turning a struct into a tuple. Currently, this can only be done by enumerating cases (therefore it's not fully generic), as with Boost PFR. By the way, PFR greatly simplifies our codebases, especially for parts with serialization and/or reflection.
  • Minimum viable declarative GUI in C++
    3 projects | /r/cpp | 23 Mar 2022
    The code is relatively short and can be groked with a few coffees: https://github.com/boostorg/pfr/tree/develop/include/boost/pfr ; if you're using C++17 it uses a binary search (https://github.com/boostorg/pfr/blob/develop/include/boost/pfr/detail/fields_count.hpp) to count the number of fields in a struct, by starting by the observation that a likely majorant on the number of fields in a struct is sizeof(the struct) * CHAR_BIT, assuming not too many [[no_unique_address]] tomfooleries. Then once this count is known it's possible to simply map them as a tuple through sheer brute force and destructuring: https://github.com/boostorg/pfr/blob/develop/include/boost/pfr/detail/core17_generated.hpp
  • The Serde Rust Framework
    14 projects | news.ycombinator.com | 14 Oct 2021
    I wonder if the c++ approach of boost.pfr would be portable to rust ? It allows reflection on aggregates without needing to annotate anything: https://github.com/boostorg/pfr
  • Counting the number of fields in an aggregate in C++20
    2 projects | /r/cpp | 14 Mar 2021
    It is an 'interesting' meta-programming problem though (wasted many weeks on it myself, fixed a small gcc bug - a 'uniform init' edge case and filed an issue with magic_get Reflecting array members of aggregate structs).
  • A note from our sponsor - CodeRabbit
    coderabbit.ai | 27 Mar 2025
    Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR. Learn more →

Stats

Basic pfr repo stats
4
1,370
5.8
12 days ago

boostorg/pfr is an open source project licensed under gtkbook License which is not an OSI approved license.

The primary programming language of pfr is C++.


Sponsored
CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai

Did you know that C++ is
the 7th most popular programming language
based on number of references?