xref: /freebsd/contrib/llvm-project/lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.h (revision e25152834cdf3b353892835a4f3b157e066a8ed4)
1 //===-- LibCxxAtomic.h -------------------------------------------*- C++
2 //-*-===//
3 //
4 // 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
7 //
8 //===----------------------------------------------------------------------===//
9 
10 #ifndef LLDB_SOURCE_PLUGINS_LANGUAGE_CPLUSPLUS_LIBCXXATOMIC_H
11 #define LLDB_SOURCE_PLUGINS_LANGUAGE_CPLUSPLUS_LIBCXXATOMIC_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 
18 namespace lldb_private {
19 namespace formatters {
20 
21 lldb::ValueObjectSP GetLibCxxAtomicValue(ValueObject &valobj);
22 
23 bool LibCxxAtomicSummaryProvider(ValueObject &valobj, Stream &stream,
24                                  const TypeSummaryOptions &options);
25 
26 SyntheticChildrenFrontEnd *
27 LibcxxAtomicSyntheticFrontEndCreator(CXXSyntheticChildren *,
28                                      lldb::ValueObjectSP);
29 
30 } // namespace formatters
31 } // namespace lldb_private
32 
33 #endif // LLDB_SOURCE_PLUGINS_LANGUAGE_CPLUSPLUS_LIBCXXATOMIC_H
34