Skip to content

Commit c5db7cb

Browse files
authored
[no-ci] Update README.md
1 parent 7300118 commit c5db7cb

1 file changed

Lines changed: 32 additions & 5 deletions

File tree

README.md

Lines changed: 32 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,31 @@ That is, we see to build fast and convenient code to map your data structure to
55

66
Ultimately, this work might cover both serialization and deserialization.
77

8-
We've seen different proposals forhttps://github.com/nlohmann/json?tab=readme-ov-file#simplify-your-life-with-macros C++ reflection, for now we will focus on the latest paper (https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/p2996r3.html#converting-a-struct-to-a-tuple) that is targeting C++26.
8+
We've seen different proposals for C++ reflection, for now we will focus on the [latest paper](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/p2996r3.html#converting-a-struct-to-a-tuple) that is targeting C++26.
9+
10+
11+
Table of Contents
12+
-----------------
13+
14+
* [Why we are interested in (de)serializing using reflection?](#why-we-are-interested-in-deserializing-using-reflection)
15+
* [Current status](#current-status)
16+
* [Instructions for running the toy_builder example locally (using docker)](#instructions-for-running-the-toy_builder-example-locally-using-docker)
17+
* [Instructions for running it natively on macOS](#instructions-for-running-it-natively-on-macos)
18+
+ [1. Install Homebrew](#1-install-homebrew)
19+
+ [2. Install Necessary Packages](#2-install-necessary-packages)
20+
+ [3. Clone the Clang Source Code](#3-clone-the-clang-source-code)
21+
+ [4. Create a Build Directory](#4-create-a-build-directory)
22+
+ [5. Configure the Build](#5-configure-the-build)
23+
+ [6. Build LLVM/Clang](#6-build-llvmclang)
24+
+ [7. Install LLVM/Clang](#7-install-llvmclang)
25+
+ [8. Configure the Dynamic Linker](#8-configure-the-dynamic-linker)
26+
+ [9. Verify the Installation](#9-verify-the-installation)
27+
+ [10. Running the project](#10-running-the-project)
28+
+ [Running tests](#running-tests)
29+
+ [Additional comments regarding running natively on macOS](#additional-comments-regarding-running-natively-on-macos)
30+
* [Profiling](#profiling)
31+
* [References](#references)
932

10-
Some other references regarding other implementations of reflection in C++:
11-
- https://github.com/matus-chochlik/mirror/blob/develop/example/mirror/print_struct.cpp (depends on llvm-reflection branch + mirror library)
12-
- https://godbolt.org/z/eo3zrro4v (using boost/ext static reflection, latest version is not currently compiling)
1333

1434
## Why we are interested in (de)serializing using reflection?
1535
If you take a look at one of the reference implementations of (de)serialization
@@ -105,7 +125,7 @@ under macOS, you are doing so at your own risks.
105125

106126
Here are the step-by-step instructions:
107127

108-
### 1. Install Homebrew
128+
#### 1. Install Homebrew
109129

110130
If you don't already have Homebrew installed, install it by running:
111131

@@ -249,3 +269,10 @@ sudo apt-get install linux-perf
249269
```
250270

251271
Your password inside the docker container is your username.
272+
273+
## References
274+
275+
276+
Some other references regarding other implementations of reflection in C++:
277+
- https://github.com/matus-chochlik/mirror/blob/develop/example/mirror/print_struct.cpp (depends on llvm-reflection branch + mirror library)
278+
- https://godbolt.org/z/eo3zrro4v (using boost/ext static reflection, latest version is not currently compiling)

0 commit comments

Comments
 (0)