• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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#
16
17load(
18    "//absl:copts/configure_copts.bzl",
19    "ABSL_DEFAULT_COPTS",
20    "ABSL_DEFAULT_LINKOPTS",
21    "ABSL_TEST_COPTS",
22)
23
24package(
25    default_visibility = ["//visibility:public"],
26    features = [
27        "header_modules",
28        "layering_check",
29        "parse_headers",
30    ],
31)
32
33licenses(["notice"])
34
35cc_library(
36    name = "algorithm",
37    hdrs = ["algorithm.h"],
38    copts = ABSL_DEFAULT_COPTS,
39    linkopts = ABSL_DEFAULT_LINKOPTS,
40    deps = [
41        "//absl/base:config",
42    ],
43)
44
45cc_test(
46    name = "algorithm_test",
47    size = "small",
48    srcs = ["algorithm_test.cc"],
49    copts = ABSL_TEST_COPTS,
50    linkopts = ABSL_DEFAULT_LINKOPTS,
51    deps = [
52        ":algorithm",
53        "//absl/base:config",
54        "@com_google_googletest//:gtest",
55        "@com_google_googletest//:gtest_main",
56    ],
57)
58
59cc_library(
60    name = "container",
61    hdrs = [
62        "container.h",
63    ],
64    copts = ABSL_DEFAULT_COPTS,
65    linkopts = ABSL_DEFAULT_LINKOPTS,
66    deps = [
67        ":algorithm",
68        "//absl/base:core_headers",
69        "//absl/meta:type_traits",
70    ],
71)
72
73cc_test(
74    name = "container_test",
75    srcs = ["container_test.cc"],
76    copts = ABSL_TEST_COPTS,
77    linkopts = ABSL_DEFAULT_LINKOPTS,
78    deps = [
79        ":container",
80        "//absl/base",
81        "//absl/base:core_headers",
82        "//absl/memory",
83        "//absl/types:span",
84        "@com_google_googletest//:gtest",
85        "@com_google_googletest//:gtest_main",
86    ],
87)
88