feat(Utils): getPtr can deal with references

This commit is contained in:
Ronan Abhamon 2017-10-09 14:12:56 +02:00
parent 24e4b233d9
commit 20f2d66c51

View file

@ -32,6 +32,11 @@
LINPHONE_BEGIN_NAMESPACE
namespace Utils {
template<typename T>
LINPHONE_PUBLIC constexpr T *getPtr (std::shared_ptr<T> &object) {
return object.get();
}
template<typename T>
LINPHONE_PUBLIC constexpr T *getPtr (const std::shared_ptr<T> &object) {
return object.get();
@ -43,13 +48,8 @@ namespace Utils {
}
template<typename T>
LINPHONE_PUBLIC constexpr const T *getPtr (const std::shared_ptr<const T> &object) {
return object.get();
}
template<typename T>
LINPHONE_PUBLIC constexpr const T *getPtr (const T *object) {
return object;
LINPHONE_PUBLIC constexpr T *getPtr (T &object) {
return &object;
}
LINPHONE_PUBLIC bool iequals (const std::string &a, const std::string &b);