Google OR-Tools: ortools/base/dump_vars.h File Reference
#include <optional>
#include <ostream>
#include <sstream>
#include <string>
#include <utility>
#include <vector>
#include "absl/container/inlined_vector.h"
#include "ortools/base/strong_vector.h"
Go to the source code of this file.
Macros | |
| #define | DUMP_FOR_EACH_N0(F) |
| #define | DUMP_FOR_EACH_N1(F, a) |
| #define | DUMP_FOR_EACH_N2(F, a, ...) |
| #define | DUMP_FOR_EACH_N3(F, a, ...) |
| #define | DUMP_FOR_EACH_N4(F, a, ...) |
| #define | DUMP_FOR_EACH_N5(F, a, ...) |
| #define | DUMP_FOR_EACH_N6(F, a, ...) |
| #define | DUMP_FOR_EACH_N7(F, a, ...) |
| #define | DUMP_FOR_EACH_N8(F, a, ...) |
| #define | DUMP_FOR_EACH_N9(F, a, ...) |
| #define | DUMP_FOR_EACH_N10(F, a, ...) |
| #define | DUMP_FOR_EACH_N11(F, a, ...) |
| #define | DUMP_FOR_EACH_N12(F, a, ...) |
| #define | DUMP_CONCATENATE(x, y) |
| #define | DUMP_FOR_EACH_(N, F, ...) |
| #define | DUMP_NARG(...) |
| #define | DUMP_NARG_(...) |
| #define | DUMP_ARG_N(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, N, ...) |
| #define | DUMP_RSEQ_N() |
| #define | DUMP_FOR_EACH(F, ...) |
| #define | DUMP_VARS(...) |
| #define | DUMP_STRINGIZE(a) |
| #define | DUMP_STRINGIFY(...) |
| #define | DUMP_IDENTITY(...) |
| #define | DUMP_RM_PARENS(...) |
| #define | DUMP_GEN_ONE_BINDING(a) |
| #define | DUMP_GEN_BINDING(binding) |
| #define | DUMP_VARS_WITH_BINDINGS(binding, ...) |
Functions | |
| template<typename T> | |
| std::ostream & | operations_research::base::internal_dump_vars::operator<< (std::ostream &os, const ::absl::InlinedVector< T, 8 > &vec) |
| template<typename T> | |
| std::ostream & | operations_research::base::internal_dump_vars::operator<< (std::ostream &os, const ::std::vector< T > &vec) |
| template<typename T> | |
| std::ostream & | operations_research::base::internal_dump_vars::operator<< (std::ostream &os, const ::std::optional< T > &opt) |
| template<typename T, typename U> | |
| std::ostream & | operations_research::base::internal_dump_vars::operator<< (std::ostream &os, const ::util_intops::StrongVector< T, U > &vec) |
| template<class F> | |
| Dump< F > | operations_research::base::internal_dump_vars::make_dump_vars (DumpNames &&names, F f) |
◆ DUMP_ARG_N
| #define DUMP_ARG_N | ( | _1, | |
| _2, | |||
| _3, | |||
| _4, | |||
| _5, | |||
| _6, | |||
| _7, | |||
| _8, | |||
| _9, | |||
| _10, | |||
| _11, | |||
| _12, | |||
| N, | |||
| ... ) |
◆ DUMP_CONCATENATE
| #define DUMP_CONCATENATE | ( | x, | |
| y ) |
◆ DUMP_FOR_EACH
| #define DUMP_FOR_EACH | ( | F, | |
| ... ) |
Value:
DUMP_FOR_EACH_(DUMP_NARG(__VA_ARGS__), F __VA_OPT__(, __VA_ARGS__))
#define DUMP_FOR_EACH_(N, F,...)
Definition at line 75 of file dump_vars.h.
◆ DUMP_FOR_EACH_
| #define DUMP_FOR_EACH_ | ( | N, | |
| F, | |||
| ... ) |
Value:
DUMP_CONCATENATE(DUMP_FOR_EACH_N, N)(F __VA_OPT__(, __VA_ARGS__))
#define DUMP_CONCATENATE(x, y)
Definition at line 68 of file dump_vars.h.
◆ DUMP_FOR_EACH_N0
| #define DUMP_FOR_EACH_N0 | ( | F | ) |
◆ DUMP_FOR_EACH_N1
| #define DUMP_FOR_EACH_N1 | ( | F, | |
| a ) |
◆ DUMP_FOR_EACH_N10
| #define DUMP_FOR_EACH_N10 | ( | F, | |
| a, | |||
| ... ) |
Value:
F(a) DUMP_FOR_EACH_N9(F, __VA_ARGS__)
#define DUMP_FOR_EACH_N9(F, a,...)
Definition at line 63 of file dump_vars.h.
◆ DUMP_FOR_EACH_N11
| #define DUMP_FOR_EACH_N11 | ( | F, | |
| a, | |||
| ... ) |
Value:
F(a) DUMP_FOR_EACH_N10(F, __VA_ARGS__)
#define DUMP_FOR_EACH_N10(F, a,...)
Definition at line 64 of file dump_vars.h.
◆ DUMP_FOR_EACH_N12
| #define DUMP_FOR_EACH_N12 | ( | F, | |
| a, | |||
| ... ) |
Value:
F(a) DUMP_FOR_EACH_N11(F, __VA_ARGS__)
#define DUMP_FOR_EACH_N11(F, a,...)
Definition at line 65 of file dump_vars.h.
◆ DUMP_FOR_EACH_N2
| #define DUMP_FOR_EACH_N2 | ( | F, | |
| a, | |||
| ... ) |
Value:
F(a) DUMP_FOR_EACH_N1(F, __VA_ARGS__)
#define DUMP_FOR_EACH_N1(F, a)
Definition at line 55 of file dump_vars.h.
◆ DUMP_FOR_EACH_N3
| #define DUMP_FOR_EACH_N3 | ( | F, | |
| a, | |||
| ... ) |
Value:
F(a) DUMP_FOR_EACH_N2(F, __VA_ARGS__)
#define DUMP_FOR_EACH_N2(F, a,...)
Definition at line 56 of file dump_vars.h.
◆ DUMP_FOR_EACH_N4
| #define DUMP_FOR_EACH_N4 | ( | F, | |
| a, | |||
| ... ) |
Value:
F(a) DUMP_FOR_EACH_N3(F, __VA_ARGS__)
#define DUMP_FOR_EACH_N3(F, a,...)
Definition at line 57 of file dump_vars.h.
◆ DUMP_FOR_EACH_N5
| #define DUMP_FOR_EACH_N5 | ( | F, | |
| a, | |||
| ... ) |
Value:
F(a) DUMP_FOR_EACH_N4(F, __VA_ARGS__)
#define DUMP_FOR_EACH_N4(F, a,...)
Definition at line 58 of file dump_vars.h.
◆ DUMP_FOR_EACH_N6
| #define DUMP_FOR_EACH_N6 | ( | F, | |
| a, | |||
| ... ) |
Value:
F(a) DUMP_FOR_EACH_N5(F, __VA_ARGS__)
#define DUMP_FOR_EACH_N5(F, a,...)
Definition at line 59 of file dump_vars.h.
◆ DUMP_FOR_EACH_N7
| #define DUMP_FOR_EACH_N7 | ( | F, | |
| a, | |||
| ... ) |
Value:
F(a) DUMP_FOR_EACH_N6(F, __VA_ARGS__)
#define DUMP_FOR_EACH_N6(F, a,...)
Definition at line 60 of file dump_vars.h.
◆ DUMP_FOR_EACH_N8
| #define DUMP_FOR_EACH_N8 | ( | F, | |
| a, | |||
| ... ) |
Value:
F(a) DUMP_FOR_EACH_N7(F, __VA_ARGS__)
#define DUMP_FOR_EACH_N7(F, a,...)
Definition at line 61 of file dump_vars.h.
◆ DUMP_FOR_EACH_N9
| #define DUMP_FOR_EACH_N9 | ( | F, | |
| a, | |||
| ... ) |
Value:
F(a) DUMP_FOR_EACH_N8(F, __VA_ARGS__)
#define DUMP_FOR_EACH_N8(F, a,...)
Definition at line 62 of file dump_vars.h.
◆ DUMP_GEN_BINDING
| #define DUMP_GEN_BINDING | ( | binding | ) |
Value:
&DUMP_FOR_EACH(DUMP_GEN_ONE_BINDING, DUMP_RM_PARENS(binding))
#define DUMP_FOR_EACH(F,...)
#define DUMP_RM_PARENS(...)
#define DUMP_GEN_ONE_BINDING(a)
Definition at line 90 of file dump_vars.h.
◆ DUMP_GEN_ONE_BINDING
| #define DUMP_GEN_ONE_BINDING | ( | a | ) |
◆ DUMP_IDENTITY
| #define DUMP_IDENTITY | ( | ... | ) |
◆ DUMP_NARG
Value:
DUMP_NARG_(__VA_OPT__(__VA_ARGS__, ) DUMP_RSEQ_N())
Definition at line 71 of file dump_vars.h.
◆ DUMP_NARG_
| #define DUMP_NARG_ | ( | ... | ) |
Value:
DUMP_ARG_N(__VA_ARGS__)
#define DUMP_ARG_N(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, N,...)
Definition at line 72 of file dump_vars.h.
◆ DUMP_RM_PARENS
| #define DUMP_RM_PARENS | ( | ... | ) |
Value:
DUMP_IDENTITY __VA_ARGS__
#define DUMP_IDENTITY(...)
Definition at line 87 of file dump_vars.h.
◆ DUMP_RSEQ_N
◆ DUMP_STRINGIFY
| #define DUMP_STRINGIFY | ( | ... | ) |
Value:
DUMP_FOR_EACH(DUMP_STRINGIZE, __VA_ARGS__)
#define DUMP_STRINGIZE(a)
Definition at line 82 of file dump_vars.h.
◆ DUMP_STRINGIZE
| #define DUMP_STRINGIZE | ( | a | ) |
Value:
DUMP_VARS_WITH_BINDINGS((), __VA_ARGS__)
#define DUMP_VARS_WITH_BINDINGS(binding,...)
Definition at line 78 of file dump_vars.h.
◆ DUMP_VARS_WITH_BINDINGS
| #define DUMP_VARS_WITH_BINDINGS | ( | binding, | |
| ... ) |
Value:
DUMP_STRINGIFY(__VA_ARGS__)}, \
[DUMP_GEN_BINDING(binding)]( \
::std::ostream& os, const ::std::string& field_sep, \
const ::std::string& kv_sep, \
const ::operations_research::base::internal_dump_vars::DumpNames& \
names) { \
.os = os, \
.field_sep = field_sep, \
.kv_sep = kv_sep, \
.names = names, \
}(__VA_ARGS__); \
})
#define DUMP_GEN_BINDING(binding)
Dump< F > make_dump_vars(DumpNames &&names, F f)
::std::vector<::std::string > DumpNames
Definition at line 93 of file dump_vars.h.