#ifndef CORE_FORWARD_LIST_HPP #define CORE_FORWARD_LIST_HPP #include #include #include namespace core { inline namespace v2 { template void erase_if (::std::forward_list& f, Predicate pred) { f.remove_if(pred); } template void erase (::std::forward_list& f, U const& value) { using ::std::placeholders::_1; f.remove_if(::std::bind(equal<>, _1, ::std::cref(value))); } }} /* namespace core::v2 */ namespace core { inline namespace v2 { namespace pmr { template using forward_list = ::std::forward_list>; }}} /* namespace core::v2::pmr */ #endif /* CORE_FORWARD_LIST_HPP */