49 lines
909 B
C++
49 lines
909 B
C++
//
|
|
// Copyright (c) 2022 Alan de Freitas (alandefreitas@gmail.com)
|
|
//
|
|
// Distributed under the Boost Software License, Version 1.0. (See accompanying
|
|
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
//
|
|
// Official repository: https://github.com/boostorg/url
|
|
//
|
|
|
|
#ifndef BOOST_URL_DETAIL_FORMAT_HPP
|
|
#define BOOST_URL_DETAIL_FORMAT_HPP
|
|
|
|
#include <boost/url/detail/format_args.hpp>
|
|
#include <boost/url/detail/pattern.hpp>
|
|
#include <boost/core/detail/string_view.hpp>
|
|
#include <boost/url/url.hpp>
|
|
|
|
namespace boost {
|
|
namespace urls {
|
|
namespace detail {
|
|
|
|
inline
|
|
void
|
|
vformat_to(
|
|
url_base& u,
|
|
core::string_view fmt,
|
|
detail::format_args args)
|
|
{
|
|
parse_pattern(fmt)
|
|
.value().apply(u, args);
|
|
}
|
|
|
|
inline
|
|
url
|
|
vformat(
|
|
core::string_view fmt,
|
|
detail::format_args args)
|
|
{
|
|
url u;
|
|
vformat_to(u, fmt, args);
|
|
return u;
|
|
}
|
|
|
|
} // detail
|
|
} // url
|
|
} // boost
|
|
|
|
#endif
|