Move internal runtime support headers to an `internal` subdirectory.
In the end, simplest is best.
PiperOrigin-RevId: 502689484
diff --git a/rs_bindings_from_cc/BUILD b/rs_bindings_from_cc/BUILD
index f236164..36c8756 100644
--- a/rs_bindings_from_cc/BUILD
+++ b/rs_bindings_from_cc/BUILD
@@ -43,7 +43,7 @@
deps_for_bindings(
name = "deps_for_bindings",
deps_for_generated_cc_file = [
- "//support:rs_api_impl_support",
+ "//support/internal:rs_api_impl_support",
],
deps_for_generated_rs_file = [
# Required for struct layout assertions added to the generated
diff --git a/rs_bindings_from_cc/src_code_gen.rs b/rs_bindings_from_cc/src_code_gen.rs
index ce64ab6..1f4de6d 100644
--- a/rs_bindings_from_cc/src_code_gen.rs
+++ b/rs_bindings_from_cc/src_code_gen.rs
@@ -3964,7 +3964,7 @@
if ir.records().next().is_some() {
internal_includes.insert(CcInclude::cstddef());
};
- for crubit_header in ["cxx20_backports.h", "offsetof.h"] {
+ for crubit_header in ["internal/cxx20_backports.h", "internal/offsetof.h"] {
internal_includes.insert(CcInclude::user_header(
format!("{crubit_support_path}/{crubit_header}").into(),
));
diff --git a/rs_bindings_from_cc/test/golden/bitfields_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/bitfields_rs_api_impl.cc
index 542e5ba..7165dc5 100644
--- a/rs_bindings_from_cc/test/golden/bitfields_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/bitfields_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/bitfields.h"
diff --git a/rs_bindings_from_cc/test/golden/clang_attrs_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/clang_attrs_rs_api_impl.cc
index e998805..b509508 100644
--- a/rs_bindings_from_cc/test/golden/clang_attrs_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/clang_attrs_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/clang_attrs.h"
diff --git a/rs_bindings_from_cc/test/golden/comment_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/comment_rs_api_impl.cc
index 090e2f4..10fed4b 100644
--- a/rs_bindings_from_cc/test/golden/comment_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/comment_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/comment.h"
diff --git a/rs_bindings_from_cc/test/golden/doc_comment_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/doc_comment_rs_api_impl.cc
index 2823744..29a445c 100644
--- a/rs_bindings_from_cc/test/golden/doc_comment_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/doc_comment_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/doc_comment.h"
diff --git a/rs_bindings_from_cc/test/golden/escaping_keywords_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/escaping_keywords_rs_api_impl.cc
index be91464..4a086a6 100644
--- a/rs_bindings_from_cc/test/golden/escaping_keywords_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/escaping_keywords_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/escaping_keywords.h"
diff --git a/rs_bindings_from_cc/test/golden/friend_functions_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/friend_functions_rs_api_impl.cc
index 281f5a3..46fc609 100644
--- a/rs_bindings_from_cc/test/golden/friend_functions_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/friend_functions_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/friend_functions.h"
diff --git a/rs_bindings_from_cc/test/golden/inheritance_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/inheritance_rs_api_impl.cc
index 5f7cff4..aaa0f13 100644
--- a/rs_bindings_from_cc/test/golden/inheritance_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/inheritance_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/inheritance.h"
diff --git a/rs_bindings_from_cc/test/golden/item_order_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/item_order_rs_api_impl.cc
index cd30a59..90df916 100644
--- a/rs_bindings_from_cc/test/golden/item_order_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/item_order_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/item_order.h"
diff --git a/rs_bindings_from_cc/test/golden/lifetimes_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/lifetimes_rs_api_impl.cc
index 1546b19..892b44f 100644
--- a/rs_bindings_from_cc/test/golden/lifetimes_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/lifetimes_rs_api_impl.cc
@@ -7,8 +7,8 @@
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/lifetimes.h"
diff --git a/rs_bindings_from_cc/test/golden/method_qualifiers_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/method_qualifiers_rs_api_impl.cc
index e87584b..a27db28 100644
--- a/rs_bindings_from_cc/test/golden/method_qualifiers_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/method_qualifiers_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/method_qualifiers.h"
diff --git a/rs_bindings_from_cc/test/golden/namespace_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/namespace_rs_api_impl.cc
index 3a6c706..0db9bff 100644
--- a/rs_bindings_from_cc/test/golden/namespace_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/namespace_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/namespace.h"
diff --git a/rs_bindings_from_cc/test/golden/no_elided_lifetimes_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/no_elided_lifetimes_rs_api_impl.cc
index 50246fd..7ca63d9 100644
--- a/rs_bindings_from_cc/test/golden/no_elided_lifetimes_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/no_elided_lifetimes_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/no_elided_lifetimes.h"
diff --git a/rs_bindings_from_cc/test/golden/no_unique_address_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/no_unique_address_rs_api_impl.cc
index bcf3f07..e3cdbcc 100644
--- a/rs_bindings_from_cc/test/golden/no_unique_address_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/no_unique_address_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/no_unique_address.h"
diff --git a/rs_bindings_from_cc/test/golden/nontrivial_type_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/nontrivial_type_rs_api_impl.cc
index 31bbdad..3546d22 100644
--- a/rs_bindings_from_cc/test/golden/nontrivial_type_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/nontrivial_type_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/nontrivial_type.h"
diff --git a/rs_bindings_from_cc/test/golden/operators_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/operators_rs_api_impl.cc
index 9a08082..905413a 100644
--- a/rs_bindings_from_cc/test/golden/operators_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/operators_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/operators.h"
diff --git a/rs_bindings_from_cc/test/golden/overloads_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/overloads_rs_api_impl.cc
index 036d073..53aa181 100644
--- a/rs_bindings_from_cc/test/golden/overloads_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/overloads_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/overloads.h"
diff --git a/rs_bindings_from_cc/test/golden/polymorphic_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/polymorphic_rs_api_impl.cc
index 49c402e..e3b4a6a 100644
--- a/rs_bindings_from_cc/test/golden/polymorphic_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/polymorphic_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/polymorphic.h"
diff --git a/rs_bindings_from_cc/test/golden/private_members_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/private_members_rs_api_impl.cc
index 6ea2f7e..4d5fd58 100644
--- a/rs_bindings_from_cc/test/golden/private_members_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/private_members_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/private_members.h"
diff --git a/rs_bindings_from_cc/test/golden/private_method_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/private_method_rs_api_impl.cc
index b842b4d..0201bf4 100644
--- a/rs_bindings_from_cc/test/golden/private_method_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/private_method_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/private_method.h"
diff --git a/rs_bindings_from_cc/test/golden/static_methods_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/static_methods_rs_api_impl.cc
index c5d78d7..459a47e 100644
--- a/rs_bindings_from_cc/test/golden/static_methods_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/static_methods_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/static_methods.h"
diff --git a/rs_bindings_from_cc/test/golden/templates_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/templates_rs_api_impl.cc
index 3a51c18..4edf4e3 100644
--- a/rs_bindings_from_cc/test/golden/templates_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/templates_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/templates.h"
diff --git a/rs_bindings_from_cc/test/golden/templates_source_order_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/templates_source_order_rs_api_impl.cc
index 711b17c..9501da4 100644
--- a/rs_bindings_from_cc/test/golden/templates_source_order_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/templates_source_order_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/templates_source_order.h"
diff --git a/rs_bindings_from_cc/test/golden/trivial_type_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/trivial_type_rs_api_impl.cc
index 10ab546..70eebf1 100644
--- a/rs_bindings_from_cc/test/golden/trivial_type_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/trivial_type_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/trivial_type.h"
diff --git a/rs_bindings_from_cc/test/golden/typedefs_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/typedefs_rs_api_impl.cc
index afc15fc..ca4f74f 100644
--- a/rs_bindings_from_cc/test/golden/typedefs_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/typedefs_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/typedefs.h"
diff --git a/rs_bindings_from_cc/test/golden/types_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/types_rs_api_impl.cc
index 661a1c4..4c4ac3a 100644
--- a/rs_bindings_from_cc/test/golden/types_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/types_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/types.h"
diff --git a/rs_bindings_from_cc/test/golden/unions_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/unions_rs_api_impl.cc
index 58a8bbf..b11da7a 100644
--- a/rs_bindings_from_cc/test/golden/unions_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/unions_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/unions.h"
diff --git a/rs_bindings_from_cc/test/golden/unsupported_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/unsupported_rs_api_impl.cc
index 14fc167..8de19e8 100644
--- a/rs_bindings_from_cc/test/golden/unsupported_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/unsupported_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/unsupported.h"
diff --git a/rs_bindings_from_cc/test/golden/user_of_base_class_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/user_of_base_class_rs_api_impl.cc
index 0d7c8a1..902f739 100644
--- a/rs_bindings_from_cc/test/golden/user_of_base_class_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/user_of_base_class_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/user_of_base_class.h"
diff --git a/rs_bindings_from_cc/test/golden/user_of_imported_type_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/user_of_imported_type_rs_api_impl.cc
index 868fea8..2255542 100644
--- a/rs_bindings_from_cc/test/golden/user_of_imported_type_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/user_of_imported_type_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/user_of_imported_type.h"
diff --git a/rs_bindings_from_cc/test/golden/user_of_unsupported_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/user_of_unsupported_rs_api_impl.cc
index 062534f..f11da7c 100644
--- a/rs_bindings_from_cc/test/golden/user_of_unsupported_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/user_of_unsupported_rs_api_impl.cc
@@ -8,8 +8,8 @@
#include <cstddef>
#include <memory>
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/user_of_unsupported.h"
diff --git a/support/BUILD b/support/BUILD
index 2cf6a6c..a276aca 100644
--- a/support/BUILD
+++ b/support/BUILD
@@ -3,31 +3,6 @@
licenses(["notice"])
-cc_library(
- name = "rs_api_impl_support",
- hdrs = [
- "cxx20_backports.h",
- "offsetof.h",
- ],
- visibility = ["//:__subpackages__"],
- # It is important to be thoughtful when adding new dependencies for
- # `rs_api_impl_support` (and possibly other targets in this BUILD file).
- # Even simple dependencies like `absl` may be tricky in practice, because
- # `rs_api_impl_support` may be developed and tested with one set of
- # absl/base/options.h which may be different from absl/base/options.h
- # adopted by users of Crubit.
- deps = [],
-)
-
-cc_test(
- name = "offsetof_test",
- srcs = ["offsetof_test.cc"],
- deps = [
- ":rs_api_impl_support",
- "@com_google_googletest//:gtest_main",
- ],
-)
-
rust_library(
name = "ctor",
srcs = ["ctor.rs"],
diff --git a/support/internal/BUILD b/support/internal/BUILD
new file mode 100644
index 0000000..3030310
--- /dev/null
+++ b/support/internal/BUILD
@@ -0,0 +1,24 @@
+cc_library(
+ name = "rs_api_impl_support",
+ hdrs = [
+ "cxx20_backports.h",
+ "offsetof.h",
+ ],
+ visibility = ["//:__subpackages__"],
+ # It is important to be thoughtful when adding new dependencies for
+ # `rs_api_impl_support` (and possibly other targets in this BUILD file).
+ # Even simple dependencies like `absl` may be tricky in practice, because
+ # `rs_api_impl_support` may be developed and tested with one set of
+ # absl/base/options.h which may be different from absl/base/options.h
+ # adopted by users of Crubit.
+ deps = [],
+)
+
+cc_test(
+ name = "offsetof_test",
+ srcs = ["offsetof_test.cc"],
+ deps = [
+ ":rs_api_impl_support",
+ "@com_google_googletest//:gtest_main",
+ ],
+)
diff --git a/support/internal/README.md b/support/internal/README.md
new file mode 100644
index 0000000..965e61a
--- /dev/null
+++ b/support/internal/README.md
@@ -0,0 +1,3 @@
+# Internal Crubit runtime support libraries
+
+These libraries are only for use by code generated by Crubit.
diff --git a/support/cxx20_backports.h b/support/internal/cxx20_backports.h
similarity index 100%
rename from support/cxx20_backports.h
rename to support/internal/cxx20_backports.h
diff --git a/support/offsetof.h b/support/internal/offsetof.h
similarity index 100%
rename from support/offsetof.h
rename to support/internal/offsetof.h
diff --git a/support/offsetof_test.cc b/support/internal/offsetof_test.cc
similarity index 94%
rename from support/offsetof_test.cc
rename to support/internal/offsetof_test.cc
index a0e03d9..c746025 100644
--- a/support/offsetof_test.cc
+++ b/support/internal/offsetof_test.cc
@@ -2,7 +2,7 @@
// Exceptions. See /LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-#include "support/offsetof.h"
+#include "support/internal/offsetof.h"
#include <stdint.h>