You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* **`.method<..signature..>(...)`**: registers a non-const member function. The template parameter `<..signature..>` disambiguates overloads.
110
110
* Variants exist for const (`.methodConst`) and static (`.methodStatic`) methods.
111
111
112
-
> **Note:** The `function<..signature..>` and `method<..signature..>` template parameters are primarily for overload resolution. They tell RTL exactly which overload of a function or method you mean to register.
112
+
👉 **Note:**
113
+
> ***The `function<..signature..>` and `method<..signature..>` template parameters are primarily for overload resolution. They tell RTL exactly which overload of a function or method you mean to register.***
113
114
114
115
With these constructs—namespaces, non-member functions, overloads, records `(class/struct)`, constructors, and methods—you now have the full registration syntax for RTL. Together, they let you build a complete reflective model of your C++ code.
115
116
@@ -195,7 +196,7 @@ When dealing with `rtl::RObject` results:
195
196
196
197
👉 **Tip**
197
198
198
-
> Use `canViewAs<T>()` for a cheap boolean check when branching, and `view<T>()` when you actually need the value.
199
+
> ***Use `canViewAs<T>()` for a cheap boolean check when branching, and `view<T>()` when you actually need the value.***
* All arguments are forwarded as universal references (`&&`), enabling **perfect forwarding** with **no copies**. Arguments are ultimately received exactly as the registered function expects (`lvalue`, `rvalue`, `const-lvalue-ref`).
265
266
*`rtl::RObject` contains the return value, or is empty if the method returns `void`.
266
267
267
-
> By retrieving a `Method` from a `Record`, binding a target instance, and specifying the signature as needed, RTL allows safe, perfectly-forwarded reflective calls on member functions.
268
+
> ***By retrieving a `Method` from a `Record`, binding a target instance, and specifying the signature as needed, RTL allows safe, perfectly-forwarded reflective calls on member functions.***
@@ -503,7 +504,7 @@ Across both stack and heap moves:
503
504
* Cloning or invoking a moved-from object results in `rtl::error::EmptyRObject`.
504
505
505
506
✅ Bottom Line
506
-
> *“When you move an `RObject`, RTL either calls your type’s move constructor (stack) or transfers ownership of its `unique_ptr` (heap). In both cases, the source is emptied and ownership remains safe.”*
507
+
> ***“When you move an `RObject`, RTL either calls your type’s move constructor (stack) or transfers ownership of its `unique_ptr` (heap). In both cases, the source is emptied and ownership remains safe.”***
0 commit comments