-- d857e6e1f9b09a3eb5abd890677a98b23346f07a by Abseil Team <absl-team@google.com>: Simplify internal TryAcquireWithSpinning. No point declaring the `result` variable: we can just return the results directly. PiperOrigin-RevId: 307045800 -- 421952252bc23be51f47f7d23f3422bad1ed382c by Derek Mauro <dmauro@google.com>: Add custom sink support for `absl::Format()` through an ADL extension mechanism. Users can now define `void AbslFormatFlush(MySink* dest, absl::string_view part)` to allow `absl::Format()` to append to a custom sink. PiperOrigin-RevId: 306929052 -- c73d5cdb62cd58ea421ed1aeeab78a0ffcfeeefb by Matt Calabrese <calabrese@google.com>: Internal-only conformance-testing macro ABSL_INTERNAL_ASSERT_CONFORMANCE_OF for compile-time and runtime checks of a specified type, expected properties of that type, and a logically-ordered series of equivalence classes of that type. PiperOrigin-RevId: 306885512 -- a8c2495a07f37d68907855e3f0535bd5c27a3b52 by Abseil Team <absl-team@google.com>: Internal change PiperOrigin-RevId: 306766753 GitOrigin-RevId: d857e6e1f9b09a3eb5abd890677a98b23346f07a Change-Id: Ic23c92ac74f9ffcbb2471ff8c6691f4b7b20354b
		
			
				
	
	
		
			337 lines
		
	
	
	
		
			7.8 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			337 lines
		
	
	
	
		
			7.8 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_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 = "any",
 | |
|     hdrs = ["any.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":bad_any_cast",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:fast_type_id",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/utility",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "bad_any_cast",
 | |
|     hdrs = ["bad_any_cast.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":bad_any_cast_impl",
 | |
|         "//absl/base:config",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "bad_any_cast_impl",
 | |
|     srcs = [
 | |
|         "bad_any_cast.cc",
 | |
|         "bad_any_cast.h",
 | |
|     ],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     visibility = ["//visibility:private"],
 | |
|     deps = [
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "any_test",
 | |
|     size = "small",
 | |
|     srcs = [
 | |
|         "any_test.cc",
 | |
|     ],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":any",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:exception_testing",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|         "//absl/container:test_instance_tracker",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "any_exception_safety_test",
 | |
|     srcs = ["any_exception_safety_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":any",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:exception_safety_testing",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "span",
 | |
|     srcs = [
 | |
|         "internal/span.h",
 | |
|     ],
 | |
|     hdrs = [
 | |
|         "span.h",
 | |
|     ],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/algorithm",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:throw_delegate",
 | |
|         "//absl/meta:type_traits",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "span_test",
 | |
|     size = "small",
 | |
|     srcs = ["span_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":span",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/base:exception_testing",
 | |
|         "//absl/container:fixed_array",
 | |
|         "//absl/container:inlined_vector",
 | |
|         "//absl/hash:hash_testing",
 | |
|         "//absl/strings",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "optional",
 | |
|     srcs = ["internal/optional.h"],
 | |
|     hdrs = ["optional.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":bad_optional_access",
 | |
|         "//absl/base:base_internal",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/memory",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/utility",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "bad_optional_access",
 | |
|     srcs = ["bad_optional_access.cc"],
 | |
|     hdrs = ["bad_optional_access.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "bad_variant_access",
 | |
|     srcs = ["bad_variant_access.cc"],
 | |
|     hdrs = ["bad_variant_access.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "optional_test",
 | |
|     size = "small",
 | |
|     srcs = [
 | |
|         "optional_test.cc",
 | |
|     ],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":optional",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:raw_logging_internal",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/strings",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "optional_exception_safety_test",
 | |
|     srcs = [
 | |
|         "optional_exception_safety_test.cc",
 | |
|     ],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":optional",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:exception_safety_testing",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "conformance_testing",
 | |
|     testonly = 1,
 | |
|     hdrs = [
 | |
|         "internal/conformance_aliases.h",
 | |
|         "internal/conformance_archetype.h",
 | |
|         "internal/conformance_profile.h",
 | |
|         "internal/conformance_testing.h",
 | |
|         "internal/conformance_testing_helpers.h",
 | |
|         "internal/parentheses.h",
 | |
|         "internal/transform_args.h",
 | |
|     ],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         "//absl/algorithm:container",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/strings",
 | |
|         "//absl/utility",
 | |
|         "@com_google_googletest//:gtest",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "conformance_testing_test",
 | |
|     size = "small",
 | |
|     srcs = [
 | |
|         "internal/conformance_testing_test.cc",
 | |
|     ],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":conformance_testing",
 | |
|         "//absl/meta:type_traits",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "variant",
 | |
|     srcs = ["internal/variant.h"],
 | |
|     hdrs = ["variant.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":bad_variant_access",
 | |
|         "//absl/base:base_internal",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/utility",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "variant_test",
 | |
|     size = "small",
 | |
|     srcs = ["variant_test.cc"],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":variant",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/memory",
 | |
|         "//absl/meta:type_traits",
 | |
|         "//absl/strings",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "variant_benchmark",
 | |
|     srcs = [
 | |
|         "variant_benchmark.cc",
 | |
|     ],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     tags = ["benchmark"],
 | |
|     deps = [
 | |
|         ":variant",
 | |
|         "//absl/utility",
 | |
|         "@com_github_google_benchmark//:benchmark_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "variant_exception_safety_test",
 | |
|     size = "small",
 | |
|     srcs = [
 | |
|         "variant_exception_safety_test.cc",
 | |
|     ],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     linkopts = ABSL_DEFAULT_LINKOPTS,
 | |
|     deps = [
 | |
|         ":variant",
 | |
|         "//absl/base:config",
 | |
|         "//absl/base:exception_safety_testing",
 | |
|         "//absl/memory",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_library(
 | |
|     name = "compare",
 | |
|     hdrs = ["compare.h"],
 | |
|     copts = ABSL_DEFAULT_COPTS,
 | |
|     deps = [
 | |
|         "//absl/base:core_headers",
 | |
|         "//absl/meta:type_traits",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| cc_test(
 | |
|     name = "compare_test",
 | |
|     size = "small",
 | |
|     srcs = [
 | |
|         "compare_test.cc",
 | |
|     ],
 | |
|     copts = ABSL_TEST_COPTS,
 | |
|     deps = [
 | |
|         ":compare",
 | |
|         "//absl/base",
 | |
|         "@com_google_googletest//:gtest_main",
 | |
|     ],
 | |
| )
 |