Skip to content

Commit d0689d1

Browse files
committed
erased-return: removed unnecessary std::function.
1 parent 243702b commit d0689d1

File tree

2 files changed

+30
-30
lines changed

2 files changed

+30
-30
lines changed

ReflectionTemplateLib/rtl/dispatch/function_lambda.h

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -19,19 +19,19 @@ namespace rtl::dispatch
1919
struct function_lambda<fn_void::no, erase::t_ctor, args_t...> : lambda
2020
{
2121
// ditch all std::functions and use fn-pointer directly - what??? Yes!
22-
using lambda_t = Return(*)(alloc, traits::normal_sign_t<args_t>&&...);
22+
using fptr_t = Return(*)(alloc, traits::normal_sign_t<args_t>&&...);
2323

24-
const lambda_t& get_hop() const {
25-
return m_lambda;
24+
const fptr_t& get_hop() const {
25+
return m_fptr;
2626
}
2727

2828
private:
2929

30-
void set_hop(const lambda_t& lambda) {
31-
m_lambda = lambda;
30+
void set_hop(const fptr_t& fptr) {
31+
m_fptr = fptr;
3232
}
3333

34-
lambda_t m_lambda;
34+
fptr_t m_fptr;
3535

3636
template<class, class ...>
3737
friend struct dispatch::function_ptr;
@@ -69,19 +69,19 @@ namespace rtl::dispatch
6969
template<class...args_t>
7070
struct function_lambda<fn_void::no, erase::t_return, args_t...> : lambda
7171
{
72-
using lambda_t = std::function<std::any(const functor&, traits::normal_sign_t<args_t>...)>;
72+
using fptr_t = std::any(*)(const functor&, traits::normal_sign_t<args_t>&&...);
7373

74-
const lambda_t& get_hop() const {
75-
return m_lambda;
74+
const fptr_t& get_hop() const {
75+
return m_fptr;
7676
}
7777

7878
private:
7979

80-
void set_hop(const lambda_t& lambda) {
81-
m_lambda = lambda;
80+
void set_hop(const fptr_t& fptr) {
81+
m_fptr = fptr;
8282
}
8383

84-
lambda_t m_lambda;
84+
fptr_t m_fptr;
8585

8686
template<class, class ...>
8787
friend struct dispatch::function_ptr;
@@ -119,19 +119,19 @@ namespace rtl::dispatch
119119
template<class...args_t>
120120
struct function_lambda<fn_void::no, erase::t_method, args_t...> : lambda
121121
{
122-
using lambda_t = std::function<std::any(const functor&, const RObject&, traits::normal_sign_t<args_t>...)>;
122+
using fptr_t = std::any(*)(const functor&, const RObject&, traits::normal_sign_t<args_t>&&...);
123123

124-
const lambda_t& get_hop() const {
125-
return m_lambda;
124+
const fptr_t& get_hop() const {
125+
return m_fptr;
126126
}
127127

128128
private:
129129

130-
void set_hop(const lambda_t& lambda) {
131-
m_lambda = lambda;
130+
void set_hop(const fptr_t& fptr) {
131+
m_fptr = fptr;
132132
}
133133

134-
lambda_t m_lambda;
134+
fptr_t m_fptr;
135135

136136
template<class, class, class ...>
137137
friend struct dispatch::method_ptr;

ReflectionTemplateLib/rtl/dispatch/method_lambda.h

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -45,19 +45,19 @@ namespace rtl::dispatch
4545
struct method_lambda<fn_void::no, erase::t_return, known_t, args_t...> : lambda
4646
{
4747
using record_t = known_t;
48-
using lambda_t = std::function<std::any(const functor&, const record_t&, traits::normal_sign_t<args_t>...)>;
48+
using fptr_t = std::any(*)(const functor&, const record_t&, traits::normal_sign_t<args_t>&&...);
4949

50-
const lambda_t& get_hop() const {
51-
return m_lambda;
50+
const fptr_t& get_hop() const {
51+
return m_fptr;
5252
}
5353

5454
private:
5555

56-
void set_hop(const lambda_t& lambda) {
57-
m_lambda = lambda;
56+
void set_hop(const fptr_t& fptr) {
57+
m_fptr = fptr;
5858
}
5959

60-
lambda_t m_lambda;
60+
fptr_t m_fptr;
6161

6262
template<class, class, class...>
6363
friend struct method_ptr;
@@ -97,19 +97,19 @@ namespace rtl::dispatch
9797
struct method_lambda<fn_void::no, erase::t_target, known_t, args_t...> : lambda
9898
{
9999
using return_t = known_t;
100-
using lambda_t = std::function<return_t(const functor&, const rtl::RObject&, traits::normal_sign_t<args_t>...)>;
100+
using fptr_t = return_t(*)(const functor&, const rtl::RObject&, traits::normal_sign_t<args_t>&&...);
101101

102-
const lambda_t& get_hop() const {
103-
return m_lambda;
102+
const fptr_t& get_hop() const {
103+
return m_fptr;
104104
}
105105

106106
private:
107107

108-
void set_hop(const lambda_t& lambda) {
109-
m_lambda = lambda;
108+
void set_hop(const fptr_t& fptr) {
109+
m_fptr = fptr;
110110
}
111111

112-
lambda_t m_lambda;
112+
fptr_t m_fptr;
113113

114114
template<class, class, class...>
115115
friend struct method_ptr;

0 commit comments

Comments
 (0)