1 //===-- Format specifier converter for printf -------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLVM_LIBC_SRC_STDIO_PRINTF_CORE_CONVERTER_H
10 #define LLVM_LIBC_SRC_STDIO_PRINTF_CORE_CONVERTER_H
11 
12 #include "src/stdio/printf_core/core_structs.h"
13 #include "src/stdio/printf_core/writer.h"
14 
15 #include <stddef.h>
16 
17 namespace __llvm_libc {
18 namespace printf_core {
19 
20 class Converter {
21   Writer *writer;
22 
23 public:
24   Converter(Writer *writer);
25 
26   // convert will call a conversion function to convert the FormatSection into
27   // its string representation, and then that will write the result to the
28   // writer.
29   void convert(FormatSection to_conv);
30 };
31 
32 } // namespace printf_core
33 } // namespace __llvm_libc
34 
35 #endif // LLVM_LIBC_SRC_STDIO_PRINTF_CORE_CONVERTER_H
36