@@ -153,18 +153,6 @@ bool Equals(const RVarSignal<D,L>& lhs, const RVarSignal<D,R>& rhs)
153153
154154/* **********************************/ REACT_BEGIN /* ***********************************/
155155
156- // //////////////////////////////////////////////////////////////////////////////////////
157- // / IsSignalT
158- // //////////////////////////////////////////////////////////////////////////////////////
159- template <typename D, typename T>
160- struct IsSignalT { static const bool value = false ; };
161-
162- template <typename D, typename T>
163- struct IsSignalT <D, RSignal<D,T>> { static const bool value = true ; };
164-
165- template <typename D, typename T>
166- struct IsSignalT <D, RVarSignal<D,T>> { static const bool value = true ; };
167-
168156// //////////////////////////////////////////////////////////////////////////////////////
169157// / MakeVar
170158// //////////////////////////////////////////////////////////////////////////////////////
@@ -240,7 +228,7 @@ inline auto MakeSignal(TFunc func, const RSignal<D,TArgs>& ... args)
240228
241229 return RSignal<D,S>(
242230 std::make_shared<REACT_IMPL::FunctionNode<D, S, TArgs ...>>(
243- args.GetPtr () ..., func , false ));
231+ func, args.GetPtr () ..., false ));
244232}
245233
246234// //////////////////////////////////////////////////////////////////////////////////////
@@ -260,7 +248,7 @@ inline auto operator ## op(const TSignal<D,TVal>& arg) \
260248{ \
261249 return RSignal<D,TVal>( \
262250 std::make_shared<REACT_IMPL::FunctionNode<D,TVal,TVal>>( \
263- arg. GetPtr (), [] (TVal a) { return op a; }, false )); \
251+ [] (TVal a) { return op a; }, arg. GetPtr () , false )); \
264252}
265253
266254DECLARE_OP (+);
@@ -290,8 +278,8 @@ inline auto operator ## op(const TLeftSignal<D,TLeftVal>& lhs, \
290278{ \
291279 return RSignal<D,TLeftVal>( \
292280 std::make_shared<REACT_IMPL::FunctionNode<D,TLeftVal,TLeftVal,TRightVal>>( \
293- lhs. GetPtr (), rhs. GetPtr (), [] (const TLeftVal& a, const TRightVal& b) { \
294- return a op b; } , false )); \
281+ [] (const TLeftVal& a, const TRightVal& b) { return a op b; }, \
282+ lhs. GetPtr (), rhs. GetPtr () , false )); \
295283} \
296284 \
297285template \
@@ -311,7 +299,7 @@ inline auto operator ## op(const TLeftSignal<D,TLeftVal>& lhs, \
311299{ \
312300 return RSignal<D,TLeftVal>( \
313301 std::make_shared<REACT_IMPL::FunctionNode<D,TLeftVal,TLeftVal>>( \
314- lhs. GetPtr (), [=] (const TLeftVal& a) { return a op rhs; }, false )); \
302+ [=] (const TLeftVal& a) { return a op rhs; }, lhs. GetPtr () , false )); \
315303} \
316304 \
317305template \
@@ -331,7 +319,7 @@ inline auto operator ## op(const TLeftVal& lhs, \
331319{ \
332320 return RSignal<D,TRightVal>( \
333321 std::make_shared<REACT_IMPL::FunctionNode<D,TRightVal,TRightVal>>( \
334- rhs. GetPtr (), [=] (const TRightVal& a) { return lhs op a; }, false )); \
322+ [=] (const TRightVal& a) { return lhs op a; }, rhs. GetPtr () , false )); \
335323}
336324
337325DECLARE_OP (+);
@@ -386,7 +374,8 @@ inline auto operator ## op(const TLeftSignal<D,TLeftVal>& lhs, \
386374{ \
387375 return RSignal<D,bool >( \
388376 std::make_shared<REACT_IMPL::FunctionNode<D,bool ,TLeftVal,TRightVal>>( \
389- lhs.GetPtr (), rhs.GetPtr (), [] (TLeftVal a, TRightVal b) { return a op b; }, false )); \
377+ [] (const TLeftVal& a, const TRightVal& b) { return a op b; }, \
378+ lhs.GetPtr (), rhs.GetPtr (), false )); \
390379} \
391380 \
392381template \
@@ -405,7 +394,7 @@ inline auto operator ## op(const TLeftSignal<D,TLeftVal>& lhs, const TRightVal&
405394{ \
406395 return RSignal<D,bool >( \
407396 std::make_shared<REACT_IMPL::FunctionNode<D,bool ,TLeftVal>>( \
408- lhs. GetPtr (), [=] (TLeftVal a) { return a op rhs; }, false )); \
397+ [=] (const TLeftVal& a) { return a op rhs; }, lhs. GetPtr () , false )); \
409398}
410399
411400DECLARE_OP (==);
@@ -431,7 +420,7 @@ inline auto operator ## op(const RSignal<D,TVal>& arg) \
431420{ \
432421 return RSignal<D,TVal>( \
433422 std::make_shared<REACT_IMPL::FunctionNode<D,bool ,TVal>>( \
434- arg. GetPtr (), [] (TVal a) { return op a; }, false )); \
423+ [] (const TVal& a) { return op a; }, arg. GetPtr () , false )); \
435424}
436425
437426DECLARE_OP (!);
@@ -454,7 +443,8 @@ inline auto operator ## op(const RSignal<D,TLeftVal>& lhs, \
454443{ \
455444 return RSignal<D,bool >( \
456445 std::make_shared<REACT_IMPL::FunctionNode<D,bool ,TLeftVal,TRightVal>>( \
457- lhs.GetPtr (), rhs.GetPtr (), [] (TLeftVal a, TRightVal b) { return a op b; }, false )); \
446+ [] (const TLeftVal& a, const TRightVal& b) { return a op b; }, \
447+ lhs.GetPtr (), rhs.GetPtr (), false )); \
458448} \
459449 \
460450template \
@@ -468,7 +458,7 @@ inline auto operator ## op(const RSignal<D,TLeftVal>& lhs, const TRightVal& rhs)
468458{ \
469459 return RSignal<D,bool >( \
470460 std::make_shared<REACT_IMPL::FunctionNode<D,bool ,TLeftVal>>( \
471- lhs. GetPtr (), [=] (TLeftVal a) { return a op rhs; }, false )); \
461+ [=] (TLeftVal a) { return a op rhs; }, lhs. GetPtr () , false )); \
472462}
473463
474464DECLARE_OP (&&);
0 commit comments