#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/Twine.h"
#include "llvm/Support/DataTypes.h"
#include "gtest/gtest.h"
#include <limits>
#include <tuple>
usingnamespacellvm;
namespace {
static_assert …;
class StringMapTest : public testing::Test { … };
const char StringMapTest::testKey[] = …;
const uint32_t StringMapTest::testValue = …;
const char *StringMapTest::testKeyFirst = …;
size_t StringMapTest::testKeyLength = …;
const std::string StringMapTest::testKeyStr(testKey);
struct CountCopyAndMove { … };
TEST_F(StringMapTest, EmptyMapTest) { … }
TEST_F(StringMapTest, ConstEmptyMapTest) { … }
TEST_F(StringMapTest, InitializerListCtor) { … }
TEST_F(StringMapTest, SingleEntryMapTest) { … }
TEST_F(StringMapTest, ClearTest) { … }
TEST_F(StringMapTest, EraseIteratorTest) { … }
TEST_F(StringMapTest, EraseValueTest) { … }
TEST_F(StringMapTest, InsertAndEraseTest) { … }
TEST_F(StringMapTest, SmallFullMapTest) { … }
TEST_F(StringMapTest, CopyCtorTest) { … }
TEST_F(StringMapTest, AtTest) { … }
TEST_F(StringMapTest, IterationTest) { … }
TEST_F(StringMapTest, StringMapEntryTest) { … }
TEST_F(StringMapTest, InsertTest) { … }
TEST_F(StringMapTest, InsertPairTest) { … }
TEST_F(StringMapTest, InsertRehashingPairTest) { … }
TEST_F(StringMapTest, InsertOrAssignTest) { … }
TEST_F(StringMapTest, IterMapKeysVector) { … }
TEST_F(StringMapTest, IterMapKeysSmallVector) { … }
struct StringMapTestStruct { … };
TEST_F(StringMapTest, NonDefaultConstructable) { … }
struct Immovable { … };
struct MoveOnly { … };
TEST_F(StringMapTest, MoveOnly) { … }
TEST_F(StringMapTest, CtorArg) { … }
TEST_F(StringMapTest, MoveConstruct) { … }
TEST_F(StringMapTest, MoveAssignment) { … }
TEST_F(StringMapTest, EqualEmpty) { … }
TEST_F(StringMapTest, EqualWithValues) { … }
TEST_F(StringMapTest, NotEqualMissingKeys) { … }
TEST_F(StringMapTest, NotEqualWithDifferentValues) { … }
TEST_F(StringMapTest, PrecomputedHash) { … }
struct Countable { … };
TEST_F(StringMapTest, MoveDtor) { … }
TEST_F(StringMapTest, StructuredBindings) { … }
namespace {
struct CountCtorCopyAndMove { … };
unsigned CountCtorCopyAndMove::Copy = …;
unsigned CountCtorCopyAndMove::Move = …;
unsigned CountCtorCopyAndMove::Ctor = …;
}
TEST(StringMapCustomTest, InitialSizeTest) { … }
TEST(StringMapCustomTest, BracketOperatorCtor) { … }
namespace {
struct NonMoveableNonCopyableType { … };
}
TEST(StringMapCustomTest, EmplaceTest) { … }
TEST(StringMapCustomTest, StringMapEntryBaseSize) { … }
TEST(StringMapCustomTest, StringMapEntrySize) { … }
}