1# Copyright 2020 The Pigweed Authors 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); you may not 4# use this file except in compliance with the License. You may obtain a copy of 5# the License at 6# 7# https://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12# License for the specific language governing permissions and limitations under 13# the License. 14 15load( 16 "//pw_build:pigweed.bzl", 17 "pw_cc_library", 18 "pw_cc_test", 19) 20 21package(default_visibility = ["//visibility:public"]) 22 23licenses(["notice"]) # Apache License 2.0 24 25pw_cc_library( 26 name = "pw_containers", 27 deps = [ 28 ":flat_map", 29 ":vector", 30 ":intrusive_list", 31 ], 32) 33 34pw_cc_library( 35 name = "intrusive_list", 36 deps = [ "//pw_assert" ], 37 srcs = [ 38 "intrusive_list.cc", 39 "public/pw_containers/internal/intrusive_list_impl.h", 40 ], 41 hdrs = [ 42 "public/pw_containers/intrusive_list.h", 43 ], 44 includes = ["public"], 45) 46 47pw_cc_library( 48 name = "vector", 49 hdrs = [ 50 "public/pw_containers/vector.h", 51 ], 52 includes = ["public"], 53) 54 55pw_cc_library( 56 name = "flat_map", 57 hdrs = [ 58 "public/pw_containers/flat_map.h", 59 ], 60 includes = ["public"], 61) 62 63pw_cc_test( 64 name = "flat_map_test", 65 srcs = [ 66 "flat_map_test.cc", 67 ], 68 deps = [ 69 ":pw_containers", 70 "//pw_unit_test", 71 ], 72) 73 74pw_cc_test( 75 name = "vector_test", 76 srcs = [ 77 "vector_test.cc", 78 ], 79 deps = [ 80 ":pw_containers", 81 "//pw_unit_test", 82 ], 83) 84 85pw_cc_test( 86 name = "intrusive_list_test", 87 srcs = [ 88 "intrusive_list_test.cc", 89 ], 90 deps = [ 91 ":intrusive_list", 92 "//pw_unit_test", 93 ], 94) 95