blob: b84c0ff831eb2576b52243fff555e058724eb489 [file] [log] [blame]
Enrico Granata419d7912015-09-04 00:33:51 +00001//===-- LibStdCpp.h ---------------------------------------------------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10#ifndef liblldb_LibStdCpp_h_
11#define liblldb_LibStdCpp_h_
12
13#include "lldb/Core/Stream.h"
14#include "lldb/Core/ValueObject.h"
15#include "lldb/DataFormatters/TypeSummary.h"
16#include "lldb/DataFormatters/TypeSynthetic.h"
17
18namespace lldb_private {
19 namespace formatters
20 {
Todd Fiala82ffb8e2015-10-22 00:23:38 +000021 bool
22 LibStdcppStringSummaryProvider (ValueObject& valobj, Stream& stream, const TypeSummaryOptions& options); // libcstdc++ c++11 std::string
23
24 bool
25 LibStdcppWStringSummaryProvider (ValueObject& valobj, Stream& stream, const TypeSummaryOptions& options); // libcstdc++ c++11 std::wstring
26
Tamas Berghammer9c6c8e92016-07-06 09:50:00 +000027 bool
28 LibStdcppSmartPointerSummaryProvider (ValueObject& valobj, Stream& stream, const TypeSummaryOptions& options); // libstdc++ std::shared_ptr<> and std::weak_ptr<>
29
Enrico Granata419d7912015-09-04 00:33:51 +000030 SyntheticChildrenFrontEnd* LibstdcppMapIteratorSyntheticFrontEndCreator (CXXSyntheticChildren*, lldb::ValueObjectSP);
Tamas Berghammer9c6c8e92016-07-06 09:50:00 +000031
Enrico Granata419d7912015-09-04 00:33:51 +000032 SyntheticChildrenFrontEnd* LibStdcppVectorIteratorSyntheticFrontEndCreator (CXXSyntheticChildren*, lldb::ValueObjectSP);
Tamas Berghammer9c6c8e92016-07-06 09:50:00 +000033
34 SyntheticChildrenFrontEnd* LibStdcppSharedPtrSyntheticFrontEndCreator (CXXSyntheticChildren*, lldb::ValueObjectSP);
Enrico Granata419d7912015-09-04 00:33:51 +000035 } // namespace formatters
36} // namespace lldb_private
37
38#endif // liblldb_LibStdCpp_h_