1# 2# Copyright 2017 The Abseil Authors. 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# https://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15 16load( 17 "//absl:copts/configure_copts.bzl", 18 "ABSL_DEFAULT_COPTS", 19 "ABSL_DEFAULT_LINKOPTS", 20 "ABSL_TEST_COPTS", 21) 22 23package( 24 default_visibility = ["//visibility:public"], 25 features = ["parse_headers"], 26) 27 28licenses(["notice"]) 29 30cc_library( 31 name = "strings", 32 srcs = [ 33 "ascii.cc", 34 "charconv.cc", 35 "escaping.cc", 36 "internal/charconv_bigint.cc", 37 "internal/charconv_bigint.h", 38 "internal/charconv_parse.cc", 39 "internal/charconv_parse.h", 40 "internal/memutil.cc", 41 "internal/memutil.h", 42 "internal/stl_type_traits.h", 43 "internal/str_join_internal.h", 44 "internal/str_split_internal.h", 45 "match.cc", 46 "numbers.cc", 47 "str_cat.cc", 48 "str_replace.cc", 49 "str_split.cc", 50 "string_view.cc", 51 "substitute.cc", 52 ], 53 hdrs = [ 54 "ascii.h", 55 "charconv.h", 56 "escaping.h", 57 "internal/string_constant.h", 58 "match.h", 59 "numbers.h", 60 "str_cat.h", 61 "str_join.h", 62 "str_replace.h", 63 "str_split.h", 64 "string_view.h", 65 "strip.h", 66 "substitute.h", 67 ], 68 copts = ABSL_DEFAULT_COPTS, 69 linkopts = ABSL_DEFAULT_LINKOPTS, 70 deps = [ 71 ":internal", 72 "//absl/base", 73 "//absl/base:config", 74 "//absl/base:core_headers", 75 "//absl/base:endian", 76 "//absl/base:raw_logging_internal", 77 "//absl/base:throw_delegate", 78 "//absl/memory", 79 "//absl/meta:type_traits", 80 "//absl/numeric:bits", 81 "//absl/numeric:int128", 82 ], 83) 84 85cc_library( 86 name = "internal", 87 srcs = [ 88 "internal/escaping.cc", 89 "internal/ostringstream.cc", 90 "internal/utf8.cc", 91 ], 92 hdrs = [ 93 "internal/char_map.h", 94 "internal/escaping.h", 95 "internal/ostringstream.h", 96 "internal/resize_uninitialized.h", 97 "internal/utf8.h", 98 ], 99 copts = ABSL_DEFAULT_COPTS, 100 linkopts = ABSL_DEFAULT_LINKOPTS, 101 deps = [ 102 "//absl/base:config", 103 "//absl/base:core_headers", 104 "//absl/base:endian", 105 "//absl/base:raw_logging_internal", 106 "//absl/meta:type_traits", 107 ], 108) 109 110cc_test( 111 name = "match_test", 112 size = "small", 113 srcs = ["match_test.cc"], 114 copts = ABSL_TEST_COPTS, 115 visibility = ["//visibility:private"], 116 deps = [ 117 ":strings", 118 "@com_google_googletest//:gtest_main", 119 ], 120) 121 122cc_test( 123 name = "escaping_test", 124 size = "small", 125 srcs = [ 126 "escaping_test.cc", 127 "internal/escaping_test_common.h", 128 ], 129 copts = ABSL_TEST_COPTS, 130 visibility = ["//visibility:private"], 131 deps = [ 132 ":cord", 133 ":strings", 134 "//absl/base:core_headers", 135 "//absl/container:fixed_array", 136 "@com_google_googletest//:gtest_main", 137 ], 138) 139 140cc_test( 141 name = "escaping_benchmark", 142 srcs = [ 143 "escaping_benchmark.cc", 144 "internal/escaping_test_common.h", 145 ], 146 copts = ABSL_TEST_COPTS, 147 tags = ["benchmark"], 148 visibility = ["//visibility:private"], 149 deps = [ 150 ":strings", 151 "//absl/base:raw_logging_internal", 152 "@com_github_google_benchmark//:benchmark_main", 153 ], 154) 155 156cc_test( 157 name = "ascii_test", 158 size = "small", 159 srcs = ["ascii_test.cc"], 160 copts = ABSL_TEST_COPTS, 161 visibility = ["//visibility:private"], 162 deps = [ 163 ":strings", 164 "//absl/base:core_headers", 165 "@com_google_googletest//:gtest_main", 166 ], 167) 168 169cc_test( 170 name = "ascii_benchmark", 171 srcs = ["ascii_benchmark.cc"], 172 copts = ABSL_TEST_COPTS, 173 tags = ["benchmark"], 174 visibility = ["//visibility:private"], 175 deps = [ 176 ":strings", 177 "@com_github_google_benchmark//:benchmark_main", 178 ], 179) 180 181cc_test( 182 name = "memutil_benchmark", 183 srcs = [ 184 "internal/memutil.h", 185 "internal/memutil_benchmark.cc", 186 ], 187 copts = ABSL_TEST_COPTS, 188 tags = ["benchmark"], 189 visibility = ["//visibility:private"], 190 deps = [ 191 ":strings", 192 "//absl/base:core_headers", 193 "@com_github_google_benchmark//:benchmark_main", 194 ], 195) 196 197cc_test( 198 name = "memutil_test", 199 size = "small", 200 srcs = [ 201 "internal/memutil.h", 202 "internal/memutil_test.cc", 203 ], 204 copts = ABSL_TEST_COPTS, 205 visibility = ["//visibility:private"], 206 deps = [ 207 ":strings", 208 "//absl/base:core_headers", 209 "@com_google_googletest//:gtest_main", 210 ], 211) 212 213cc_test( 214 name = "utf8_test", 215 size = "small", 216 srcs = [ 217 "internal/utf8_test.cc", 218 ], 219 copts = ABSL_TEST_COPTS, 220 visibility = ["//visibility:private"], 221 deps = [ 222 ":internal", 223 "//absl/base:core_headers", 224 "@com_google_googletest//:gtest_main", 225 ], 226) 227 228cc_test( 229 name = "string_constant_test", 230 size = "small", 231 srcs = ["internal/string_constant_test.cc"], 232 copts = ABSL_TEST_COPTS, 233 visibility = ["//visibility:private"], 234 deps = [ 235 ":strings", 236 "//absl/meta:type_traits", 237 "@com_google_googletest//:gtest_main", 238 ], 239) 240 241cc_test( 242 name = "string_view_benchmark", 243 srcs = ["string_view_benchmark.cc"], 244 copts = ABSL_TEST_COPTS, 245 tags = ["benchmark"], 246 visibility = ["//visibility:private"], 247 deps = [ 248 ":strings", 249 "//absl/base:core_headers", 250 "//absl/base:raw_logging_internal", 251 "@com_github_google_benchmark//:benchmark_main", 252 ], 253) 254 255cc_test( 256 name = "string_view_test", 257 size = "small", 258 srcs = ["string_view_test.cc"], 259 copts = ABSL_TEST_COPTS, 260 visibility = ["//visibility:private"], 261 deps = [ 262 ":strings", 263 "//absl/base:config", 264 "//absl/base:core_headers", 265 "//absl/base:dynamic_annotations", 266 "@com_google_googletest//:gtest_main", 267 ], 268) 269 270cc_library( 271 name = "cord_internal", 272 srcs = [ 273 "internal/cord_internal.cc", 274 "internal/cord_rep_btree.cc", 275 "internal/cord_rep_btree_navigator.cc", 276 "internal/cord_rep_btree_reader.cc", 277 "internal/cord_rep_consume.cc", 278 "internal/cord_rep_crc.cc", 279 "internal/cord_rep_ring.cc", 280 ], 281 hdrs = [ 282 "internal/cord_data_edge.h", 283 "internal/cord_internal.h", 284 "internal/cord_rep_btree.h", 285 "internal/cord_rep_btree_navigator.h", 286 "internal/cord_rep_btree_reader.h", 287 "internal/cord_rep_consume.h", 288 "internal/cord_rep_crc.h", 289 "internal/cord_rep_flat.h", 290 "internal/cord_rep_ring.h", 291 "internal/cord_rep_ring_reader.h", 292 ], 293 copts = ABSL_DEFAULT_COPTS, 294 linkopts = ABSL_DEFAULT_LINKOPTS, 295 visibility = [ 296 "//visibility:private", 297 ], 298 deps = [ 299 ":strings", 300 "//absl/base:base_internal", 301 "//absl/base:config", 302 "//absl/base:core_headers", 303 "//absl/base:endian", 304 "//absl/base:raw_logging_internal", 305 "//absl/base:throw_delegate", 306 "//absl/container:compressed_tuple", 307 "//absl/container:inlined_vector", 308 "//absl/container:layout", 309 "//absl/functional:function_ref", 310 "//absl/meta:type_traits", 311 "//absl/types:span", 312 ], 313) 314 315cc_test( 316 name = "cord_data_edge_test", 317 size = "small", 318 srcs = ["internal/cord_data_edge_test.cc"], 319 copts = ABSL_TEST_COPTS, 320 visibility = ["//visibility:private"], 321 deps = [ 322 ":cord_internal", 323 ":cord_rep_test_util", 324 ":strings", 325 "//absl/base:config", 326 "@com_google_googletest//:gtest_main", 327 ], 328) 329 330cc_test( 331 name = "cord_rep_btree_test", 332 size = "medium", 333 srcs = ["internal/cord_rep_btree_test.cc"], 334 copts = ABSL_TEST_COPTS, 335 visibility = ["//visibility:private"], 336 deps = [ 337 ":cord_internal", 338 ":cord_rep_test_util", 339 ":strings", 340 "//absl/base:config", 341 "//absl/base:raw_logging_internal", 342 "//absl/cleanup", 343 "@com_google_googletest//:gtest_main", 344 ], 345) 346 347cc_test( 348 name = "cord_rep_btree_navigator_test", 349 size = "medium", 350 srcs = ["internal/cord_rep_btree_navigator_test.cc"], 351 copts = ABSL_TEST_COPTS, 352 visibility = ["//visibility:private"], 353 deps = [ 354 ":cord_internal", 355 ":cord_rep_test_util", 356 ":strings", 357 "//absl/base:config", 358 "//absl/base:raw_logging_internal", 359 "@com_google_googletest//:gtest_main", 360 ], 361) 362 363cc_test( 364 name = "cord_rep_btree_reader_test", 365 size = "medium", 366 srcs = ["internal/cord_rep_btree_reader_test.cc"], 367 copts = ABSL_TEST_COPTS, 368 visibility = ["//visibility:private"], 369 deps = [ 370 ":cord", 371 ":cord_internal", 372 ":cord_rep_test_util", 373 ":strings", 374 "//absl/base:config", 375 "//absl/base:raw_logging_internal", 376 "@com_google_googletest//:gtest_main", 377 ], 378) 379 380cc_test( 381 name = "cord_rep_crc_test", 382 size = "small", 383 srcs = ["internal/cord_rep_crc_test.cc"], 384 copts = ABSL_TEST_COPTS, 385 visibility = ["//visibility:private"], 386 deps = [ 387 ":cord_internal", 388 ":cord_rep_test_util", 389 "//absl/base:config", 390 "@com_google_googletest//:gtest_main", 391 ], 392) 393 394cc_library( 395 name = "cordz_update_tracker", 396 hdrs = ["internal/cordz_update_tracker.h"], 397 copts = ABSL_DEFAULT_COPTS, 398 linkopts = ABSL_DEFAULT_LINKOPTS, 399 visibility = [ 400 "//absl:__subpackages__", 401 ], 402 deps = ["//absl/base:config"], 403) 404 405cc_test( 406 name = "cordz_update_tracker_test", 407 srcs = ["internal/cordz_update_tracker_test.cc"], 408 deps = [ 409 ":cordz_update_tracker", 410 "//absl/base:config", 411 "//absl/base:core_headers", 412 "//absl/synchronization", 413 "@com_google_googletest//:gtest_main", 414 ], 415) 416 417cc_library( 418 name = "cord", 419 srcs = [ 420 "cord.cc", 421 "cord_analysis.cc", 422 "cord_analysis.h", 423 "cord_buffer.cc", 424 ], 425 hdrs = [ 426 "cord.h", 427 "cord_buffer.h", 428 ], 429 copts = ABSL_DEFAULT_COPTS, 430 linkopts = ABSL_DEFAULT_LINKOPTS, 431 deps = [ 432 ":cord_internal", 433 ":cordz_functions", 434 ":cordz_info", 435 ":cordz_statistics", 436 ":cordz_update_scope", 437 ":cordz_update_tracker", 438 ":internal", 439 ":str_format", 440 ":strings", 441 "//absl/base", 442 "//absl/base:config", 443 "//absl/base:core_headers", 444 "//absl/base:endian", 445 "//absl/base:raw_logging_internal", 446 "//absl/container:fixed_array", 447 "//absl/container:inlined_vector", 448 "//absl/functional:function_ref", 449 "//absl/meta:type_traits", 450 "//absl/numeric:bits", 451 "//absl/types:optional", 452 "//absl/types:span", 453 ], 454) 455 456cc_library( 457 name = "cordz_handle", 458 srcs = ["internal/cordz_handle.cc"], 459 hdrs = ["internal/cordz_handle.h"], 460 copts = ABSL_DEFAULT_COPTS, 461 linkopts = ABSL_DEFAULT_LINKOPTS, 462 visibility = [ 463 "//absl:__subpackages__", 464 ], 465 deps = [ 466 "//absl/base", 467 "//absl/base:config", 468 "//absl/base:raw_logging_internal", 469 "//absl/synchronization", 470 ], 471) 472 473cc_library( 474 name = "cordz_info", 475 srcs = ["internal/cordz_info.cc"], 476 hdrs = ["internal/cordz_info.h"], 477 copts = ABSL_DEFAULT_COPTS, 478 linkopts = ABSL_DEFAULT_LINKOPTS, 479 visibility = [ 480 "//absl:__subpackages__", 481 ], 482 deps = [ 483 ":cord_internal", 484 ":cordz_functions", 485 ":cordz_handle", 486 ":cordz_statistics", 487 ":cordz_update_tracker", 488 "//absl/base", 489 "//absl/base:config", 490 "//absl/base:core_headers", 491 "//absl/base:raw_logging_internal", 492 "//absl/container:inlined_vector", 493 "//absl/debugging:stacktrace", 494 "//absl/synchronization", 495 "//absl/types:span", 496 ], 497) 498 499cc_library( 500 name = "cordz_update_scope", 501 hdrs = ["internal/cordz_update_scope.h"], 502 copts = ABSL_DEFAULT_COPTS, 503 linkopts = ABSL_DEFAULT_LINKOPTS, 504 visibility = [ 505 "//absl:__subpackages__", 506 ], 507 deps = [ 508 ":cord_internal", 509 ":cordz_info", 510 ":cordz_update_tracker", 511 "//absl/base:config", 512 "//absl/base:core_headers", 513 ], 514) 515 516cc_test( 517 name = "cordz_update_scope_test", 518 srcs = ["internal/cordz_update_scope_test.cc"], 519 copts = ABSL_DEFAULT_COPTS, 520 deps = [ 521 ":cord_internal", 522 ":cordz_info", 523 ":cordz_test_helpers", 524 ":cordz_update_scope", 525 ":cordz_update_tracker", 526 "//absl/base:config", 527 "@com_google_googletest//:gtest_main", 528 ], 529) 530 531cc_library( 532 name = "cordz_sample_token", 533 srcs = ["internal/cordz_sample_token.cc"], 534 hdrs = ["internal/cordz_sample_token.h"], 535 copts = ABSL_DEFAULT_COPTS, 536 linkopts = ABSL_DEFAULT_LINKOPTS, 537 visibility = [ 538 "//absl:__subpackages__", 539 ], 540 deps = [ 541 ":cordz_handle", 542 ":cordz_info", 543 "//absl/base:config", 544 ], 545) 546 547cc_library( 548 name = "cordz_functions", 549 srcs = ["internal/cordz_functions.cc"], 550 hdrs = ["internal/cordz_functions.h"], 551 copts = ABSL_DEFAULT_COPTS, 552 linkopts = ABSL_DEFAULT_LINKOPTS, 553 visibility = [ 554 "//absl:__subpackages__", 555 ], 556 deps = [ 557 "//absl/base:config", 558 "//absl/base:core_headers", 559 "//absl/base:raw_logging_internal", 560 "//absl/profiling:exponential_biased", 561 ], 562) 563 564cc_library( 565 name = "cordz_statistics", 566 hdrs = ["internal/cordz_statistics.h"], 567 copts = ABSL_DEFAULT_COPTS, 568 linkopts = ABSL_DEFAULT_LINKOPTS, 569 visibility = [ 570 "//absl:__subpackages__", 571 ], 572 deps = [ 573 ":cordz_update_tracker", 574 "//absl/base:config", 575 ], 576) 577 578cc_test( 579 name = "cordz_functions_test", 580 srcs = [ 581 "internal/cordz_functions_test.cc", 582 ], 583 deps = [ 584 ":cordz_functions", 585 ":cordz_test_helpers", 586 "//absl/base:config", 587 "@com_google_googletest//:gtest_main", 588 ], 589) 590 591cc_test( 592 name = "cordz_handle_test", 593 srcs = [ 594 "internal/cordz_handle_test.cc", 595 ], 596 deps = [ 597 ":cordz_handle", 598 "//absl/base:config", 599 "//absl/memory", 600 "//absl/random", 601 "//absl/random:distributions", 602 "//absl/synchronization", 603 "//absl/synchronization:thread_pool", 604 "//absl/time", 605 "@com_google_googletest//:gtest_main", 606 ], 607) 608 609cc_test( 610 name = "cordz_info_test", 611 srcs = [ 612 "internal/cordz_info_test.cc", 613 ], 614 deps = [ 615 ":cord_internal", 616 ":cordz_handle", 617 ":cordz_info", 618 ":cordz_statistics", 619 ":cordz_test_helpers", 620 ":cordz_update_tracker", 621 ":strings", 622 "//absl/base:config", 623 "//absl/debugging:stacktrace", 624 "//absl/debugging:symbolize", 625 "//absl/types:span", 626 "@com_google_googletest//:gtest_main", 627 ], 628) 629 630cc_test( 631 name = "cordz_info_statistics_test", 632 srcs = [ 633 "internal/cordz_info_statistics_test.cc", 634 ], 635 deps = [ 636 ":cord", 637 ":cord_internal", 638 ":cordz_info", 639 ":cordz_sample_token", 640 ":cordz_statistics", 641 ":cordz_update_scope", 642 ":cordz_update_tracker", 643 "//absl/base:config", 644 "//absl/synchronization", 645 "//absl/synchronization:thread_pool", 646 "@com_google_googletest//:gtest_main", 647 ], 648) 649 650cc_test( 651 name = "cordz_sample_token_test", 652 srcs = [ 653 "internal/cordz_sample_token_test.cc", 654 ], 655 deps = [ 656 ":cord_internal", 657 ":cordz_handle", 658 ":cordz_info", 659 ":cordz_sample_token", 660 ":cordz_test_helpers", 661 "//absl/base:config", 662 "//absl/memory", 663 "//absl/random", 664 "//absl/synchronization", 665 "//absl/synchronization:thread_pool", 666 "//absl/time", 667 "@com_google_googletest//:gtest_main", 668 ], 669) 670 671cc_library( 672 name = "cord_test_helpers", 673 testonly = 1, 674 hdrs = [ 675 "cord_test_helpers.h", 676 ], 677 copts = ABSL_DEFAULT_COPTS, 678 linkopts = ABSL_DEFAULT_LINKOPTS, 679 deps = [ 680 ":cord", 681 ":cord_internal", 682 ":strings", 683 "//absl/base:config", 684 ], 685) 686 687cc_library( 688 name = "cord_rep_test_util", 689 testonly = 1, 690 hdrs = ["internal/cord_rep_test_util.h"], 691 copts = ABSL_DEFAULT_COPTS, 692 linkopts = ABSL_DEFAULT_LINKOPTS, 693 deps = [ 694 ":cord_internal", 695 ":strings", 696 "//absl/base:config", 697 "//absl/base:raw_logging_internal", 698 ], 699) 700 701cc_library( 702 name = "cordz_test_helpers", 703 testonly = 1, 704 hdrs = ["cordz_test_helpers.h"], 705 copts = ABSL_DEFAULT_COPTS, 706 linkopts = ABSL_DEFAULT_LINKOPTS, 707 deps = [ 708 ":cord", 709 ":cord_internal", 710 ":cordz_info", 711 ":cordz_sample_token", 712 ":cordz_statistics", 713 ":cordz_update_tracker", 714 ":strings", 715 "//absl/base:config", 716 "//absl/base:core_headers", 717 "@com_google_googletest//:gtest", 718 ], 719) 720 721cc_test( 722 name = "cord_buffer_test", 723 size = "small", 724 srcs = ["cord_buffer_test.cc"], 725 copts = ABSL_TEST_COPTS, 726 visibility = ["//visibility:private"], 727 deps = [ 728 ":cord", 729 ":cord_internal", 730 ":cord_rep_test_util", 731 "//absl/base:config", 732 "//absl/types:span", 733 "@com_google_googletest//:gtest_main", 734 ], 735) 736 737cc_test( 738 name = "cord_test", 739 size = "medium", 740 srcs = ["cord_test.cc"], 741 copts = ABSL_TEST_COPTS, 742 visibility = ["//visibility:private"], 743 deps = [ 744 ":cord", 745 ":cord_test_helpers", 746 ":cordz_functions", 747 ":cordz_test_helpers", 748 ":str_format", 749 ":strings", 750 "//absl/base", 751 "//absl/base:config", 752 "//absl/base:core_headers", 753 "//absl/base:endian", 754 "//absl/base:raw_logging_internal", 755 "//absl/container:fixed_array", 756 "//absl/hash", 757 "//absl/random", 758 "@com_google_googletest//:gtest_main", 759 ], 760) 761 762cc_test( 763 name = "cordz_test", 764 size = "medium", 765 srcs = ["cordz_test.cc"], 766 copts = ABSL_TEST_COPTS, 767 tags = [ 768 "benchmark", 769 "no_test_android_arm", 770 "no_test_android_arm64", 771 "no_test_android_x86", 772 "no_test_ios_x86_64", 773 "no_test_loonix", 774 "no_test_msvc_x64", 775 ], 776 visibility = ["//visibility:private"], 777 deps = [ 778 ":cord", 779 ":cord_test_helpers", 780 ":cordz_functions", 781 ":cordz_info", 782 ":cordz_sample_token", 783 ":cordz_statistics", 784 ":cordz_test_helpers", 785 ":cordz_update_tracker", 786 ":strings", 787 "//absl/base:config", 788 "//absl/base:core_headers", 789 "//absl/base:raw_logging_internal", 790 "@com_google_googletest//:gtest_main", 791 ], 792) 793 794cc_test( 795 name = "cord_ring_test", 796 size = "medium", 797 srcs = ["cord_ring_test.cc"], 798 copts = ABSL_TEST_COPTS, 799 visibility = ["//visibility:private"], 800 deps = [ 801 ":cord_internal", 802 ":strings", 803 "//absl/base:config", 804 "//absl/base:core_headers", 805 "//absl/base:raw_logging_internal", 806 "//absl/debugging:leak_check", 807 "@com_google_googletest//:gtest_main", 808 ], 809) 810 811cc_test( 812 name = "cord_ring_reader_test", 813 size = "medium", 814 srcs = ["cord_ring_reader_test.cc"], 815 copts = ABSL_TEST_COPTS, 816 visibility = ["//visibility:private"], 817 deps = [ 818 ":cord_internal", 819 ":strings", 820 "//absl/base:core_headers", 821 "//absl/debugging:leak_check", 822 "@com_google_googletest//:gtest_main", 823 ], 824) 825 826cc_test( 827 name = "substitute_test", 828 size = "small", 829 srcs = ["substitute_test.cc"], 830 copts = ABSL_TEST_COPTS, 831 visibility = ["//visibility:private"], 832 deps = [ 833 ":strings", 834 "//absl/base:core_headers", 835 "@com_google_googletest//:gtest_main", 836 ], 837) 838 839cc_test( 840 name = "str_replace_benchmark", 841 srcs = ["str_replace_benchmark.cc"], 842 copts = ABSL_TEST_COPTS, 843 tags = ["benchmark"], 844 visibility = ["//visibility:private"], 845 deps = [ 846 ":strings", 847 "//absl/base:raw_logging_internal", 848 "@com_github_google_benchmark//:benchmark_main", 849 ], 850) 851 852cc_test( 853 name = "str_replace_test", 854 size = "small", 855 srcs = ["str_replace_test.cc"], 856 copts = ABSL_TEST_COPTS, 857 visibility = ["//visibility:private"], 858 deps = [ 859 ":strings", 860 "@com_google_googletest//:gtest_main", 861 ], 862) 863 864cc_test( 865 name = "str_split_test", 866 srcs = ["str_split_test.cc"], 867 copts = ABSL_TEST_COPTS, 868 visibility = ["//visibility:private"], 869 deps = [ 870 ":strings", 871 "//absl/base:core_headers", 872 "//absl/base:dynamic_annotations", 873 "//absl/container:btree", 874 "//absl/container:flat_hash_map", 875 "//absl/container:node_hash_map", 876 "@com_google_googletest//:gtest_main", 877 ], 878) 879 880cc_test( 881 name = "str_split_benchmark", 882 srcs = ["str_split_benchmark.cc"], 883 copts = ABSL_TEST_COPTS, 884 tags = ["benchmark"], 885 visibility = ["//visibility:private"], 886 deps = [ 887 ":strings", 888 "//absl/base:raw_logging_internal", 889 "@com_github_google_benchmark//:benchmark_main", 890 ], 891) 892 893cc_test( 894 name = "ostringstream_test", 895 size = "small", 896 srcs = ["internal/ostringstream_test.cc"], 897 copts = ABSL_TEST_COPTS, 898 visibility = ["//visibility:private"], 899 deps = [ 900 ":internal", 901 "@com_google_googletest//:gtest_main", 902 ], 903) 904 905cc_test( 906 name = "ostringstream_benchmark", 907 srcs = ["internal/ostringstream_benchmark.cc"], 908 copts = ABSL_TEST_COPTS, 909 tags = ["benchmark"], 910 visibility = ["//visibility:private"], 911 deps = [ 912 ":internal", 913 "@com_github_google_benchmark//:benchmark_main", 914 ], 915) 916 917cc_test( 918 name = "resize_uninitialized_test", 919 size = "small", 920 srcs = [ 921 "internal/resize_uninitialized.h", 922 "internal/resize_uninitialized_test.cc", 923 ], 924 copts = ABSL_TEST_COPTS, 925 visibility = ["//visibility:private"], 926 deps = [ 927 "//absl/base:core_headers", 928 "//absl/meta:type_traits", 929 "@com_google_googletest//:gtest_main", 930 ], 931) 932 933cc_test( 934 name = "str_join_test", 935 size = "small", 936 srcs = ["str_join_test.cc"], 937 copts = ABSL_TEST_COPTS, 938 visibility = ["//visibility:private"], 939 deps = [ 940 ":strings", 941 "//absl/base:core_headers", 942 "//absl/memory", 943 "@com_google_googletest//:gtest_main", 944 ], 945) 946 947cc_test( 948 name = "str_join_benchmark", 949 srcs = ["str_join_benchmark.cc"], 950 copts = ABSL_TEST_COPTS, 951 tags = ["benchmark"], 952 visibility = ["//visibility:private"], 953 deps = [ 954 ":strings", 955 "@com_github_google_benchmark//:benchmark_main", 956 ], 957) 958 959cc_test( 960 name = "str_cat_test", 961 size = "small", 962 srcs = ["str_cat_test.cc"], 963 copts = ABSL_TEST_COPTS, 964 visibility = ["//visibility:private"], 965 deps = [ 966 ":strings", 967 "//absl/base:core_headers", 968 "@com_google_googletest//:gtest_main", 969 ], 970) 971 972cc_test( 973 name = "str_cat_benchmark", 974 srcs = ["str_cat_benchmark.cc"], 975 copts = ABSL_TEST_COPTS, 976 tags = ["benchmark"], 977 visibility = ["//visibility:private"], 978 deps = [ 979 ":strings", 980 "@com_github_google_benchmark//:benchmark_main", 981 ], 982) 983 984cc_test( 985 name = "numbers_test", 986 size = "medium", 987 srcs = [ 988 "internal/numbers_test_common.h", 989 "numbers_test.cc", 990 ], 991 copts = ABSL_TEST_COPTS, 992 visibility = ["//visibility:private"], 993 deps = [ 994 ":internal", 995 ":pow10_helper", 996 ":strings", 997 "//absl/base:config", 998 "//absl/base:raw_logging_internal", 999 "//absl/random", 1000 "//absl/random:distributions", 1001 "@com_google_googletest//:gtest_main", 1002 ], 1003) 1004 1005cc_test( 1006 name = "numbers_benchmark", 1007 srcs = ["numbers_benchmark.cc"], 1008 copts = ABSL_TEST_COPTS, 1009 tags = ["benchmark"], 1010 visibility = ["//visibility:private"], 1011 deps = [ 1012 ":strings", 1013 "//absl/base:raw_logging_internal", 1014 "//absl/random", 1015 "//absl/random:distributions", 1016 "@com_github_google_benchmark//:benchmark_main", 1017 ], 1018) 1019 1020cc_test( 1021 name = "strip_test", 1022 size = "small", 1023 srcs = ["strip_test.cc"], 1024 copts = ABSL_TEST_COPTS, 1025 visibility = ["//visibility:private"], 1026 deps = [ 1027 ":strings", 1028 "@com_google_googletest//:gtest_main", 1029 ], 1030) 1031 1032cc_test( 1033 name = "char_map_test", 1034 srcs = ["internal/char_map_test.cc"], 1035 copts = ABSL_TEST_COPTS, 1036 deps = [ 1037 ":internal", 1038 "@com_google_googletest//:gtest_main", 1039 ], 1040) 1041 1042cc_test( 1043 name = "char_map_benchmark", 1044 srcs = ["internal/char_map_benchmark.cc"], 1045 copts = ABSL_TEST_COPTS, 1046 tags = ["benchmark"], 1047 deps = [ 1048 ":internal", 1049 "@com_github_google_benchmark//:benchmark_main", 1050 ], 1051) 1052 1053cc_test( 1054 name = "charconv_test", 1055 srcs = ["charconv_test.cc"], 1056 copts = ABSL_TEST_COPTS, 1057 deps = [ 1058 ":pow10_helper", 1059 ":str_format", 1060 ":strings", 1061 "@com_google_googletest//:gtest_main", 1062 ], 1063) 1064 1065cc_test( 1066 name = "charconv_parse_test", 1067 srcs = [ 1068 "internal/charconv_parse.h", 1069 "internal/charconv_parse_test.cc", 1070 ], 1071 copts = ABSL_TEST_COPTS, 1072 deps = [ 1073 ":strings", 1074 "//absl/base:config", 1075 "//absl/base:raw_logging_internal", 1076 "@com_google_googletest//:gtest_main", 1077 ], 1078) 1079 1080cc_test( 1081 name = "charconv_bigint_test", 1082 srcs = [ 1083 "internal/charconv_bigint.h", 1084 "internal/charconv_bigint_test.cc", 1085 "internal/charconv_parse.h", 1086 ], 1087 copts = ABSL_TEST_COPTS, 1088 deps = [ 1089 ":strings", 1090 "//absl/base:config", 1091 "@com_google_googletest//:gtest_main", 1092 ], 1093) 1094 1095cc_test( 1096 name = "charconv_benchmark", 1097 srcs = [ 1098 "charconv_benchmark.cc", 1099 ], 1100 tags = [ 1101 "benchmark", 1102 ], 1103 deps = [ 1104 ":strings", 1105 "@com_github_google_benchmark//:benchmark_main", 1106 ], 1107) 1108 1109cc_library( 1110 name = "str_format", 1111 hdrs = [ 1112 "str_format.h", 1113 ], 1114 copts = ABSL_DEFAULT_COPTS, 1115 linkopts = ABSL_DEFAULT_LINKOPTS, 1116 deps = [ 1117 ":str_format_internal", 1118 ], 1119) 1120 1121cc_library( 1122 name = "str_format_internal", 1123 srcs = [ 1124 "internal/str_format/arg.cc", 1125 "internal/str_format/bind.cc", 1126 "internal/str_format/extension.cc", 1127 "internal/str_format/float_conversion.cc", 1128 "internal/str_format/output.cc", 1129 "internal/str_format/parser.cc", 1130 ], 1131 hdrs = [ 1132 "internal/str_format/arg.h", 1133 "internal/str_format/bind.h", 1134 "internal/str_format/checker.h", 1135 "internal/str_format/extension.h", 1136 "internal/str_format/float_conversion.h", 1137 "internal/str_format/output.h", 1138 "internal/str_format/parser.h", 1139 ], 1140 copts = ABSL_DEFAULT_COPTS, 1141 linkopts = ABSL_DEFAULT_LINKOPTS, 1142 visibility = ["//visibility:private"], 1143 deps = [ 1144 ":strings", 1145 "//absl/base:config", 1146 "//absl/base:core_headers", 1147 "//absl/functional:function_ref", 1148 "//absl/meta:type_traits", 1149 "//absl/numeric:bits", 1150 "//absl/numeric:int128", 1151 "//absl/numeric:representation", 1152 "//absl/types:optional", 1153 "//absl/types:span", 1154 "//absl/utility", 1155 ], 1156) 1157 1158cc_test( 1159 name = "str_format_test", 1160 srcs = ["str_format_test.cc"], 1161 copts = ABSL_TEST_COPTS, 1162 visibility = ["//visibility:private"], 1163 deps = [ 1164 ":cord", 1165 ":str_format", 1166 ":strings", 1167 "//absl/base:core_headers", 1168 "@com_google_googletest//:gtest_main", 1169 ], 1170) 1171 1172cc_test( 1173 name = "str_format_extension_test", 1174 srcs = [ 1175 "internal/str_format/extension_test.cc", 1176 ], 1177 copts = ABSL_TEST_COPTS, 1178 visibility = ["//visibility:private"], 1179 deps = [ 1180 ":str_format", 1181 ":str_format_internal", 1182 ":strings", 1183 "@com_google_googletest//:gtest_main", 1184 ], 1185) 1186 1187cc_test( 1188 name = "str_format_arg_test", 1189 srcs = ["internal/str_format/arg_test.cc"], 1190 copts = ABSL_TEST_COPTS, 1191 visibility = ["//visibility:private"], 1192 deps = [ 1193 ":str_format", 1194 ":str_format_internal", 1195 "@com_google_googletest//:gtest_main", 1196 ], 1197) 1198 1199cc_test( 1200 name = "str_format_bind_test", 1201 srcs = ["internal/str_format/bind_test.cc"], 1202 copts = ABSL_TEST_COPTS, 1203 visibility = ["//visibility:private"], 1204 deps = [ 1205 ":str_format_internal", 1206 "@com_google_googletest//:gtest_main", 1207 ], 1208) 1209 1210cc_test( 1211 name = "str_format_checker_test", 1212 srcs = ["internal/str_format/checker_test.cc"], 1213 copts = ABSL_TEST_COPTS, 1214 visibility = ["//visibility:private"], 1215 deps = [ 1216 ":str_format", 1217 "@com_google_googletest//:gtest_main", 1218 ], 1219) 1220 1221cc_test( 1222 name = "str_format_convert_test", 1223 size = "medium", 1224 srcs = ["internal/str_format/convert_test.cc"], 1225 copts = ABSL_TEST_COPTS, 1226 visibility = ["//visibility:private"], 1227 deps = [ 1228 ":str_format_internal", 1229 ":strings", 1230 "//absl/base:core_headers", 1231 "//absl/base:raw_logging_internal", 1232 "//absl/types:optional", 1233 "@com_google_googletest//:gtest_main", 1234 ], 1235) 1236 1237cc_test( 1238 name = "str_format_output_test", 1239 srcs = ["internal/str_format/output_test.cc"], 1240 copts = ABSL_TEST_COPTS, 1241 visibility = ["//visibility:private"], 1242 deps = [ 1243 ":cord", 1244 ":str_format_internal", 1245 "@com_google_googletest//:gtest_main", 1246 ], 1247) 1248 1249cc_test( 1250 name = "str_format_parser_test", 1251 srcs = ["internal/str_format/parser_test.cc"], 1252 copts = ABSL_TEST_COPTS, 1253 visibility = ["//visibility:private"], 1254 deps = [ 1255 ":str_format_internal", 1256 "//absl/base:core_headers", 1257 "@com_google_googletest//:gtest_main", 1258 ], 1259) 1260 1261cc_library( 1262 name = "pow10_helper", 1263 testonly = True, 1264 srcs = ["internal/pow10_helper.cc"], 1265 hdrs = ["internal/pow10_helper.h"], 1266 linkopts = ABSL_DEFAULT_LINKOPTS, 1267 visibility = ["//visibility:private"], 1268 deps = ["//absl/base:config"], 1269) 1270 1271cc_test( 1272 name = "pow10_helper_test", 1273 srcs = ["internal/pow10_helper_test.cc"], 1274 copts = ABSL_TEST_COPTS, 1275 visibility = ["//visibility:private"], 1276 deps = [ 1277 ":pow10_helper", 1278 ":str_format", 1279 "@com_google_googletest//:gtest_main", 1280 ], 1281) 1282 1283cc_binary( 1284 name = "atod_manual_test", 1285 testonly = 1, 1286 srcs = ["atod_manual_test.cc"], 1287 copts = ABSL_TEST_COPTS, 1288 linkopts = ABSL_DEFAULT_LINKOPTS, 1289 visibility = ["//visibility:private"], 1290 deps = [ 1291 ":str_format", 1292 ":strings", 1293 "//absl/base", 1294 "//absl/types:optional", 1295 ], 1296) 1297