BUILD 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  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. load("@rules_cc//cc:defs.bzl", "cc_library", "cc_test")
  5. load("//bazel/fuzzing:rules.bzl", "cc_fuzz_test")
  6. package(default_visibility = ["//visibility:public"])
  7. cc_library(
  8. name = "token_kind",
  9. srcs = ["token_kind.cpp"],
  10. hdrs = ["token_kind.h"],
  11. textual_hdrs = ["token_registry.def"],
  12. deps = ["@llvm-project//llvm:Support"],
  13. )
  14. cc_test(
  15. name = "token_kind_test",
  16. srcs = ["token_kind_test.cpp"],
  17. deps = [
  18. ":token_kind",
  19. "@llvm-project//llvm:Support",
  20. "@llvm-project//llvm:gtest",
  21. "@llvm-project//llvm:gtest_main",
  22. ],
  23. )
  24. cc_library(
  25. name = "numeric_literal",
  26. srcs = ["numeric_literal.cpp"],
  27. hdrs = ["numeric_literal.h"],
  28. deps = [
  29. "//diagnostics:diagnostic_emitter",
  30. "@llvm-project//llvm:Support",
  31. ],
  32. )
  33. cc_test(
  34. name = "numeric_literal_test",
  35. srcs = ["numeric_literal_test.cpp"],
  36. deps = [
  37. ":numeric_literal",
  38. "//diagnostics:diagnostic_emitter",
  39. "@llvm-project//llvm:Support",
  40. "@llvm-project//llvm:gmock",
  41. "@llvm-project//llvm:gtest",
  42. "@llvm-project//llvm:gtest_main",
  43. ],
  44. )
  45. cc_library(
  46. name = "tokenized_buffer",
  47. srcs = ["tokenized_buffer.cpp"],
  48. hdrs = ["tokenized_buffer.h"],
  49. deps = [
  50. ":token_kind",
  51. ":numeric_literal",
  52. "//diagnostics:diagnostic_emitter",
  53. "//source:source_buffer",
  54. "@llvm-project//llvm:Support",
  55. ],
  56. )
  57. cc_library(
  58. name = "tokenized_buffer_test_helpers",
  59. testonly = 1,
  60. hdrs = ["tokenized_buffer_test_helpers.h"],
  61. deps = [
  62. ":tokenized_buffer",
  63. "@llvm-project//llvm:Support",
  64. "@llvm-project//llvm:gmock",
  65. ],
  66. )
  67. cc_test(
  68. name = "tokenized_buffer_test",
  69. srcs = ["tokenized_buffer_test.cpp"],
  70. deps = [
  71. ":tokenized_buffer",
  72. ":tokenized_buffer_test_helpers",
  73. "//diagnostics:diagnostic_emitter",
  74. "@llvm-project//llvm:Support",
  75. "@llvm-project//llvm:gmock",
  76. "@llvm-project//llvm:gtest",
  77. "@llvm-project//llvm:gtest_main",
  78. ],
  79. )
  80. cc_fuzz_test(
  81. name = "tokenized_buffer_fuzzer",
  82. srcs = ["tokenized_buffer_fuzzer.cpp"],
  83. corpus = glob(["fuzzer_corpus/*"]),
  84. deps = [
  85. ":tokenized_buffer",
  86. "//diagnostics:diagnostic_emitter",
  87. "@llvm-project//llvm:Support",
  88. ],
  89. )