1 //===-- LibCxxVariant.h ----------------------------------------*- 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 LLDB_SOURCE_PLUGINS_LANGUAGE_CPLUSPLUS_LIBCXXVARIANT_H 10 #define LLDB_SOURCE_PLUGINS_LANGUAGE_CPLUSPLUS_LIBCXXVARIANT_H 11 12 #include "lldb/Core/ValueObject.h" 13 #include "lldb/DataFormatters/TypeSummary.h" 14 #include "lldb/DataFormatters/TypeSynthetic.h" 15 #include "lldb/Utility/Stream.h" 16 17 namespace lldb_private { 18 namespace formatters { 19 bool LibcxxVariantSummaryProvider( 20 ValueObject &valobj, Stream &stream, 21 const TypeSummaryOptions &options); // libc++ std::variant<> 22 23 SyntheticChildrenFrontEnd *LibcxxVariantFrontEndCreator(CXXSyntheticChildren *, 24 lldb::ValueObjectSP); 25 26 } // namespace formatters 27 } // namespace lldb_private 28 29 #endif // LLDB_SOURCE_PLUGINS_LANGUAGE_CPLUSPLUS_LIBCXXVARIANT_H 30