Agora
1.2.0
Agora project
|
Go to the documentation of this file.
25 template <
typename T>
const T&
unwrap(
const T& v) {
return v; }
26 template <
typename T>
const T&
unwrap(
const std::reference_wrapper<T>& v) {
27 return static_cast<const T&
>(v);
34 template <
typename =
void>
struct node {
35 virtual ~
node() =
default;
36 std::unique_ptr<node<>>
next;
42 template <
typename Arg>
45 template <
typename Char>
53 template <
typename T,
typename Arg>
const T&
push(
const Arg&
arg) {
56 new_node->next = std::move(head_);
57 head_ = std::move(new_node);
73 template <
typename Context>
89 std::is_same<T, basic_string_view<char_type>>
::value ||
90 std::is_same<T, detail::std_string_view<char_type>>
::value ||
91 (mapped_type != detail::type::cstring_type &&
92 mapped_type != detail::type::string_type &&
93 mapped_type != detail::type::custom_type))
101 std::basic_string<char_type>,
T>;
104 std::vector<basic_format_arg<Context>>
data_;
121 return named_info_.empty() ?
data_.data() :
data_.data() + 1;
125 data_.emplace_back(detail::make_arg<Context>(
arg));
128 template <
typename T>
130 if (named_info_.empty()) {
135 auto pop_one = [](std::vector<basic_format_arg<Context>>*
data) {
138 std::unique_ptr<std::vector<basic_format_arg<Context>>, decltype(pop_one)>
139 guard{&
data_, pop_one};
140 named_info_.push_back({
arg.name,
static_cast<int>(
data_.size() - 2
u)});
141 data_[0].value_.named_args = {named_info_.data(), named_info_.size()};
190 "objects of built-in types and string views are always copied");
191 emplace_arg(
arg.get());
199 template <
typename T>
202 dynamic_args_.
push<std::basic_string<char_type>>(
arg.name).c_str();
224 void reserve(
size_t new_cap,
size_t new_cap_named) {
226 "Set of arguments includes set of named arguments");
227 data_.reserve(new_cap);
228 named_info_.reserve(new_cap_named);
234 #endif // FMT_ARGS_H_
end IFFT Reshape the symbol vector into two different spatial streams size
Definition: generate_data.m:73
GeneratorWrapper< T > value(T &&value)
Definition: catch.hpp:3999
#define FMT_GCC_VERSION
Definition: core.h:32
@ is_unpacked_bit
Definition: core.h:1499
const T & push(const Arg &arg)
Definition: args.h:53
uint8_t data_[]
Definition: radio_socket.cc:21
typed_node(const Arg &arg)
Definition: args.h:43
#define FMT_END_NAMESPACE
Definition: core.h:240
Plot Rx waveform for u
Definition: inspect_single_frame.m:108
constexpr auto const_check(T value) -> T
Definition: core.h:365
std::is_constructible< typename Context::template formatter_type< T > > has_formatter
Definition: core.h:716
auto arg(const Char *name, const T &arg) -> detail::named_arg< Char, T >
Definition: core.h:1887
T value
Definition: args.h:40
Add CP Insert the cyclic prefix if(CP_LEN > 0) tx_cp
const T & unwrap(const std::reference_wrapper< T > &v)
Definition: args.h:26
#define FMT_ASSERT(condition, message)
Definition: core.h:378
@ has_named_args_bit
Definition: core.h:1500
typename std::conditional< B, T, F >::type conditional_t
Definition: core.h:323
Definition: json.hpp:5213
typed_node(const basic_string_view< Char > &arg)
Definition: args.h:46
#define FMT_BEGIN_NAMESPACE
Definition: core.h:237
constexpr value()
Definition: core.h:1231
std::unique_ptr< node<> > next
Definition: args.h:36
#define FMT_CONSTEXPR
Definition: core.h:110
type
Definition: core.h:1131
std::unique_ptr< node<> > head_
Definition: args.h:50