xref: /llvm-project/clang-tools-extra/clangd/xpc/Conversion.h (revision 2946cd701067404b99c39fb29dc9c74bd7193eb3)
1dca9c7cfSJan Korous //===--- Conversion.h - LSP data (de-)serialization through XPC -*- C++ -*-===//
2dca9c7cfSJan Korous //
3*2946cd70SChandler Carruth // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*2946cd70SChandler Carruth // See https://llvm.org/LICENSE.txt for license information.
5*2946cd70SChandler Carruth // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6dca9c7cfSJan Korous //
7dca9c7cfSJan Korous //===----------------------------------------------------------------------===//
8dca9c7cfSJan Korous 
9dca9c7cfSJan Korous #ifndef LLVM_CLANG_TOOLS_EXTRA_CLANGD_XPC_XPCJSONCONVERSIONS_H
10dca9c7cfSJan Korous #define LLVM_CLANG_TOOLS_EXTRA_CLANGD_XPC_XPCJSONCONVERSIONS_H
11dca9c7cfSJan Korous 
12dca9c7cfSJan Korous #include "llvm/Support/JSON.h"
13dca9c7cfSJan Korous #include <xpc/xpc.h>
14dca9c7cfSJan Korous 
15dca9c7cfSJan Korous namespace clang {
16dca9c7cfSJan Korous namespace clangd {
17dca9c7cfSJan Korous 
18dca9c7cfSJan Korous xpc_object_t jsonToXpc(const llvm::json::Value &JSON);
19dca9c7cfSJan Korous llvm::json::Value xpcToJson(const xpc_object_t &XPCObject);
20dca9c7cfSJan Korous 
21dca9c7cfSJan Korous } // namespace clangd
22dca9c7cfSJan Korous } // namespace clang
23dca9c7cfSJan Korous 
24dca9c7cfSJan Korous #endif
25