Some performance improvements by using perfect argument forwarding

This commit is contained in:
Jason Turner
2012-05-14 17:45:30 -06:00
parent 98d2eadde2
commit 48ecb3e2b4
2 changed files with 5 additions and 5 deletions

View File

@@ -59,7 +59,7 @@ namespace chaiscript
Ret operator()(Param...param)
{
return Function_Caller_Ret<Ret>::call(m_funcs, {
(std::is_reference<Param>::value&&!(std::is_same<chaiscript::Boxed_Value, typename std::remove_const<typename std::remove_reference<Param>::type>::type>::value))?Boxed_Value(std::ref(param)):Boxed_Value(param)...
(std::is_reference<Param>::value&&!(std::is_same<chaiscript::Boxed_Value, typename std::remove_const<typename std::remove_reference<Param>::type>::type>::value))?Boxed_Value(std::ref(param)):Boxed_Value(param)...
}
);