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
Reflect().record<Person>(person::class_).methodConst(person::str_updateLastName).build(&Person::updateLastName), //const method registration, 'methodConst()' function must be used. compiler error otherwise.
Reflect().record<Person>(person::class_).methodConst<string>(person::str_updateAddress).build(&Person::updateAddress), //overloaded method based on 'const'.
Copy file name to clipboardExpand all lines: ReflectionTemplateLib/access/inc/CxxMirror.h
+7-7Lines changed: 7 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -20,13 +20,13 @@ namespace rtl {
20
20
* all the type registration is done while constructing its object.
21
21
* its objects can be createed locally and will be destroyed as regular object, at scope's end.
22
22
* deleted copy constructor and assignment operator, can only be passed around as reference or wrapped in a smart pointer.
23
-
* the inherited data members are freed upon destruction, except the functors (function/method pointer) tables, they have static lifetime.
24
-
* functor tables are not member of this or base class, this class contains 'Function' objects which is a hash-key for looking up a particular functor.
25
-
* creating multiple objects of CxxMirror and registring the same functor will not increase the functor tables size.
26
-
* once a functor is registered, no entry will be added to the functor table for the same functor, it acts as a set.
27
-
* registring the same functor will create duplicate hash-key 'Function' object, which will be ignored if in the same 'CxxMirror' object.
28
-
if two different 'CxxMirror' objects are created and registering the same functor, the functor table will have only one entry for the functor
29
-
but two duplicate 'Function' objects will be created, held by respective 'CxxMirror' object.
23
+
* the inherited data members are freed upon destruction, except the 'functor-containers', they have static lifetime.
24
+
* 'functor-containers' are not member of this or base class, base only contains 'Function' objects which is a hash-key for looking up a particular functor.
25
+
* creating multiple objects of CxxMirror and registring the same functor will not increase the 'functor-container' size.
26
+
* once a functor is registered, no entry will be added to the 'functor-container' for the same functor.
27
+
* registering the same functor will create duplicate hash-key 'Function' object, which will be ignored if in the same 'CxxMirror' object.
28
+
if two different 'CxxMirror' objects are created and registering the same functor, the functor-container will have only one entry for the functor
29
+
but two identical 'Function' objects will be created, held by respective 'CxxMirror' object.
0 commit comments