MCPcopy Create free account
hub / github.com/GaijinEntertainment/daScript / keyed_pattern

Function keyed_pattern

tests-cpp/small/test_sort_family.cpp:495–509  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

493
494 enum class KPat { Random, Dups, Sorted, Reverse, AllEqual };
495 std::vector<Keyed> keyed_pattern(KPat p, size_t n, uint32_t seed) {
496 std::mt19937 rng(seed);
497 std::vector<Keyed> v(n);
498 for (size_t i = 0; i < n; i++) {
499 v[i].idx = int32_t(i);
500 switch (p) {
501 case KPat::Random: v[i].key = int32_t(rng() & 0x3FFF); break;
502 case KPat::Dups: v[i].key = int32_t(rng() % 8); break; // heavy duplicates
503 case KPat::Sorted: v[i].key = int32_t(i); break;
504 case KPat::Reverse: v[i].key = int32_t(n - i); break;
505 case KPat::AllEqual: v[i].key = 42; break;
506 }
507 }
508 return v;
509 }
510
511} // namespace
512

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected