#
# 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(
    "//absl:copts/configure_copts.bzl",
    "ABSL_DEFAULT_COPTS",
    "ABSL_DEFAULT_LINKOPTS",
    "ABSL_TEST_COPTS",
)

package(
    default_visibility = ["//visibility:public"],
    features = ["parse_headers"],
)

licenses(["notice"])

cc_library(
    name = "strings",
    srcs = [
        "ascii.cc",
        "charconv.cc",
        "escaping.cc",
        "internal/charconv_bigint.cc",
        "internal/charconv_bigint.h",
        "internal/charconv_parse.cc",
        "internal/charconv_parse.h",
        "internal/memutil.cc",
        "internal/memutil.h",
        "internal/stl_type_traits.h",
        "internal/str_join_internal.h",
        "internal/str_split_internal.h",
        "match.cc",
        "numbers.cc",
        "str_cat.cc",
        "str_replace.cc",
        "str_split.cc",
        "string_view.cc",
        "substitute.cc",
    ],
    hdrs = [
        "ascii.h",
        "charconv.h",
        "escaping.h",
        "internal/string_constant.h",
        "match.h",
        "numbers.h",
        "str_cat.h",
        "str_join.h",
        "str_replace.h",
        "str_split.h",
        "string_view.h",
        "strip.h",
        "substitute.h",
    ],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    deps = [
        ":internal",
        "//absl/base",
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/base:endian",
        "//absl/base:raw_logging_internal",
        "//absl/base:throw_delegate",
        "//absl/memory",
        "//absl/meta:type_traits",
        "//absl/numeric:bits",
        "//absl/numeric:int128",
    ],
)

cc_library(
    name = "internal",
    srcs = [
        "internal/escaping.cc",
        "internal/ostringstream.cc",
        "internal/utf8.cc",
    ],
    hdrs = [
        "internal/char_map.h",
        "internal/escaping.h",
        "internal/ostringstream.h",
        "internal/resize_uninitialized.h",
        "internal/utf8.h",
    ],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    deps = [
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/base:endian",
        "//absl/base:raw_logging_internal",
        "//absl/meta:type_traits",
    ],
)

cc_test(
    name = "match_test",
    size = "small",
    srcs = ["match_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "escaping_test",
    size = "small",
    srcs = [
        "escaping_test.cc",
        "internal/escaping_test_common.h",
    ],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord",
        ":strings",
        "//absl/base:core_headers",
        "//absl/container:fixed_array",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "escaping_benchmark",
    srcs = [
        "escaping_benchmark.cc",
        "internal/escaping_test_common.h",
    ],
    copts = ABSL_TEST_COPTS,
    tags = ["benchmark"],
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:raw_logging_internal",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_test(
    name = "ascii_test",
    size = "small",
    srcs = ["ascii_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:core_headers",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "ascii_benchmark",
    srcs = ["ascii_benchmark.cc"],
    copts = ABSL_TEST_COPTS,
    tags = ["benchmark"],
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_test(
    name = "memutil_benchmark",
    srcs = [
        "internal/memutil.h",
        "internal/memutil_benchmark.cc",
    ],
    copts = ABSL_TEST_COPTS,
    tags = ["benchmark"],
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:core_headers",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_test(
    name = "memutil_test",
    size = "small",
    srcs = [
        "internal/memutil.h",
        "internal/memutil_test.cc",
    ],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:core_headers",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "utf8_test",
    size = "small",
    srcs = [
        "internal/utf8_test.cc",
    ],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":internal",
        "//absl/base:core_headers",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "string_constant_test",
    size = "small",
    srcs = ["internal/string_constant_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/meta:type_traits",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "string_view_benchmark",
    srcs = ["string_view_benchmark.cc"],
    copts = ABSL_TEST_COPTS,
    tags = ["benchmark"],
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:core_headers",
        "//absl/base:raw_logging_internal",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_test(
    name = "string_view_test",
    size = "small",
    srcs = ["string_view_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/base:dynamic_annotations",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_library(
    name = "cord_internal",
    srcs = [
        "internal/cord_internal.cc",
        "internal/cord_rep_btree.cc",
        "internal/cord_rep_btree_navigator.cc",
        "internal/cord_rep_btree_reader.cc",
        "internal/cord_rep_consume.cc",
        "internal/cord_rep_crc.cc",
        "internal/cord_rep_ring.cc",
    ],
    hdrs = [
        "internal/cord_data_edge.h",
        "internal/cord_internal.h",
        "internal/cord_rep_btree.h",
        "internal/cord_rep_btree_navigator.h",
        "internal/cord_rep_btree_reader.h",
        "internal/cord_rep_consume.h",
        "internal/cord_rep_crc.h",
        "internal/cord_rep_flat.h",
        "internal/cord_rep_ring.h",
        "internal/cord_rep_ring_reader.h",
    ],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    visibility = [
        "//visibility:private",
    ],
    deps = [
        ":strings",
        "//absl/base:base_internal",
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/base:endian",
        "//absl/base:raw_logging_internal",
        "//absl/base:throw_delegate",
        "//absl/container:compressed_tuple",
        "//absl/container:inlined_vector",
        "//absl/container:layout",
        "//absl/functional:function_ref",
        "//absl/meta:type_traits",
        "//absl/types:span",
    ],
)

cc_test(
    name = "cord_data_edge_test",
    size = "small",
    srcs = ["internal/cord_data_edge_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord_internal",
        ":cord_rep_test_util",
        ":strings",
        "//absl/base:config",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cord_rep_btree_test",
    size = "medium",
    srcs = ["internal/cord_rep_btree_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord_internal",
        ":cord_rep_test_util",
        ":strings",
        "//absl/base:config",
        "//absl/base:raw_logging_internal",
        "//absl/cleanup",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cord_rep_btree_navigator_test",
    size = "medium",
    srcs = ["internal/cord_rep_btree_navigator_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord_internal",
        ":cord_rep_test_util",
        ":strings",
        "//absl/base:config",
        "//absl/base:raw_logging_internal",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cord_rep_btree_reader_test",
    size = "medium",
    srcs = ["internal/cord_rep_btree_reader_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord",
        ":cord_internal",
        ":cord_rep_test_util",
        ":strings",
        "//absl/base:config",
        "//absl/base:raw_logging_internal",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cord_rep_crc_test",
    size = "small",
    srcs = ["internal/cord_rep_crc_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord_internal",
        ":cord_rep_test_util",
        "//absl/base:config",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_library(
    name = "cordz_update_tracker",
    hdrs = ["internal/cordz_update_tracker.h"],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    visibility = [
        "//absl:__subpackages__",
    ],
    deps = ["//absl/base:config"],
)

cc_test(
    name = "cordz_update_tracker_test",
    srcs = ["internal/cordz_update_tracker_test.cc"],
    deps = [
        ":cordz_update_tracker",
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/synchronization",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_library(
    name = "cord",
    srcs = [
        "cord.cc",
        "cord_analysis.cc",
        "cord_analysis.h",
        "cord_buffer.cc",
    ],
    hdrs = [
        "cord.h",
        "cord_buffer.h",
    ],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    deps = [
        ":cord_internal",
        ":cordz_functions",
        ":cordz_info",
        ":cordz_statistics",
        ":cordz_update_scope",
        ":cordz_update_tracker",
        ":internal",
        ":str_format",
        ":strings",
        "//absl/base",
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/base:endian",
        "//absl/base:raw_logging_internal",
        "//absl/container:fixed_array",
        "//absl/container:inlined_vector",
        "//absl/functional:function_ref",
        "//absl/meta:type_traits",
        "//absl/numeric:bits",
        "//absl/types:optional",
        "//absl/types:span",
    ],
)

cc_library(
    name = "cordz_handle",
    srcs = ["internal/cordz_handle.cc"],
    hdrs = ["internal/cordz_handle.h"],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    visibility = [
        "//absl:__subpackages__",
    ],
    deps = [
        "//absl/base",
        "//absl/base:config",
        "//absl/base:raw_logging_internal",
        "//absl/synchronization",
    ],
)

cc_library(
    name = "cordz_info",
    srcs = ["internal/cordz_info.cc"],
    hdrs = ["internal/cordz_info.h"],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    visibility = [
        "//absl:__subpackages__",
    ],
    deps = [
        ":cord_internal",
        ":cordz_functions",
        ":cordz_handle",
        ":cordz_statistics",
        ":cordz_update_tracker",
        "//absl/base",
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/base:raw_logging_internal",
        "//absl/container:inlined_vector",
        "//absl/debugging:stacktrace",
        "//absl/synchronization",
        "//absl/types:span",
    ],
)

cc_library(
    name = "cordz_update_scope",
    hdrs = ["internal/cordz_update_scope.h"],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    visibility = [
        "//absl:__subpackages__",
    ],
    deps = [
        ":cord_internal",
        ":cordz_info",
        ":cordz_update_tracker",
        "//absl/base:config",
        "//absl/base:core_headers",
    ],
)

cc_test(
    name = "cordz_update_scope_test",
    srcs = ["internal/cordz_update_scope_test.cc"],
    copts = ABSL_DEFAULT_COPTS,
    deps = [
        ":cord_internal",
        ":cordz_info",
        ":cordz_test_helpers",
        ":cordz_update_scope",
        ":cordz_update_tracker",
        "//absl/base:config",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_library(
    name = "cordz_sample_token",
    srcs = ["internal/cordz_sample_token.cc"],
    hdrs = ["internal/cordz_sample_token.h"],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    visibility = [
        "//absl:__subpackages__",
    ],
    deps = [
        ":cordz_handle",
        ":cordz_info",
        "//absl/base:config",
    ],
)

cc_library(
    name = "cordz_functions",
    srcs = ["internal/cordz_functions.cc"],
    hdrs = ["internal/cordz_functions.h"],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    visibility = [
        "//absl:__subpackages__",
    ],
    deps = [
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/base:raw_logging_internal",
        "//absl/profiling:exponential_biased",
    ],
)

cc_library(
    name = "cordz_statistics",
    hdrs = ["internal/cordz_statistics.h"],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    visibility = [
        "//absl:__subpackages__",
    ],
    deps = [
        ":cordz_update_tracker",
        "//absl/base:config",
    ],
)

cc_test(
    name = "cordz_functions_test",
    srcs = [
        "internal/cordz_functions_test.cc",
    ],
    deps = [
        ":cordz_functions",
        ":cordz_test_helpers",
        "//absl/base:config",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cordz_handle_test",
    srcs = [
        "internal/cordz_handle_test.cc",
    ],
    deps = [
        ":cordz_handle",
        "//absl/base:config",
        "//absl/memory",
        "//absl/random",
        "//absl/random:distributions",
        "//absl/synchronization",
        "//absl/synchronization:thread_pool",
        "//absl/time",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cordz_info_test",
    srcs = [
        "internal/cordz_info_test.cc",
    ],
    deps = [
        ":cord_internal",
        ":cordz_handle",
        ":cordz_info",
        ":cordz_statistics",
        ":cordz_test_helpers",
        ":cordz_update_tracker",
        ":strings",
        "//absl/base:config",
        "//absl/debugging:stacktrace",
        "//absl/debugging:symbolize",
        "//absl/types:span",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cordz_info_statistics_test",
    srcs = [
        "internal/cordz_info_statistics_test.cc",
    ],
    deps = [
        ":cord",
        ":cord_internal",
        ":cordz_info",
        ":cordz_sample_token",
        ":cordz_statistics",
        ":cordz_update_scope",
        ":cordz_update_tracker",
        "//absl/base:config",
        "//absl/synchronization",
        "//absl/synchronization:thread_pool",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cordz_sample_token_test",
    srcs = [
        "internal/cordz_sample_token_test.cc",
    ],
    deps = [
        ":cord_internal",
        ":cordz_handle",
        ":cordz_info",
        ":cordz_sample_token",
        ":cordz_test_helpers",
        "//absl/base:config",
        "//absl/memory",
        "//absl/random",
        "//absl/synchronization",
        "//absl/synchronization:thread_pool",
        "//absl/time",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_library(
    name = "cord_test_helpers",
    testonly = 1,
    hdrs = [
        "cord_test_helpers.h",
    ],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    deps = [
        ":cord",
        ":cord_internal",
        ":strings",
        "//absl/base:config",
    ],
)

cc_library(
    name = "cord_rep_test_util",
    testonly = 1,
    hdrs = ["internal/cord_rep_test_util.h"],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    deps = [
        ":cord_internal",
        ":strings",
        "//absl/base:config",
        "//absl/base:raw_logging_internal",
    ],
)

cc_library(
    name = "cordz_test_helpers",
    testonly = 1,
    hdrs = ["cordz_test_helpers.h"],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    deps = [
        ":cord",
        ":cord_internal",
        ":cordz_info",
        ":cordz_sample_token",
        ":cordz_statistics",
        ":cordz_update_tracker",
        ":strings",
        "//absl/base:config",
        "//absl/base:core_headers",
        "@com_google_googletest//:gtest",
    ],
)

cc_test(
    name = "cord_buffer_test",
    size = "small",
    srcs = ["cord_buffer_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord",
        ":cord_internal",
        ":cord_rep_test_util",
        "//absl/base:config",
        "//absl/types:span",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cord_test",
    size = "medium",
    srcs = ["cord_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord",
        ":cord_test_helpers",
        ":cordz_functions",
        ":cordz_test_helpers",
        ":str_format",
        ":strings",
        "//absl/base",
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/base:endian",
        "//absl/base:raw_logging_internal",
        "//absl/container:fixed_array",
        "//absl/hash",
        "//absl/random",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cordz_test",
    size = "medium",
    srcs = ["cordz_test.cc"],
    copts = ABSL_TEST_COPTS,
    tags = [
        "benchmark",
        "no_test_android_arm",
        "no_test_android_arm64",
        "no_test_android_x86",
        "no_test_ios_x86_64",
        "no_test_loonix",
        "no_test_msvc_x64",
    ],
    visibility = ["//visibility:private"],
    deps = [
        ":cord",
        ":cord_test_helpers",
        ":cordz_functions",
        ":cordz_info",
        ":cordz_sample_token",
        ":cordz_statistics",
        ":cordz_test_helpers",
        ":cordz_update_tracker",
        ":strings",
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/base:raw_logging_internal",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cord_ring_test",
    size = "medium",
    srcs = ["cord_ring_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord_internal",
        ":strings",
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/base:raw_logging_internal",
        "//absl/debugging:leak_check",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "cord_ring_reader_test",
    size = "medium",
    srcs = ["cord_ring_reader_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord_internal",
        ":strings",
        "//absl/base:core_headers",
        "//absl/debugging:leak_check",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "substitute_test",
    size = "small",
    srcs = ["substitute_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:core_headers",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_replace_benchmark",
    srcs = ["str_replace_benchmark.cc"],
    copts = ABSL_TEST_COPTS,
    tags = ["benchmark"],
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:raw_logging_internal",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_test(
    name = "str_replace_test",
    size = "small",
    srcs = ["str_replace_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_split_test",
    srcs = ["str_split_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:core_headers",
        "//absl/base:dynamic_annotations",
        "//absl/container:btree",
        "//absl/container:flat_hash_map",
        "//absl/container:node_hash_map",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_split_benchmark",
    srcs = ["str_split_benchmark.cc"],
    copts = ABSL_TEST_COPTS,
    tags = ["benchmark"],
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:raw_logging_internal",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_test(
    name = "ostringstream_test",
    size = "small",
    srcs = ["internal/ostringstream_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":internal",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "ostringstream_benchmark",
    srcs = ["internal/ostringstream_benchmark.cc"],
    copts = ABSL_TEST_COPTS,
    tags = ["benchmark"],
    visibility = ["//visibility:private"],
    deps = [
        ":internal",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_test(
    name = "resize_uninitialized_test",
    size = "small",
    srcs = [
        "internal/resize_uninitialized.h",
        "internal/resize_uninitialized_test.cc",
    ],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        "//absl/base:core_headers",
        "//absl/meta:type_traits",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_join_test",
    size = "small",
    srcs = ["str_join_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:core_headers",
        "//absl/memory",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_join_benchmark",
    srcs = ["str_join_benchmark.cc"],
    copts = ABSL_TEST_COPTS,
    tags = ["benchmark"],
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_test(
    name = "str_cat_test",
    size = "small",
    srcs = ["str_cat_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:core_headers",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_cat_benchmark",
    srcs = ["str_cat_benchmark.cc"],
    copts = ABSL_TEST_COPTS,
    tags = ["benchmark"],
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_test(
    name = "numbers_test",
    size = "medium",
    srcs = [
        "internal/numbers_test_common.h",
        "numbers_test.cc",
    ],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":internal",
        ":pow10_helper",
        ":strings",
        "//absl/base:config",
        "//absl/base:raw_logging_internal",
        "//absl/random",
        "//absl/random:distributions",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "numbers_benchmark",
    srcs = ["numbers_benchmark.cc"],
    copts = ABSL_TEST_COPTS,
    tags = ["benchmark"],
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:raw_logging_internal",
        "//absl/random",
        "//absl/random:distributions",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_test(
    name = "strip_test",
    size = "small",
    srcs = ["strip_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "char_map_test",
    srcs = ["internal/char_map_test.cc"],
    copts = ABSL_TEST_COPTS,
    deps = [
        ":internal",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "char_map_benchmark",
    srcs = ["internal/char_map_benchmark.cc"],
    copts = ABSL_TEST_COPTS,
    tags = ["benchmark"],
    deps = [
        ":internal",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_test(
    name = "charconv_test",
    srcs = ["charconv_test.cc"],
    copts = ABSL_TEST_COPTS,
    deps = [
        ":pow10_helper",
        ":str_format",
        ":strings",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "charconv_parse_test",
    srcs = [
        "internal/charconv_parse.h",
        "internal/charconv_parse_test.cc",
    ],
    copts = ABSL_TEST_COPTS,
    deps = [
        ":strings",
        "//absl/base:config",
        "//absl/base:raw_logging_internal",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "charconv_bigint_test",
    srcs = [
        "internal/charconv_bigint.h",
        "internal/charconv_bigint_test.cc",
        "internal/charconv_parse.h",
    ],
    copts = ABSL_TEST_COPTS,
    deps = [
        ":strings",
        "//absl/base:config",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "charconv_benchmark",
    srcs = [
        "charconv_benchmark.cc",
    ],
    tags = [
        "benchmark",
    ],
    deps = [
        ":strings",
        "@com_github_google_benchmark//:benchmark_main",
    ],
)

cc_library(
    name = "str_format",
    hdrs = [
        "str_format.h",
    ],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    deps = [
        ":str_format_internal",
    ],
)

cc_library(
    name = "str_format_internal",
    srcs = [
        "internal/str_format/arg.cc",
        "internal/str_format/bind.cc",
        "internal/str_format/extension.cc",
        "internal/str_format/float_conversion.cc",
        "internal/str_format/output.cc",
        "internal/str_format/parser.cc",
    ],
    hdrs = [
        "internal/str_format/arg.h",
        "internal/str_format/bind.h",
        "internal/str_format/checker.h",
        "internal/str_format/extension.h",
        "internal/str_format/float_conversion.h",
        "internal/str_format/output.h",
        "internal/str_format/parser.h",
    ],
    copts = ABSL_DEFAULT_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":strings",
        "//absl/base:config",
        "//absl/base:core_headers",
        "//absl/functional:function_ref",
        "//absl/meta:type_traits",
        "//absl/numeric:bits",
        "//absl/numeric:int128",
        "//absl/numeric:representation",
        "//absl/types:optional",
        "//absl/types:span",
        "//absl/utility",
    ],
)

cc_test(
    name = "str_format_test",
    srcs = ["str_format_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord",
        ":str_format",
        ":strings",
        "//absl/base:core_headers",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_format_extension_test",
    srcs = [
        "internal/str_format/extension_test.cc",
    ],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":str_format",
        ":str_format_internal",
        ":strings",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_format_arg_test",
    srcs = ["internal/str_format/arg_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":str_format",
        ":str_format_internal",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_format_bind_test",
    srcs = ["internal/str_format/bind_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":str_format_internal",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_format_checker_test",
    srcs = ["internal/str_format/checker_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":str_format",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_format_convert_test",
    size = "medium",
    srcs = ["internal/str_format/convert_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":str_format_internal",
        ":strings",
        "//absl/base:core_headers",
        "//absl/base:raw_logging_internal",
        "//absl/types:optional",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_format_output_test",
    srcs = ["internal/str_format/output_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":cord",
        ":str_format_internal",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "str_format_parser_test",
    srcs = ["internal/str_format/parser_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":str_format_internal",
        "//absl/base:core_headers",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_library(
    name = "pow10_helper",
    testonly = True,
    srcs = ["internal/pow10_helper.cc"],
    hdrs = ["internal/pow10_helper.h"],
    linkopts = ABSL_DEFAULT_LINKOPTS,
    visibility = ["//visibility:private"],
    deps = ["//absl/base:config"],
)

cc_test(
    name = "pow10_helper_test",
    srcs = ["internal/pow10_helper_test.cc"],
    copts = ABSL_TEST_COPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":pow10_helper",
        ":str_format",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_binary(
    name = "atod_manual_test",
    testonly = 1,
    srcs = ["atod_manual_test.cc"],
    copts = ABSL_TEST_COPTS,
    linkopts = ABSL_DEFAULT_LINKOPTS,
    visibility = ["//visibility:private"],
    deps = [
        ":str_format",
        ":strings",
        "//absl/base",
        "//absl/types:optional",
    ],
)
