# Copyright 2018 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//third_party/abseil-cpp/absl.gni")

absl_source_set("type_traits") {
  public = [ "type_traits.h" ]
  deps = [ "//third_party/abseil-cpp/absl/base:config" ]
}

absl_source_set("type_traits_test") {
  testonly = true
  sources = [ "type_traits_test.cc" ]
  if (is_clang) {
    cflags_cc = [ "-Wno-unused-private-field" ]
  }
  deps = [
    ":type_traits",
    "//third_party/googletest:gtest",
  ]
}
