Lines Matching refs:Length
60 enum class Length { Empty, Small, Large, Huge }; enum
61 struct AllLengths : EnumValuesAsTuple<AllLengths, Length, 4> {
127 TEST_ALWAYS_INLINE const char* getString(Length L, in getString()
130 case Length::Empty: in getString()
132 case Length::Small: in getString()
134 case Length::Large: in getString()
136 case Length::Huge: in getString()
141 TEST_ALWAYS_INLINE std::string makeString(Length L, in makeString()
145 case Length::Empty: in makeString()
147 case Length::Small: in makeString()
149 case Length::Large: in makeString()
151 case Length::Huge: in makeString()
156 template <class Length, class Opaque>
161 makeString(Length(), DiffType::Control, Opaque())); in run()
166 return "BM_StringConstructDestroyCStr" + Length::name() + Opaque::name(); in name()
170 template <class Length, bool MeasureCopy, bool MeasureDestroy>
173 auto Orig = makeString(Length()); in StringCopyAndDestroy()
195 template <class Length>
198 StringCopyAndDestroy<Length, true, false>(state); in run()
201 static std::string name() { return "BM_StringCopy" + Length::name(); } in name()
204 template <class Length>
207 StringCopyAndDestroy<Length, false, true>(state); in run()
210 static std::string name() { return "BM_StringDestroy" + Length::name(); } in name()
213 template <class Length>
220 S *newS = new (static_cast<void*>(Storage)) std::string(makeString(Length())); in run()
234 static std::string name() { return "BM_StringMove" + Length::name(); } in name()
237 template <class Length, class Opaque>
242 size_t length = makeString(Length()).size(); in run()
258 return "BM_StringResizeDefaultInit" + Length::name() + Opaque::name(); in name()
262 template <class Length, class Opaque>
267 std::string src = makeString(Length()); in run()
283 return "BM_StringAssignStr" + Length::name() + Opaque::name(); in name()
287 template <class Length, class Opaque>
301 strings[i] = maybeOpaque(getString(Length()), opaque); in run()
307 return "BM_StringAssignAsciiz" + Length::name() + Opaque::name(); in name()
311 template <class Length, class Opaque>
317 const int mid = makeString(Length()).size() / 2; in run()
321 strings[i] = makeString(Length()); in run()
333 return "BM_StringEraseToEnd" + Length::name() + Opaque::name(); in name()
337 template <class Length, class Opaque>
343 const int n = makeString(Length()).size() / 2; in run()
348 strings[i] = makeString(Length()); in run()
359 return "BM_StringEraseWithMove" + Length::name() + Opaque::name(); in name()
430 if (LHLength() == Length::Empty && DiffType() != ::DiffType::Control) in skip()
447 constexpr const char* Literal = RHLength::value == Length::Empty in run()
449 : RHLength::value == Length::Small in run()
471 if (LHLength() == Length::Huge || RHLength() == Length::Huge) in skip()
492 template <class Temperature, class Depth, class Length>
502 std::vector<std::string> Values(NumStrings, makeString(Length())); in run()
527 if (Length() == ::Length::Huge) { in skip()
535 Length::name(); in name()
540 for (auto Lhs : {Length::Empty, Length::Small, Length::Large, Length::Huge}) { in sanityCheckGeneratedStrings()
543 {Length::Empty, Length::Small, Length::Large, Length::Huge}) { in sanityCheckGeneratedStrings()
557 for (auto L : {Length::Small, Length::Large, Length::Huge}) { in sanityCheckGeneratedStrings()