forked from OSchip/llvm-project
Add format_provider for the MemoryRegionInfo::OptionalBool enum
llvm-svn: 295821
This commit is contained in:
parent
6f224d2bc0
commit
048b3ece1d
|
@ -12,6 +12,7 @@
|
|||
#define lldb_MemoryRegionInfo_h
|
||||
|
||||
#include "lldb/Core/RangeMap.h"
|
||||
#include "llvm/Support/FormatProviders.h"
|
||||
#include "lldb/Utility/ConstString.h"
|
||||
#include "lldb/Utility/Range.h"
|
||||
|
||||
|
@ -100,4 +101,24 @@ protected:
|
|||
};
|
||||
}
|
||||
|
||||
namespace llvm {
|
||||
template <>
|
||||
struct format_provider<lldb_private::MemoryRegionInfo::OptionalBool> {
|
||||
static void format(const lldb_private::MemoryRegionInfo::OptionalBool &B,
|
||||
raw_ostream &OS, StringRef Options) {
|
||||
switch(B) {
|
||||
case lldb_private::MemoryRegionInfo::eNo:
|
||||
OS << "no";
|
||||
return;
|
||||
case lldb_private::MemoryRegionInfo::eYes:
|
||||
OS << "yes";
|
||||
return;
|
||||
case lldb_private::MemoryRegionInfo::eDontKnow:
|
||||
OS << "don't know";
|
||||
return;
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
#endif // #ifndef lldb_MemoryRegionInfo_h
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
add_lldb_unittest(TargetTests
|
||||
MemoryRegionInfoTest.cpp
|
||||
ModuleCacheTest.cpp
|
||||
|
||||
LINK_LIBS
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
//===-- MemoryRegionInfoTest.cpp --------------------------------*- C++ -*-===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "lldb/Target/MemoryRegionInfo.h"
|
||||
#include "llvm/Support/FormatVariadic.h"
|
||||
#include "gtest/gtest.h"
|
||||
|
||||
using namespace lldb_private;
|
||||
|
||||
TEST(MemoryRegionInfoTest, Formatv) {
|
||||
EXPECT_EQ("yes", llvm::formatv("{0}", MemoryRegionInfo::eYes).str());
|
||||
EXPECT_EQ("no", llvm::formatv("{0}", MemoryRegionInfo::eNo).str());
|
||||
EXPECT_EQ("don't know", llvm::formatv("{0}", MemoryRegionInfo::eDontKnow).str());
|
||||
}
|
Loading…
Reference in New Issue