namespace bt2s {
-template <typename T>
-using optional = nonstd::optional<T>;
-
-using nullopt_t = nonstd::nullopt_t;
-using bad_optional_access = nonstd::bad_optional_access;
-constexpr nullopt_t nullopt {nonstd::nullopt};
-
-template <typename T>
-constexpr optional<typename std::decay<T>::type> make_optional(T&& value)
-{
- return nonstd::make_optional(std::forward<T>(value));
-}
-
-template <typename T, typename... ArgTs>
-constexpr optional<T> make_optional(ArgTs&&...args)
-{
- return nonstd::make_optional<T>(std::forward<ArgTs>(args)...);
-}
-
-using in_place_t = nonstd::in_place_t;
-
-template <typename T>
-inline in_place_t in_place()
-{
- return nonstd::in_place<T>();
-}
-
-template <std::size_t K>
-inline in_place_t in_place()
-{
- return nonstd::in_place<K>();
-}
-
-template <typename T>
-inline in_place_t in_place_type()
-{
- return nonstd::in_place_type<T>();
-}
-
-template <std::size_t K>
-inline in_place_t in_place_index()
-{
- return nonstd::in_place_index<K>();
-}
+using nonstd::optional;
+using nonstd::nullopt_t;
+using nonstd::bad_optional_access;
+using nonstd::nullopt;
+using nonstd::make_optional;
+using nonstd::in_place_t;
+using nonstd::in_place;
+using nonstd::in_place_type;
+using nonstd::in_place_index;
} /* namespace bt2s */
namespace bt2s {
-template <typename CharT, typename TraitsT = std::char_traits<CharT>>
-using basic_string_view = bpstd::basic_string_view<CharT, TraitsT>;
-
-using string_view = bpstd::string_view;
-using wstring_view = bpstd::wstring_view;
-using u16string_view = bpstd::u16string_view;
-using u32string_view = bpstd::u32string_view;
+using bpstd::basic_string_view;
+using bpstd::string_view;
+using bpstd::wstring_view;
+using bpstd::u16string_view;
+using bpstd::u32string_view;
} /* namespace bt2s */