BAN: Function call is now const
This commit is contained in:
@@ -43,10 +43,10 @@ namespace BAN
|
|||||||
clear();
|
clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
Ret operator()(Args... args)
|
Ret operator()(Args... args) const
|
||||||
{
|
{
|
||||||
ASSERT(*this);
|
ASSERT(*this);
|
||||||
return reinterpret_cast<CallableBase*>(m_storage)->call(forward<Args>(args)...);
|
return reinterpret_cast<const CallableBase*>(m_storage)->call(forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
|
|
||||||
operator bool() const
|
operator bool() const
|
||||||
@@ -70,7 +70,7 @@ namespace BAN
|
|||||||
struct CallableBase
|
struct CallableBase
|
||||||
{
|
{
|
||||||
virtual ~CallableBase() {}
|
virtual ~CallableBase() {}
|
||||||
virtual Ret call(Args...) = 0;
|
virtual Ret call(Args...) const = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct CallablePointer : public CallableBase
|
struct CallablePointer : public CallableBase
|
||||||
@@ -79,7 +79,7 @@ namespace BAN
|
|||||||
: m_function(function)
|
: m_function(function)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
virtual Ret call(Args... args) override
|
virtual Ret call(Args... args) const override
|
||||||
{
|
{
|
||||||
return m_function(forward<Args>(args)...);
|
return m_function(forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
@@ -96,7 +96,7 @@ namespace BAN
|
|||||||
, m_function(function)
|
, m_function(function)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
virtual Ret call(Args... args) override
|
virtual Ret call(Args... args) const override
|
||||||
{
|
{
|
||||||
return (m_owner->*m_function)(forward<Args>(args)...);
|
return (m_owner->*m_function)(forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
@@ -114,7 +114,7 @@ namespace BAN
|
|||||||
, m_function(function)
|
, m_function(function)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
virtual Ret call(Args... args) override
|
virtual Ret call(Args... args) const override
|
||||||
{
|
{
|
||||||
return (m_owner->*m_function)(forward<Args>(args)...);
|
return (m_owner->*m_function)(forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
@@ -131,7 +131,7 @@ namespace BAN
|
|||||||
: m_lambda(lambda)
|
: m_lambda(lambda)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
virtual Ret call(Args... args) override
|
virtual Ret call(Args... args) const override
|
||||||
{
|
{
|
||||||
return m_lambda(forward<Args>(args)...);
|
return m_lambda(forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user