-- 0e867881e4b9f388a13d6fa8ed715192460130ab by Abseil Team <absl-team@google.com>: Minor wording change to header comment for Mutex::AwaitWithDeadline(). No functional changes. PiperOrigin-RevId: 306729491 -- fc64361fb831003fa5e6fbb84a9a89338fd2838c by Derek Mauro <dmauro@google.com>: Uses C++20 compatible allocator traits in Abseil types This merges both instances of CountingAllocator in the Abseil codebase. Makes the presubmits test C++20 mode. Fixes #651 PiperOrigin-RevId: 306728102 -- d759e5681b9dd6b7339fc019ed58fb5fdececdc3 by Derek Mauro <dmauro@google.com>: Makes btree's iterator comparisons C++20 compatible See https://stackoverflow.com/questions/60386792/c20-comparison-warning-about-ambiguous-reversed-operator PiperOrigin-RevId: 306702048 -- e9da5f409bc5ddb1bad308f9d8c41213c67a1d1e by Derek Mauro <dmauro@google.com>: Switch a few uses of at() that should have been data() in the implementation of InlinedVector. Use ABSL_HARDENING_ASSERT in resize(). PiperOrigin-RevId: 306670992 GitOrigin-RevId: 0e867881e4b9f388a13d6fa8ed715192460130ab Change-Id: If431f3e5d77097e9901654773552dcc01dface87
		
			
				
	
	
		
			916 lines
		
	
	
	
		
			22 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			916 lines
		
	
	
	
		
			22 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| #
 | |
| # Copyright 2017 The Abseil Authors.
 | |
| #
 | |
| # Licensed under the Apache License, Version 2.0 (the "License");
 | |
| # you may not use this file except in compliance with the License.
 | |
| # You may obtain a copy of the License at
 | |
| #
 | |
| #      https://www.apache.org/licenses/LICENSE-2.0
 | |
| #
 | |
| # Unless required by applicable law or agreed to in writing, software
 | |
| # distributed under the License is distributed on an "AS IS" BASIS,
 | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| # See the License for the specific language governing permissions and
 | |
| # limitations under the License.
 | |
| #
 | |
| 
 | |
| load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library", "cc_test")
 | |
| load(
 | |
|     "//absl:copts/configure_copts.bzl",
 | |
|     "ABSL_DEFAULT_COPTS",
 | |
|     "ABSL_DEFAULT_LINKOPTS",
 | |
|     "ABSL_TEST_COPTS",
 | |
| )
 | |
| 
 | |
| package(default_visibility = ["//visibility:public"])
 | |
| 
 | |
| licenses(["notice"])  # Apache 2.0
 | |
| 
 | |
| cc_library(
 | |
|     name = "compressed_tuple",
 | |
|     hdrs = ["internal/compressed_tuple.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/utility",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "compressed_tuple_test",
 | |
|     srcs = ["internal/compressed_tuple_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":compressed_tuple",
 | |
|         ":test_instance_tracker",
 | |
|         "//absl/memory",
 | |
|         "//absl/types:any",
 | |
|         "//absl/types:optional",
 | |
|         "//absl/utility",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "fixed_array",
 | |
|     hdrs = ["fixed_array.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":compressed_tuple",
 | |
|         "//absl/algorithm",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:dynamic_annotations",
 | |
|         "//absl/base:throw_delegate",
 | |
|         "//absl/memory",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "fixed_array_test",
 | |
|     srcs = ["fixed_array_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":counting_allocator",
 | |
|         ":fixed_array",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:exception_testing",
 | |
|         "//absl/hash:hash_testing",
 | |
|         "//absl/memory",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "fixed_array_exception_safety_test",
 | |
|     srcs = ["fixed_array_exception_safety_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":fixed_array",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:exception_safety_testing",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "fixed_array_benchmark",
 | |
|     srcs = ["fixed_array_benchmark.cc"],
 | |
|     copts = ABSL_TEST_COPTS + ["$(STACK_FRAME_UNLIMITED)"],
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = ["benchmark"],
 | |
|     deps = [
 | |
|         ":fixed_array",
 | |
|         "@com_github_google_benchmark//:benchmark_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "inlined_vector_internal",
 | |
|     hdrs = ["internal/inlined_vector.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":compressed_tuple",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/memory",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/types:span",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "inlined_vector",
 | |
|     hdrs = ["inlined_vector.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":inlined_vector_internal",
 | |
|         "//absl/algorithm",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:throw_delegate",
 | |
|         "//absl/memory",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "counting_allocator",
 | |
|     testonly = 1,
 | |
|     hdrs = ["internal/counting_allocator.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     visibility = ["//visibility:private"],
 | |
|     deps = ["//absl/base:config"],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "inlined_vector_test",
 | |
|     srcs = ["inlined_vector_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":counting_allocator",
 | |
|         ":inlined_vector",
 | |
|         ":test_instance_tracker",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:exception_testing",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|         "//absl/hash:hash_testing",
 | |
|         "//absl/memory",
 | |
|         "//absl/strings",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "inlined_vector_benchmark",
 | |
|     srcs = ["inlined_vector_benchmark.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = ["benchmark"],
 | |
|     deps = [
 | |
|         ":inlined_vector",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|         "//absl/strings",
 | |
|         "@com_github_google_benchmark//:benchmark_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "inlined_vector_exception_safety_test",
 | |
|     srcs = ["inlined_vector_exception_safety_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     deps = [
 | |
|         ":inlined_vector",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:exception_safety_testing",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "test_instance_tracker",
 | |
|     testonly = 1,
 | |
|     srcs = ["internal/test_instance_tracker.cc"],
 | |
|     hdrs = ["internal/test_instance_tracker.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     visibility = [
 | |
|         "//absl:__subpackages__",
 | |
|     ],
 | |
|     deps = ["//absl/types:compare"],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "test_instance_tracker_test",
 | |
|     srcs = ["internal/test_instance_tracker_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":test_instance_tracker",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| NOTEST_TAGS_NONMOBILE = [
 | |
|     "no_test_darwin_x86_64",
 | |
|     "no_test_loonix",
 | |
| ]
 | |
| 
 | |
| NOTEST_TAGS_MOBILE = [
 | |
|     "no_test_android_arm",
 | |
|     "no_test_android_arm64",
 | |
|     "no_test_android_x86",
 | |
|     "no_test_ios_x86_64",
 | |
| ]
 | |
| 
 | |
| NOTEST_TAGS = NOTEST_TAGS_MOBILE + NOTEST_TAGS_NONMOBILE
 | |
| 
 | |
| cc_library(
 | |
|     name = "flat_hash_map",
 | |
|     hdrs = ["flat_hash_map.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":container_memory",
 | |
|         ":hash_function_defaults",
 | |
|         ":raw_hash_map",
 | |
|         "//absl/algorithm:container",
 | |
|         "//absl/memory",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "flat_hash_map_test",
 | |
|     srcs = ["flat_hash_map_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = NOTEST_TAGS_NONMOBILE,
 | |
|     deps = [
 | |
|         ":flat_hash_map",
 | |
|         ":hash_generator_testing",
 | |
|         ":unordered_map_constructor_test",
 | |
|         ":unordered_map_lookup_test",
 | |
|         ":unordered_map_members_test",
 | |
|         ":unordered_map_modifiers_test",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|         "//absl/types:any",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "flat_hash_set",
 | |
|     hdrs = ["flat_hash_set.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":container_memory",
 | |
|         ":hash_function_defaults",
 | |
|         ":raw_hash_set",
 | |
|         "//absl/algorithm:container",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/memory",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "flat_hash_set_test",
 | |
|     srcs = ["flat_hash_set_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS + ["-DUNORDERED_SET_CXX17"],
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = NOTEST_TAGS_NONMOBILE,
 | |
|     deps = [
 | |
|         ":flat_hash_set",
 | |
|         ":hash_generator_testing",
 | |
|         ":unordered_set_constructor_test",
 | |
|         ":unordered_set_lookup_test",
 | |
|         ":unordered_set_members_test",
 | |
|         ":unordered_set_modifiers_test",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|         "//absl/memory",
 | |
|         "//absl/strings",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "node_hash_map",
 | |
|     hdrs = ["node_hash_map.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":container_memory",
 | |
|         ":hash_function_defaults",
 | |
|         ":node_hash_policy",
 | |
|         ":raw_hash_map",
 | |
|         "//absl/algorithm:container",
 | |
|         "//absl/memory",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "node_hash_map_test",
 | |
|     srcs = ["node_hash_map_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = NOTEST_TAGS_NONMOBILE,
 | |
|     deps = [
 | |
|         ":hash_generator_testing",
 | |
|         ":node_hash_map",
 | |
|         ":tracked",
 | |
|         ":unordered_map_constructor_test",
 | |
|         ":unordered_map_lookup_test",
 | |
|         ":unordered_map_members_test",
 | |
|         ":unordered_map_modifiers_test",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "node_hash_set",
 | |
|     hdrs = ["node_hash_set.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hash_function_defaults",
 | |
|         ":node_hash_policy",
 | |
|         ":raw_hash_set",
 | |
|         "//absl/algorithm:container",
 | |
|         "//absl/memory",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "node_hash_set_test",
 | |
|     srcs = ["node_hash_set_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS + ["-DUNORDERED_SET_CXX17"],
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = NOTEST_TAGS_NONMOBILE,
 | |
|     deps = [
 | |
|         ":node_hash_set",
 | |
|         ":unordered_set_constructor_test",
 | |
|         ":unordered_set_lookup_test",
 | |
|         ":unordered_set_members_test",
 | |
|         ":unordered_set_modifiers_test",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "container_memory",
 | |
|     hdrs = ["internal/container_memory.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/memory",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/utility",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "container_memory_test",
 | |
|     srcs = ["internal/container_memory_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = NOTEST_TAGS_NONMOBILE,
 | |
|     deps = [
 | |
|         ":container_memory",
 | |
|         ":test_instance_tracker",
 | |
|         "//absl/strings",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "hash_function_defaults",
 | |
|     hdrs = ["internal/hash_function_defaults.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/base:config",
 | |
|         "//absl/hash",
 | |
|         "//absl/strings",
 | |
|         "//absl/strings:cord",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "hash_function_defaults_test",
 | |
|     srcs = ["internal/hash_function_defaults_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = NOTEST_TAGS,
 | |
|     deps = [
 | |
|         ":hash_function_defaults",
 | |
|         "//absl/hash",
 | |
|         "//absl/random",
 | |
|         "//absl/strings",
 | |
|         "//absl/strings:cord",
 | |
|         "//absl/strings:cord_test_helpers",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "hash_generator_testing",
 | |
|     testonly = 1,
 | |
|     srcs = ["internal/hash_generator_testing.cc"],
 | |
|     hdrs = ["internal/hash_generator_testing.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hash_policy_testing",
 | |
|         "//absl/memory",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/strings",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "hash_policy_testing",
 | |
|     testonly = 1,
 | |
|     hdrs = ["internal/hash_policy_testing.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/hash",
 | |
|         "//absl/strings",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "hash_policy_testing_test",
 | |
|     srcs = ["internal/hash_policy_testing_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hash_policy_testing",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "hash_policy_traits",
 | |
|     hdrs = ["internal/hash_policy_traits.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = ["//absl/meta:type_traits"],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "hash_policy_traits_test",
 | |
|     srcs = ["internal/hash_policy_traits_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hash_policy_traits",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "hashtable_debug",
 | |
|     hdrs = ["internal/hashtable_debug.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hashtable_debug_hooks",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "hashtable_debug_hooks",
 | |
|     hdrs = ["internal/hashtable_debug_hooks.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/base:config",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "hashtablez_sampler",
 | |
|     srcs = [
 | |
|         "internal/hashtablez_sampler.cc",
 | |
|         "internal/hashtablez_sampler_force_weak_definition.cc",
 | |
|     ],
 | |
|     hdrs = ["internal/hashtablez_sampler.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":have_sse",
 | |
|         "//absl/base",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:exponential_biased",
 | |
|         "//absl/debugging:stacktrace",
 | |
|         "//absl/memory",
 | |
|         "//absl/synchronization",
 | |
|         "//absl/utility",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "hashtablez_sampler_test",
 | |
|     srcs = ["internal/hashtablez_sampler_test.cc"],
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hashtablez_sampler",
 | |
|         ":have_sse",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/synchronization",
 | |
|         "//absl/synchronization:thread_pool",
 | |
|         "//absl/time",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "node_hash_policy",
 | |
|     hdrs = ["internal/node_hash_policy.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = ["//absl/base:config"],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "node_hash_policy_test",
 | |
|     srcs = ["internal/node_hash_policy_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hash_policy_traits",
 | |
|         ":node_hash_policy",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "raw_hash_map",
 | |
|     hdrs = ["internal/raw_hash_map.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":container_memory",
 | |
|         ":raw_hash_set",
 | |
|         "//absl/base:throw_delegate",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "have_sse",
 | |
|     hdrs = ["internal/have_sse.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     visibility = ["//visibility:private"],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "common",
 | |
|     hdrs = ["internal/common.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/types:optional",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "raw_hash_set",
 | |
|     srcs = ["internal/raw_hash_set.cc"],
 | |
|     hdrs = ["internal/raw_hash_set.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":common",
 | |
|         ":compressed_tuple",
 | |
|         ":container_memory",
 | |
|         ":hash_policy_traits",
 | |
|         ":hashtable_debug_hooks",
 | |
|         ":hashtablez_sampler",
 | |
|         ":have_sse",
 | |
|         ":layout",
 | |
|         "//absl/base:bits",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:endian",
 | |
|         "//absl/memory",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/utility",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "raw_hash_set_test",
 | |
|     srcs = ["internal/raw_hash_set_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkstatic = 1,
 | |
|     tags = NOTEST_TAGS,
 | |
|     deps = [
 | |
|         ":container_memory",
 | |
|         ":hash_function_defaults",
 | |
|         ":hash_policy_testing",
 | |
|         ":hashtable_debug",
 | |
|         ":raw_hash_set",
 | |
|         "//absl/base",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|         "//absl/strings",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "raw_hash_set_allocator_test",
 | |
|     size = "small",
 | |
|     srcs = ["internal/raw_hash_set_allocator_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":raw_hash_set",
 | |
|         ":tracked",
 | |
|         "//absl/base:core_headers",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "layout",
 | |
|     hdrs = ["internal/layout.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/strings",
 | |
|         "//absl/types:span",
 | |
|         "//absl/utility",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "layout_test",
 | |
|     size = "small",
 | |
|     srcs = ["internal/layout_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = NOTEST_TAGS,
 | |
|     visibility = ["//visibility:private"],
 | |
|     deps = [
 | |
|         ":layout",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|         "//absl/types:span",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "tracked",
 | |
|     testonly = 1,
 | |
|     hdrs = ["internal/tracked.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/base:config",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "unordered_map_constructor_test",
 | |
|     testonly = 1,
 | |
|     hdrs = ["internal/unordered_map_constructor_test.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hash_generator_testing",
 | |
|         ":hash_policy_testing",
 | |
|         "@com_google_googletest//:gtest",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "unordered_map_lookup_test",
 | |
|     testonly = 1,
 | |
|     hdrs = ["internal/unordered_map_lookup_test.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hash_generator_testing",
 | |
|         ":hash_policy_testing",
 | |
|         "@com_google_googletest//:gtest",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "unordered_map_modifiers_test",
 | |
|     testonly = 1,
 | |
|     hdrs = ["internal/unordered_map_modifiers_test.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hash_generator_testing",
 | |
|         ":hash_policy_testing",
 | |
|         "@com_google_googletest//:gtest",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "unordered_set_constructor_test",
 | |
|     testonly = 1,
 | |
|     hdrs = ["internal/unordered_set_constructor_test.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hash_generator_testing",
 | |
|         ":hash_policy_testing",
 | |
|         "//absl/meta:type_traits",
 | |
|         "@com_google_googletest//:gtest",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "unordered_set_members_test",
 | |
|     testonly = 1,
 | |
|     hdrs = ["internal/unordered_set_members_test.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/meta:type_traits",
 | |
|         "@com_google_googletest//:gtest",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "unordered_map_members_test",
 | |
|     testonly = 1,
 | |
|     hdrs = ["internal/unordered_map_members_test.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/meta:type_traits",
 | |
|         "@com_google_googletest//:gtest",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "unordered_set_lookup_test",
 | |
|     testonly = 1,
 | |
|     hdrs = ["internal/unordered_set_lookup_test.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hash_generator_testing",
 | |
|         ":hash_policy_testing",
 | |
|         "@com_google_googletest//:gtest",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "unordered_set_modifiers_test",
 | |
|     testonly = 1,
 | |
|     hdrs = ["internal/unordered_set_modifiers_test.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":hash_generator_testing",
 | |
|         ":hash_policy_testing",
 | |
|         "@com_google_googletest//:gtest",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "unordered_set_test",
 | |
|     srcs = ["internal/unordered_set_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = NOTEST_TAGS_NONMOBILE,
 | |
|     deps = [
 | |
|         ":unordered_set_constructor_test",
 | |
|         ":unordered_set_lookup_test",
 | |
|         ":unordered_set_members_test",
 | |
|         ":unordered_set_modifiers_test",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "unordered_map_test",
 | |
|     srcs = ["internal/unordered_map_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = NOTEST_TAGS_NONMOBILE,
 | |
|     deps = [
 | |
|         ":unordered_map_constructor_test",
 | |
|         ":unordered_map_lookup_test",
 | |
|         ":unordered_map_members_test",
 | |
|         ":unordered_map_modifiers_test",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "btree",
 | |
|     srcs = [
 | |
|         "internal/btree.h",
 | |
|         "internal/btree_container.h",
 | |
|     ],
 | |
|     hdrs = [
 | |
|         "btree_map.h",
 | |
|         "btree_set.h",
 | |
|     ],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     visibility = ["//visibility:public"],
 | |
|     deps = [
 | |
|         ":common",
 | |
|         ":compressed_tuple",
 | |
|         ":container_memory",
 | |
|         ":layout",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:throw_delegate",
 | |
|         "//absl/memory",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/strings",
 | |
|         "//absl/strings:cord",
 | |
|         "//absl/types:compare",
 | |
|         "//absl/utility",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "btree_test_common",
 | |
|     testonly = 1,
 | |
|     hdrs = ["btree_test.h"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     visibility = ["//visibility:private"],
 | |
|     deps = [
 | |
|         ":btree",
 | |
|         ":flat_hash_set",
 | |
|         "//absl/strings",
 | |
|         "//absl/strings:cord",
 | |
|         "//absl/time",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "btree_test",
 | |
|     size = "large",
 | |
|     srcs = [
 | |
|         "btree_test.cc",
 | |
|     ],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     shard_count = 10,
 | |
|     visibility = ["//visibility:private"],
 | |
|     deps = [
 | |
|         ":btree",
 | |
|         ":btree_test_common",
 | |
|         ":counting_allocator",
 | |
|         ":test_instance_tracker",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|         "//absl/flags:flag",
 | |
|         "//absl/hash:hash_testing",
 | |
|         "//absl/memory",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/strings",
 | |
|         "//absl/types:compare",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_binary(
 | |
|     name = "btree_benchmark",
 | |
|     testonly = 1,
 | |
|     srcs = [
 | |
|         "btree_benchmark.cc",
 | |
|     ],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = ["benchmark"],
 | |
|     visibility = ["//visibility:private"],
 | |
|     deps = [
 | |
|         ":btree",
 | |
|         ":btree_test_common",
 | |
|         ":flat_hash_map",
 | |
|         ":flat_hash_set",
 | |
|         ":hashtable_debug",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|         "//absl/flags:flag",
 | |
|         "//absl/hash",
 | |
|         "//absl/memory",
 | |
|         "//absl/strings:cord",
 | |
|         "//absl/strings:str_format",
 | |
|         "//absl/time",
 | |
|         "@com_github_google_benchmark//:benchmark_main",
 | |
|     ],
 | |
| )
 |