BUILD 3.2 KB

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