10 #ifndef WPIUTIL_WPI_NATIVE_FORMATTING_H
11 #define WPIUTIL_WPI_NATIVE_FORMATTING_H
13 #include "wpi/Optional.h"
14 #include "wpi/raw_ostream.h"
19 enum class FloatStyle { Exponent, ExponentUpper, Fixed, Percent };
20 enum class IntegerStyle {
24 enum class HexPrintStyle { Upper, Lower, PrefixUpper, PrefixLower };
26 size_t getDefaultPrecision(FloatStyle Style);
28 bool isPrefixedHexStyle(HexPrintStyle S);
30 void write_integer(raw_ostream &S,
unsigned int N,
size_t MinDigits,
32 void write_integer(raw_ostream &S,
int N,
size_t MinDigits, IntegerStyle Style);
33 void write_integer(raw_ostream &S,
unsigned long N,
size_t MinDigits,
35 void write_integer(raw_ostream &S,
long N,
size_t MinDigits,
37 void write_integer(raw_ostream &S,
unsigned long long N,
size_t MinDigits,
39 void write_integer(raw_ostream &S,
long long N,
size_t MinDigits,
42 void write_hex(raw_ostream &S, uint64_t N, HexPrintStyle Style,
43 Optional<size_t> Width = None);
44 void write_double(raw_ostream &S,
double D, FloatStyle Style,
45 Optional<size_t> Precision = None);
namespace to hold default to_json function
Definition: SmallString.h:21