Path: blob/main/contrib/llvm-project/lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.h
39644 views
//===-- LibStdcpp.h ---------------------------------------------*- C++ -*-===//1//2// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.3// See https://llvm.org/LICENSE.txt for license information.4// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception5//6//===----------------------------------------------------------------------===//78#ifndef LLDB_SOURCE_PLUGINS_LANGUAGE_CPLUSPLUS_LIBSTDCPP_H9#define LLDB_SOURCE_PLUGINS_LANGUAGE_CPLUSPLUS_LIBSTDCPP_H1011#include "lldb/Core/ValueObject.h"12#include "lldb/DataFormatters/TypeSummary.h"13#include "lldb/DataFormatters/TypeSynthetic.h"14#include "lldb/Utility/Stream.h"1516namespace lldb_private {17namespace formatters {18bool LibStdcppStringSummaryProvider(19ValueObject &valobj, Stream &stream,20const TypeSummaryOptions &options); // libcstdc++ c++11 std::string2122bool LibStdcppWStringSummaryProvider(23ValueObject &valobj, Stream &stream,24const TypeSummaryOptions &options); // libcstdc++ c++11 std::wstring2526bool LibStdcppSmartPointerSummaryProvider(27ValueObject &valobj, Stream &stream,28const TypeSummaryOptions29&options); // libstdc++ std::shared_ptr<> and std::weak_ptr<>3031bool LibStdcppUniquePointerSummaryProvider(32ValueObject &valobj, Stream &stream,33const TypeSummaryOptions &options); // libstdc++ std::unique_ptr<>3435SyntheticChildrenFrontEnd *36LibstdcppMapIteratorSyntheticFrontEndCreator(CXXSyntheticChildren *,37lldb::ValueObjectSP);3839SyntheticChildrenFrontEnd *40LibStdcppTupleSyntheticFrontEndCreator(CXXSyntheticChildren *,41lldb::ValueObjectSP);4243SyntheticChildrenFrontEnd *44LibStdcppBitsetSyntheticFrontEndCreator(CXXSyntheticChildren *,45lldb::ValueObjectSP);4647SyntheticChildrenFrontEnd *48LibStdcppOptionalSyntheticFrontEndCreator(CXXSyntheticChildren *,49lldb::ValueObjectSP);5051SyntheticChildrenFrontEnd *52LibStdcppVectorIteratorSyntheticFrontEndCreator(CXXSyntheticChildren *,53lldb::ValueObjectSP);5455SyntheticChildrenFrontEnd *56LibStdcppSharedPtrSyntheticFrontEndCreator(CXXSyntheticChildren *,57lldb::ValueObjectSP);5859SyntheticChildrenFrontEnd *60LibStdcppUniquePtrSyntheticFrontEndCreator(CXXSyntheticChildren *,61lldb::ValueObjectSP);6263} // namespace formatters64} // namespace lldb_private6566#endif // LLDB_SOURCE_PLUGINS_LANGUAGE_CPLUSPLUS_LIBSTDCPP_H676869