Skip to content

Commit 125b2f5

Browse files
committed
Updated Readme, action yml.
1 parent 13fc6a4 commit 125b2f5

File tree

2 files changed

+12
-10
lines changed

2 files changed

+12
-10
lines changed

.github/workflows/build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ name: RTL Build
22

33
on:
44
push:
5-
branches: [ release ]
5+
branches: [ release, develop ]
66
paths-ignore:
77
- '**/*.md'
88
pull_request:
9-
branches: [ release ]
9+
branches: [ release, develop ]
1010
paths-ignore:
1111
- '**/*.md'
1212
workflow_dispatch:

README.md

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,27 +2,29 @@
22

33
**Reflection Template Library (RTL)** brings rich runtime reflection to modern C++ — combining compile-time safety with runtime flexibility.
44

5-
🪞 What is “Reflection”? — Reflection lets you intract with code *by name* instead of *by type*.
6-
Imagine you’ve written a simple function,
5+
🪞 What's “Reflection” ?
6+
Reflection lets you interact with code by `name` instead of by `type`. Imagine you’ve written a simple function,
77
```c++
88
std::string GetAsString(int num);
99
```
1010
**RTL** lets you call it dynamically:
1111
```c++
12-
rtl::function<std::string(int)> toStr = cxx_mirror.getFunction("GetAsString") //cxx_mirror?? see quick-preview!
12+
rtl::function<std::string(int)> toStr = cxx_mirror.getFunction("GetAsString") // cxx_mirror?? see quick preview!
1313
->argsT<int>()
1414
.returnT<std::string>();
15-
std::string result = toStr(69375); // Works!
15+
if(toStr) { // All's well?
16+
std::string result = toStr(69375); // Works!
17+
}
1618
```
17-
**No includes | No compile-time type knowledge | Just runtime lookup & type-safe invocation**.
19+
**No includes. No compile-time linking. Just run-time lookup & type-safe invocation**.
1820

19-
⚡ Performance? Overhead? Practically none.
20-
This RTL reflective call is just a native function pointer hop — faster than `std::function`. Yes! `rtl::function` is faster than `std::function`.
21+
⚡ Performance!
22+
Overhead? Practically none. **RTL**'s reflective calls — when return and argument types are known — are just a native function-pointer hop, often faster than `std::function`.
23+
Yes! `rtl::function` is faster than `std::function`.
2124

2225
RTL performs reflective invocations — for free functions, methods, constructors — at near-zero cost, even when types are unknown at compile time.
2326

2427
💡 In One Line
25-
2628
***RTL is a lightweight, static library that enables a robust, type-safe runtime reflection system for C++ — as flexible as in managed languages, yet as close as possible to native performance.***
2729

2830
[![CMake](https://img.shields.io/badge/CMake-Enabled-brightgreen)](https://cmake.org)&nbsp;[![C++20](https://img.shields.io/badge/C++-20-blue)](https://isocpp.org)&nbsp;[![RTL Build](https://github.com/ReflectCxx/ReflectionTemplateLibrary-CPP/actions/workflows/build.yml/badge.svg?branch=release)](https://github.com/ReflectCxx/ReflectionTemplateLibrary-CPP/actions/workflows/build.yml?query=branch%3Arelease)&nbsp;[![License: MIT](https://img.shields.io/badge/License-MIT-green)](LICENSE)

0 commit comments

Comments
 (0)