LLDB mainline
LibStdcpp.h
Go to the documentation of this file.
1//===-- LibStdcpp.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_LIBSTDCPP_H
10#define LLDB_SOURCE_PLUGINS_LANGUAGE_CPLUSPLUS_LIBSTDCPP_H
11
15#include "lldb/Utility/Stream.h"
17
18namespace lldb_private {
19namespace formatters {
21 ValueObject &valobj, Stream &stream,
22 const TypeSummaryOptions &options); // libstdc++ std::string
23
24template <StringPrinter::StringElementType element_type>
26 ValueObject &valobj, Stream &stream,
27 const TypeSummaryOptions
28 &options); // libstdc++ std::{u8,u16,u32}?string_view
29
31 ValueObject &valobj, Stream &stream,
32 const TypeSummaryOptions &options); // libstdc++ std::wstring_view
33
35 ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options,
36 bool is_atomic_child =
37 false); // libstdc++ std::shared_ptr<> and std::weak_ptr<>
38
40 ValueObject &valobj, Stream &stream,
41 const TypeSummaryOptions &options); // libstdc++ std::unique_ptr<>
42
44 ValueObject &valobj, Stream &stream,
45 const TypeSummaryOptions &options); // libstdc++ std::variant<>
46
47bool LibStdcppAtomicSummaryProvider(ValueObject &valobj, Stream &stream,
48 const TypeSummaryOptions &options);
49
51 ValueObject &valobj, Stream &stream,
52 const TypeSummaryOptions &options); // libstdc++ std::partial_ordering
53
55 ValueObject &valobj, Stream &stream,
56 const TypeSummaryOptions &options); // libstdc++ std::weak_ordering
57
59 ValueObject &valobj, Stream &stream,
60 const TypeSummaryOptions &options); // libstdc++ std::strong_ordering
61
63 ValueObject &valobj, Stream &stream,
64 const TypeSummaryOptions &options); // libstdc++ std::source_location
65
66SyntheticChildrenFrontEnd *
67LibStdcppAtomicSyntheticFrontEndCreator(CXXSyntheticChildren *,
68 const lldb::ValueObjectSP &);
69
70SyntheticChildrenFrontEnd *
73
77
81
85
89
93
97
101
103 const TypeSummaryOptions &options);
104
105} // namespace formatters
106} // namespace lldb_private
107
108#endif // LLDB_SOURCE_PLUGINS_LANGUAGE_CPLUSPLUS_LIBSTDCPP_H
A stream class that can stream formatted output to a file.
Definition Stream.h:28
SyntheticChildrenFrontEnd * LibStdcppOptionalSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP)
SyntheticChildrenFrontEnd * LibStdcppUniquePtrSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP)
bool LibStdcppStringViewSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
bool LibStdcppStrongOrderingSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
SyntheticChildrenFrontEnd * LibStdcppTupleSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP)
SyntheticChildrenFrontEnd * LibStdcppAtomicSyntheticFrontEndCreator(CXXSyntheticChildren *, const lldb::ValueObjectSP &)
SyntheticChildrenFrontEnd * LibStdcppSpanSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP)
bool LibStdcppStringSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
bool LibStdcppUniquePointerSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
SyntheticChildrenFrontEnd * LibStdcppVectorIteratorSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP)
SyntheticChildrenFrontEnd * LibstdcppMapIteratorSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP)
SyntheticChildrenFrontEnd * LibStdcppBitsetSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP)
bool LibStdcppPartialOrderingSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
SyntheticChildrenFrontEnd * LibStdcppSharedPtrSyntheticFrontEndCreator(CXXSyntheticChildren *, lldb::ValueObjectSP)
bool LibStdcppSmartPointerSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options, bool is_atomic_child=false)
bool LibStdcppAtomicSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
bool LibStdcppSourceLocationSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
bool LibStdcppVariantSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
bool LibStdcppWStringViewSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
bool LibStdcppWeakOrderingSummaryProvider(ValueObject &valobj, Stream &stream, const TypeSummaryOptions &options)
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::ValueObject > ValueObjectSP