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