xref: /aosp_15_r20/external/openscreen/tools/cddl/codegen.h (revision 3f982cf4871df8771c9d4abe6e9a6f8d829b2736)
1 // Copyright 2018 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef TOOLS_CDDL_CODEGEN_H_
6 #define TOOLS_CDDL_CODEGEN_H_
7 
8 #include "tools/cddl/sema.h"
9 
10 bool WriteTypeDefinitions(int fd, CppSymbolTable* table);
11 bool WriteFunctionDeclarations(int fd, CppSymbolTable* table);
12 bool WriteEncoders(int fd, CppSymbolTable* table);
13 bool WriteDecoders(int fd, CppSymbolTable* table);
14 bool WriteEqualityOperators(int fd, CppSymbolTable* table);
15 bool WriteHeaderPrologue(int fd, const std::string& header_filename);
16 bool WriteHeaderEpilogue(int fd, const std::string& header_filename);
17 bool WriteSourcePrologue(int fd, const std::string& header_filename);
18 bool WriteSourceEpilogue(int fd);
19 
20 #endif  // TOOLS_CDDL_CODEGEN_H_
21