BUILD 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. # Part of the Carbon Language project, under the Apache License v2.0 with LLVM
  2. # Exceptions. See /LICENSE for license information.
  3. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  4. package(default_visibility = ["//visibility:public"])
  5. cc_binary(
  6. name = "cpp_refactoring",
  7. srcs = ["main.cpp"],
  8. deps = [
  9. ":fn_inserter",
  10. ":for_range",
  11. ":var_decl",
  12. "@llvm-project//clang:tooling",
  13. ],
  14. )
  15. cc_library(
  16. name = "matcher",
  17. srcs = ["matcher.cpp"],
  18. hdrs = [
  19. "matcher.h",
  20. "matcher_manager.h",
  21. ],
  22. deps = [
  23. "@llvm-project//clang:ast_matchers",
  24. "@llvm-project//clang:tooling_core",
  25. ],
  26. )
  27. cc_library(
  28. name = "matcher_test_base",
  29. testonly = 1,
  30. hdrs = ["matcher_test_base.h"],
  31. deps = [
  32. ":matcher",
  33. "@com_google_googletest//:gtest",
  34. "@llvm-project//clang:ast_matchers",
  35. "@llvm-project//clang:tooling",
  36. ],
  37. )
  38. # Individual matchers
  39. cc_library(
  40. name = "fn_inserter",
  41. srcs = ["fn_inserter.cpp"],
  42. hdrs = ["fn_inserter.h"],
  43. deps = [":matcher"],
  44. )
  45. cc_test(
  46. name = "fn_inserter_test",
  47. srcs = ["fn_inserter_test.cpp"],
  48. deps = [
  49. ":fn_inserter",
  50. ":matcher_test_base",
  51. "@com_google_googletest//:gtest_main",
  52. "@llvm-project//clang:tooling",
  53. ],
  54. )
  55. cc_library(
  56. name = "for_range",
  57. srcs = ["for_range.cpp"],
  58. hdrs = ["for_range.h"],
  59. deps = [":matcher"],
  60. )
  61. cc_test(
  62. name = "for_range_test",
  63. srcs = ["for_range_test.cpp"],
  64. deps = [
  65. ":for_range",
  66. ":matcher_test_base",
  67. "@com_google_googletest//:gtest_main",
  68. "@llvm-project//clang:tooling",
  69. ],
  70. )
  71. cc_library(
  72. name = "var_decl",
  73. srcs = ["var_decl.cpp"],
  74. hdrs = ["var_decl.h"],
  75. deps = [":matcher"],
  76. )
  77. cc_test(
  78. name = "var_decl_test",
  79. srcs = ["var_decl_test.cpp"],
  80. deps = [
  81. ":matcher_test_base",
  82. ":var_decl",
  83. "@com_google_googletest//:gtest_main",
  84. "@llvm-project//clang:tooling",
  85. ],
  86. )