BUILD 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  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 = [
  5. "//bazel/check_deps:__pkg__",
  6. "//executable_semantics:__subpackages__",
  7. ])
  8. cc_library(
  9. name = "ast",
  10. hdrs = ["ast.h"],
  11. deps = [
  12. ":declaration",
  13. ":library_name",
  14. ],
  15. )
  16. cc_library(
  17. name = "class_definition",
  18. hdrs = ["class_definition.h"],
  19. deps = [
  20. ":member",
  21. ":source_location",
  22. "//common:ostream",
  23. "@llvm-project//llvm:Support",
  24. ],
  25. )
  26. cc_library(
  27. name = "declaration",
  28. srcs = ["declaration.cpp"],
  29. hdrs = [
  30. "declaration.h",
  31. ],
  32. deps = [
  33. ":class_definition",
  34. ":member",
  35. ":pattern",
  36. ":source_location",
  37. ":statement",
  38. "//common:ostream",
  39. "//executable_semantics/common:nonnull",
  40. "@llvm-project//llvm:Support",
  41. ],
  42. )
  43. cc_library(
  44. name = "expression",
  45. srcs = ["expression.cpp"],
  46. hdrs = ["expression.h"],
  47. deps = [
  48. ":paren_contents",
  49. "//common:indirect_value",
  50. "//common:ostream",
  51. "//executable_semantics/common:arena",
  52. "//executable_semantics/common:error",
  53. "@llvm-project//llvm:Support",
  54. ],
  55. )
  56. cc_test(
  57. name = "expression_test",
  58. srcs = ["expression_test.cpp"],
  59. deps = [
  60. ":expression",
  61. ":paren_contents",
  62. "@com_google_googletest//:gtest_main",
  63. ],
  64. )
  65. cc_library(
  66. name = "member",
  67. srcs = ["member.cpp"],
  68. hdrs = ["member.h"],
  69. deps = [
  70. ":pattern",
  71. ":source_location",
  72. "//common:ostream",
  73. ],
  74. )
  75. cc_library(
  76. name = "library_name",
  77. hdrs = ["library_name.h"],
  78. )
  79. cc_library(
  80. name = "paren_contents",
  81. hdrs = ["paren_contents.h"],
  82. deps = [
  83. ":source_location",
  84. "//executable_semantics/common:error",
  85. ],
  86. )
  87. cc_library(
  88. name = "pattern",
  89. srcs = ["pattern.cpp"],
  90. hdrs = ["pattern.h"],
  91. deps = [
  92. ":expression",
  93. ":source_location",
  94. "//common:ostream",
  95. "//executable_semantics/common:arena",
  96. "//executable_semantics/common:error",
  97. "@llvm-project//llvm:Support",
  98. ],
  99. )
  100. cc_test(
  101. name = "pattern_test",
  102. srcs = ["pattern_test.cpp"],
  103. deps = [
  104. ":paren_contents",
  105. ":pattern",
  106. "@com_google_googletest//:gtest_main",
  107. "@llvm-project//llvm:Support",
  108. ],
  109. )
  110. cc_library(
  111. name = "source_location",
  112. hdrs = ["source_location.h"],
  113. deps = ["//common:ostream"],
  114. )
  115. cc_library(
  116. name = "statement",
  117. srcs = ["statement.cpp"],
  118. hdrs = ["statement.h"],
  119. deps = [
  120. ":expression",
  121. ":pattern",
  122. ":source_location",
  123. "//common:check",
  124. "//common:ostream",
  125. "//executable_semantics/common:arena",
  126. "@llvm-project//llvm:Support",
  127. ],
  128. )