diff options
author | Vincent Ambo <mail@tazj.in> | 2020-12-23T12·36+0100 |
---|---|---|
committer | tazjin <mail@tazj.in> | 2020-12-23T12·44+0000 |
commit | 73e9265f954528b6b2eccf98572e77126539a8df (patch) | |
tree | 48a1e093761e86c5e605d074e8c4d5f1bb64f1b1 /third_party/immer/benchmark/config.hpp | |
parent | f7ea650142eb796eb3f2827c805cc0bc563e2183 (diff) |
chore(3p/immer): Remove vendored copy of immer r/2029
We ended up dropping the use of this library again. Change-Id: I2c44cd22a6128d23f87a582402bf5fb84991d608 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2292 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
Diffstat (limited to 'third_party/immer/benchmark/config.hpp')
-rw-r--r-- | third_party/immer/benchmark/config.hpp | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/third_party/immer/benchmark/config.hpp b/third_party/immer/benchmark/config.hpp deleted file mode 100644 index c32ef5812ff8..000000000000 --- a/third_party/immer/benchmark/config.hpp +++ /dev/null @@ -1,55 +0,0 @@ -// -// immer: immutable data structures for C++ -// Copyright (C) 2016, 2017, 2018 Juan Pedro Bolivar Puente -// -// This software is distributed under the Boost Software License, Version 1.0. -// See accompanying file LICENSE or copy at http://boost.org/LICENSE_1_0.txt -// - -#pragma once - -#include <nonius.h++> - -#include <immer/heap/gc_heap.hpp> -#include <immer/memory_policy.hpp> - -namespace { - -NONIUS_PARAM(N, std::size_t{1000}) - -struct gc_disable -{ - gc_disable() - { -#if IMMER_BENCHMARK_DISABLE_GC - GC_disable(); -#else - GC_gcollect(); -#endif - } - ~gc_disable() - { -#if IMMER_BENCHMARK_DISABLE_GC - GC_enable(); - GC_gcollect(); -#endif - } - gc_disable(const gc_disable&) = delete; - gc_disable(gc_disable&&) = delete; -}; - -template <typename Meter, typename Fn> -void measure(Meter& m, Fn&& fn) -{ - gc_disable guard; - return m.measure(std::forward<Fn>(fn)); -} - -using def_memory = immer::default_memory_policy; -using gc_memory = immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy>; -using gcf_memory = immer::memory_policy<immer::heap_policy<immer::gc_heap>, immer::no_refcount_policy, immer::gc_transience_policy, false>; -using basic_memory = immer::memory_policy<immer::heap_policy<immer::cpp_heap>, immer::refcount_policy>; -using safe_memory = immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap>, immer::refcount_policy>; -using unsafe_memory = immer::memory_policy<immer::unsafe_free_list_heap_policy<immer::cpp_heap>, immer::unsafe_refcount_policy>; - -} // anonymous namespace |