blob: f73a0bf9a36941db19ef5e1e3698f880efc2fb15 [file] [log] [blame]
"""Importers for various types of `Decl`s"""
load("//common:crubit_wrapper_macros_oss.bzl", "crubit_cc_test")
package(
default_applicable_licenses = ["//:license"],
default_visibility = ["//rs_bindings_from_cc:__pkg__"],
)
cc_library(
name = "class_template",
srcs = ["class_template.cc"],
hdrs = ["class_template.h"],
deps = [
"//rs_bindings_from_cc:cc_ir",
"//rs_bindings_from_cc:decl_importer",
"@llvm-project//clang:ast",
],
)
cc_library(
name = "cxx_record",
srcs = ["cxx_record.cc"],
hdrs = ["cxx_record.h"],
deps = [
"//common:annotation_reader",
"//lifetime_annotations:type_lifetimes",
"//rs_bindings_from_cc:ast_convert",
"//rs_bindings_from_cc:ast_util",
"//rs_bindings_from_cc:bazel_types",
"//rs_bindings_from_cc:cc_ir",
"//rs_bindings_from_cc:decl_importer",
"@abseil-cpp//absl/container:flat_hash_set",
"@abseil-cpp//absl/log",
"@abseil-cpp//absl/log:check",
"@abseil-cpp//absl/log:die_if_null",
"@abseil-cpp//absl/status",
"@abseil-cpp//absl/strings",
"@abseil-cpp//absl/strings:string_view",
"@llvm-project//clang:ast",
"@llvm-project//clang:basic",
"@llvm-project//clang:sema",
"@llvm-project//llvm:Support",
],
)
cc_library(
name = "enum",
srcs = ["enum.cc"],
hdrs = ["enum.h"],
deps = [
"//lifetime_annotations:type_lifetimes",
"//rs_bindings_from_cc:ast_util",
"//rs_bindings_from_cc:cc_ir",
"//rs_bindings_from_cc:decl_importer",
"@abseil-cpp//absl/algorithm:container",
"@abseil-cpp//absl/status:statusor",
"@abseil-cpp//absl/strings",
"@llvm-project//clang:ast",
"@llvm-project//clang:basic",
],
)
cc_library(
name = "friend",
srcs = ["friend.cc"],
hdrs = ["friend.h"],
deps = [
"//rs_bindings_from_cc:cc_ir",
"//rs_bindings_from_cc:decl_importer",
"@abseil-cpp//absl/log:check",
"@llvm-project//clang:ast",
"@llvm-project//clang:basic",
],
)
cc_library(
name = "function",
srcs = ["function.cc"],
hdrs = ["function.h"],
deps = [
"//lifetime_annotations",
"//lifetime_annotations:lifetime",
"//lifetime_annotations:lifetime_error",
"//lifetime_annotations:lifetime_symbol_table",
"//lifetime_annotations:type_lifetimes",
"//rs_bindings_from_cc:ast_util",
"//rs_bindings_from_cc:bazel_types",
"//rs_bindings_from_cc:cc_ir",
"//rs_bindings_from_cc:decl_importer",
"//rs_bindings_from_cc:recording_diagnostic_consumer",
"@abseil-cpp//absl/log:check",
"@abseil-cpp//absl/status:statusor",
"@abseil-cpp//absl/strings",
"@llvm-project//clang:ast",
"@llvm-project//clang:basic",
"@llvm-project//clang:sema",
"@llvm-project//llvm:Support",
],
)
cc_library(
name = "function_template",
srcs = ["function_template.cc"],
hdrs = ["function_template.h"],
deps = [
"//rs_bindings_from_cc:cc_ir",
"//rs_bindings_from_cc:decl_importer",
"@llvm-project//clang:ast",
],
)
cc_library(
name = "namespace",
srcs = ["namespace.cc"],
hdrs = ["namespace.h"],
deps = [
"//rs_bindings_from_cc:ast_util",
"//rs_bindings_from_cc:cc_ir",
"//rs_bindings_from_cc:decl_importer",
"@abseil-cpp//absl/log:check",
"@abseil-cpp//absl/strings",
"@llvm-project//clang:ast",
],
)
cc_library(
name = "type_alias",
srcs = ["type_alias.cc"],
hdrs = ["type_alias.h"],
deps = [
"//lifetime_annotations:type_lifetimes",
"//rs_bindings_from_cc:ast_util",
"//rs_bindings_from_cc:cc_ir",
"//rs_bindings_from_cc:decl_importer",
"@abseil-cpp//absl/log:check",
"@abseil-cpp//absl/strings",
"@llvm-project//clang:ast",
"@llvm-project//clang:basic",
],
)
cc_library(
name = "type_map_override",
srcs = ["type_map_override.cc"],
hdrs = ["type_map_override.h"],
deps = [
"//common:annotation_reader",
"//common:status_macros",
"//rs_bindings_from_cc:cc_ir",
"//rs_bindings_from_cc:decl_importer",
"@abseil-cpp//absl/status",
"@abseil-cpp//absl/status:statusor",
"@abseil-cpp//absl/strings",
"@llvm-project//clang:ast",
"@llvm-project//clang:basic",
"@llvm-project//llvm:Support",
],
)
crubit_cc_test(
name = "override_final_test",
srcs = ["override_final_test.cc"],
deps = ["@com_google_googletest//:gtest_main"],
)