blob: 65db5aeaa99dec73828d3f19bdf70fb8ce3fc7ec [file] [log] [blame]
Shafik Yaghmour8306f762018-09-19 18:07:05 +00001//===-- LibCxxVariant.h -------------------------------------------*- C++
2//-*-===//
3//
Chandler Carruth2946cd72019-01-19 08:50:56 +00004// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5// See https://llvm.org/LICENSE.txt for license information.
6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
Shafik Yaghmour8306f762018-09-19 18:07:05 +00007//
8//===----------------------------------------------------------------------===//
9
10#ifndef liblldb_LibCxxVariant_h_
11#define liblldb_LibCxxVariant_h_
12
13#include "lldb/Core/ValueObject.h"
14#include "lldb/DataFormatters/TypeSummary.h"
15#include "lldb/DataFormatters/TypeSynthetic.h"
16#include "lldb/Utility/Stream.h"
17
18namespace lldb_private {
19namespace formatters {
20bool LibcxxVariantSummaryProvider(
21 ValueObject &valobj, Stream &stream,
22 const TypeSummaryOptions &options); // libc++ std::variant<>
23
24SyntheticChildrenFrontEnd *LibcxxVariantFrontEndCreator(CXXSyntheticChildren *,
25 lldb::ValueObjectSP);
26
27} // namespace formatters
28} // namespace lldb_private
29
30#endif // liblldb_LibCxxVariant_h_