| # 'text' contains classes for structural representations of text/code, |
| # such as token streams, syntax trees. |
| |
| licenses(["notice"]) |
| |
| package( |
| # library layering: common/ packages that may NOT depend on this one: |
| # strings/ |
| # util/ |
| default_visibility = [ |
| "//common/analysis:__subpackages__", |
| "//common/formatting:__subpackages__", |
| "//common/lexer:__subpackages__", |
| "//common/parser:__subpackages__", |
| "//verilog:__subpackages__", |
| ], |
| ) |
| |
| cc_library( |
| name = "token_info", |
| srcs = ["token_info.cc"], |
| hdrs = ["token_info.h"], |
| deps = [ |
| ":constants", |
| "//common/strings:rebase", |
| "//common/util:iterator_range", |
| "//common/util:logging", |
| "//common/util:range", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_library( |
| name = "token_info_json", |
| srcs = ["token_info_json.cc"], |
| hdrs = ["token_info_json.h"], |
| deps = [ |
| ":token_info", |
| "@jsonhpp", |
| ], |
| ) |
| |
| cc_library( |
| name = "token_info_test_util", |
| testonly = 1, |
| srcs = ["token_info_test_util.cc"], |
| hdrs = ["token_info_test_util.h"], |
| deps = [ |
| ":token_info", |
| "//common/util:logging", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_library( |
| name = "token_stream_view", |
| srcs = ["token_stream_view.cc"], |
| hdrs = ["token_stream_view.h"], |
| deps = [ |
| ":token_info", |
| "//common/util:iterator_range", |
| ], |
| ) |
| |
| cc_library( |
| name = "symbol", |
| srcs = ["symbol.cc"], |
| hdrs = ["symbol.h"], |
| deps = [ |
| ":token_info", |
| ":visitors", |
| ], |
| ) |
| |
| cc_library( |
| name = "concrete_syntax_leaf", |
| srcs = ["concrete_syntax_leaf.cc"], |
| hdrs = ["concrete_syntax_leaf.h"], |
| deps = [ |
| ":concrete_syntax_tree", |
| ":symbol", |
| ":token_info", |
| ":tree_compare", |
| ":visitors", |
| "//common/util:logging", |
| ], |
| ) |
| |
| cc_test( |
| name = "concrete_syntax_leaf_test", |
| srcs = ["concrete_syntax_leaf_test.cc"], |
| deps = [ |
| ":concrete_syntax_leaf", |
| ":token_info", |
| "@com_google_absl//absl/strings", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_library( |
| name = "concrete_syntax_tree", |
| srcs = ["concrete_syntax_tree.cc"], |
| hdrs = ["concrete_syntax_tree.h"], |
| deps = [ |
| ":constants", |
| ":symbol", |
| ":tree_compare", |
| ":visitors", |
| "//common/util:casts", |
| "//common/util:logging", |
| ], |
| ) |
| |
| cc_library( |
| name = "config_utils", |
| srcs = ["config_utils.cc"], |
| hdrs = ["config_utils.h"], |
| deps = [ |
| "//common/util:logging", |
| "@com_google_absl//absl/status", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_test( |
| name = "config_utils_test", |
| srcs = ["config_utils_test.cc"], |
| deps = [ |
| ":config_utils", |
| "@com_google_absl//absl/status", |
| "@com_google_absl//absl/strings", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_library( |
| name = "visitors", |
| hdrs = ["visitors.h"], |
| ) |
| |
| cc_library( |
| name = "syntax_tree_context", |
| hdrs = ["syntax_tree_context.h"], |
| deps = [ |
| ":concrete_syntax_tree", |
| "//common/util:auto_pop_stack", |
| "//common/util:iterator_adaptors", |
| "//common/util:logging", |
| ], |
| ) |
| |
| cc_library( |
| name = "tree_compare", |
| srcs = ["tree_compare.cc"], |
| hdrs = ["tree_compare.h"], |
| deps = [ |
| ":symbol", |
| ":token_info", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_test( |
| name = "tree_compare_test", |
| srcs = ["tree_compare_test.cc"], |
| deps = [ |
| ":concrete_syntax_tree", |
| ":tree_builder_test_util", |
| ":tree_compare", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_library( |
| name = "tree_context_visitor", |
| srcs = ["tree_context_visitor.cc"], |
| hdrs = ["tree_context_visitor.h"], |
| deps = [ |
| ":syntax_tree_context", |
| ":visitors", |
| "//common/strings:display_utils", |
| "//common/util:logging", |
| ], |
| ) |
| |
| cc_test( |
| name = "tree_context_visitor_test", |
| srcs = ["tree_context_visitor_test.cc"], |
| deps = [ |
| ":tree_builder_test_util", |
| ":tree_context_visitor", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_library( |
| name = "tree_utils", |
| srcs = ["tree_utils.cc"], |
| hdrs = ["tree_utils.h"], |
| deps = [ |
| ":concrete_syntax_leaf", |
| ":concrete_syntax_tree", |
| ":symbol", |
| ":token_info", |
| ":visitors", |
| "//common/util:iterator_adaptors", |
| "//common/util:logging", |
| "//common/util:spacer", |
| "//common/util:type_traits", |
| "//common/util:value_saver", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_library( |
| name = "tree_builder_test_util", |
| testonly = 1, |
| srcs = ["tree_builder_test_util.cc"], |
| hdrs = ["tree_builder_test_util.h"], |
| deps = [ |
| ":concrete_syntax_leaf", |
| ":concrete_syntax_tree", |
| ":symbol", |
| ":tree_utils", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_test( |
| name = "tree_builder_test_util_test", |
| srcs = ["tree_builder_test_util_test.cc"], |
| deps = [ |
| ":tree_builder_test_util", |
| ":tree_utils", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_library( |
| name = "text_structure", |
| srcs = ["text_structure.cc"], |
| hdrs = ["text_structure.h"], |
| deps = [ |
| ":concrete_syntax_leaf", |
| ":concrete_syntax_tree", |
| ":symbol", |
| ":token_info", |
| ":token_stream_view", |
| ":tree_utils", |
| "//common/strings:line_column_map", |
| "//common/strings:mem_block", |
| "//common/util:iterator_range", |
| "//common/util:logging", |
| "//common/util:range", |
| "//common/util:status_macros", |
| "@com_google_absl//absl/status", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_library( |
| name = "text_structure_test_utils", |
| testonly = 1, |
| srcs = ["text_structure_test_utils.cc"], |
| hdrs = ["text_structure_test_utils.h"], |
| deps = [ |
| ":concrete_syntax_tree", |
| ":text_structure", |
| ":token_info", |
| ":token_stream_view", |
| ":tree_builder_test_util", |
| "//common/util:logging", |
| "@com_google_absl//absl/memory", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_library( |
| name = "macro_definition", |
| srcs = ["macro_definition.cc"], |
| hdrs = ["macro_definition.h"], |
| deps = [ |
| ":token_info", |
| "//common/util:container_util", |
| "@com_google_absl//absl/status", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_library( |
| name = "parser_verifier", |
| srcs = ["parser_verifier.cc"], |
| hdrs = ["parser_verifier.h"], |
| deps = [ |
| ":concrete_syntax_leaf", |
| ":concrete_syntax_tree", |
| ":symbol", |
| ":token_info", |
| ":token_stream_view", |
| ":tree_compare", |
| ":visitors", |
| ], |
| ) |
| |
| cc_library( |
| name = "constants", |
| hdrs = ["constants.h"], |
| # TODO(fangism): minimize direct exposure of constants |
| visibility = [ |
| "//common/formatting:__pkg__", |
| "//common/lexer:__pkg__", |
| "//verilog/CST:__pkg__", |
| "//verilog/analysis:__pkg__", |
| "//verilog/analysis/checkers:__pkg__", |
| "//verilog/formatting:__pkg__", |
| "//verilog/parser:__pkg__", |
| ], |
| ) |
| |
| cc_test( |
| name = "tree_utils_test", |
| srcs = ["tree_utils_test.cc"], |
| deps = [ |
| ":concrete_syntax_leaf", |
| ":concrete_syntax_tree", |
| ":symbol", |
| ":token_info", |
| ":tree_builder_test_util", |
| ":tree_compare", |
| ":tree_utils", |
| "//common/util:logging", |
| "//common/util:range", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "concrete_syntax_tree_test", |
| srcs = ["concrete_syntax_tree_test.cc"], |
| deps = [ |
| ":concrete_syntax_leaf", |
| ":concrete_syntax_tree", |
| ":symbol", |
| ":tree_builder_test_util", |
| ":tree_compare", |
| "//common/util:logging", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "token_info_test", |
| srcs = ["token_info_test.cc"], |
| deps = [ |
| ":constants", |
| ":token_info", |
| "//common/util:range", |
| "@com_google_absl//absl/base:core_headers", |
| "@com_google_absl//absl/strings", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "token_info_json_test", |
| srcs = ["token_info_json_test.cc"], |
| deps = [ |
| ":constants", |
| ":token_info", |
| ":token_info_json", |
| "@com_google_absl//absl/strings", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "token_info_test_util_test", |
| srcs = ["token_info_test_util_test.cc"], |
| deps = [ |
| ":token_info", |
| ":token_info_test_util", |
| "//common/util:logging", |
| "@com_google_absl//absl/strings", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "token_stream_view_test", |
| srcs = ["token_stream_view_test.cc"], |
| deps = [ |
| ":text_structure", |
| ":text_structure_test_utils", |
| ":token_info", |
| ":token_stream_view", |
| "//common/util:iterator_range", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "syntax_tree_context_test", |
| srcs = ["syntax_tree_context_test.cc"], |
| deps = [ |
| ":concrete_syntax_tree", |
| ":syntax_tree_context", |
| "//common/util:iterator_range", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "text_structure_test", |
| srcs = ["text_structure_test.cc"], |
| deps = [ |
| ":concrete_syntax_tree", |
| ":symbol", |
| ":text_structure", |
| ":text_structure_test_utils", |
| ":token_info", |
| ":token_stream_view", |
| ":tree_builder_test_util", |
| ":tree_compare", |
| "//common/strings:line_column_map", |
| "//common/util:iterator_range", |
| "//common/util:logging", |
| "//common/util:range", |
| "//common/util:value_saver", |
| "@com_google_absl//absl/memory", |
| "@com_google_absl//absl/status", |
| "@com_google_absl//absl/strings", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "macro_definition_test", |
| srcs = ["macro_definition_test.cc"], |
| deps = [ |
| ":macro_definition", |
| ":token_info", |
| "//common/util:container_util", |
| "@com_google_absl//absl/status", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "parser_verifier_test", |
| srcs = ["parser_verifier_test.cc"], |
| deps = [ |
| ":constants", |
| ":parser_verifier", |
| ":token_info", |
| ":token_stream_view", |
| ":tree_builder_test_util", |
| "@com_google_absl//absl/strings", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |