Loading [MathJax]/extensions/tex2jax.js
Cantera  3.2.0a1
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
fmt.h
Go to the documentation of this file.
1//! @file fmt.h Wrapper for either system-installed or local headers for fmt
2#ifndef CT_FMT_H
3#define CT_FMT_H
4#include "ct_defs.h"
5
6//! Do not use the fmt macro from fmtlib because it shadows a function of
7//! the same name in kinetics/Group.h
8#define FMT_NO_FMT_STRING_ALIAS
9
10#if CT_USE_SYSTEM_FMT
11 #include <fmt/format.h>
12 #include <fmt/printf.h>
13 #include <fmt/ostream.h>
14#else
15 #include "cantera/ext/fmt/format.h"
16 #include "cantera/ext/fmt/printf.h"
17 #include "cantera/ext/fmt/ostream.h"
18#endif
19
20template <typename... Args>
21void fmt_append(fmt::memory_buffer& b, const std::string& tmpl, Args... args) {
22 format_to(fmt::appender(b), fmt::runtime(tmpl), args...);
23}
24
25#if FMT_VERSION > 100000
26 #if CT_USE_SYSTEM_FMT
27 #include <fmt/ranges.h>
28 #else
29 #include <fmt/join.h>
30 #endif
31#endif
32
33#endif
This file contains definitions of constants, types and terms that are used in internal routines and a...