# Copyright 2019 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Emboss front end
#
# The code in this directory translates an Emboss definition file (.emb) to an
# intermediate representation (IR).  The IR is passed to back end code
# generators to generate code in various languages.

load("@rules_python//python:py_binary.bzl", "py_binary")
load("@rules_python//python:py_library.bzl", "py_library")
load("@rules_python//python:py_test.bzl", "py_test")

package(
    default_visibility = [
        "//:__subpackages__",
    ],
)

py_library(
    name = "tokenizer",
    srcs = ["tokenizer.py"],
    deps = [
        "//compiler/util:error",
        "//compiler/util:parser_types",
    ],
)

py_test(
    name = "tokenizer_test",
    srcs = ["tokenizer_test.py"],
    python_version = "PY3",
    deps = [
        ":tokenizer",
        "//compiler/util:error",
        "//compiler/util:parser_types",
    ],
)

py_library(
    name = "lr1",
    srcs = ["lr1.py"],
    deps = [
        "//compiler/util:parser_types",
    ],
)

py_test(
    name = "lr1_test",
    srcs = ["lr1_test.py"],
    python_version = "PY3",
    deps = [
        ":lr1",
        "//compiler/util:parser_types",
    ],
)

py_library(
    name = "module_ir",
    srcs = ["module_ir.py"],
    deps = [
        "//compiler/util:ir_pb2",
        "//compiler/util:name_conversion",
        "//compiler/util:parser_types",
    ],
)

py_test(
    name = "module_ir_test",
    srcs = ["module_ir_test.py"],
    data = [
        "//testdata:golden_files",
    ],
    python_version = "PY3",
    deps = [
        ":module_ir",
        ":parser",
        ":tokenizer",
        "//compiler/util:ir_pb2",
        "//compiler/util:test_util",
    ],
)

py_library(
    name = "parser",
    srcs = ["parser.py"],
    data = [
        "error_examples",
    ],
    deps = [
        ":lr1",
        ":module_ir",
        ":tokenizer",
        "//compiler/util:resources",
        "//compiler/util:simple_memoizer",
    ],
)

py_test(
    name = "parser_test",
    srcs = ["parser_test.py"],
    python_version = "PY3",
    deps = [
        ":lr1",
        ":parser",
        ":tokenizer",
        "//compiler/util:parser_types",
    ],
)

py_library(
    name = "glue",
    srcs = ["glue.py"],
    data = [
        "prelude.emb",
    ],
    visibility = ["//:__subpackages__"],
    deps = [
        ":attribute_checker",
        ":constraints",
        ":dependency_checker",
        ":expression_bounds",
        ":lr1",
        ":module_ir",
        ":parser",
        ":symbol_resolver",
        ":synthetics",
        ":tokenizer",
        ":type_check",
        ":write_inference",
        "//compiler/util:error",
        "//compiler/util:ir_pb2",
        "//compiler/util:parser_types",
        "//compiler/util:resources",
    ],
)

py_test(
    name = "glue_test",
    srcs = ["glue_test.py"],
    data = [
        "//testdata:golden_files",
    ],
    python_version = "PY3",
    deps = [
        ":glue",
        "//compiler/util:error",
        "//compiler/util:ir_pb2",
        "//compiler/util:parser_types",
        "//compiler/util:test_util",
    ],
)

py_library(
    name = "synthetics",
    srcs = ["synthetics.py"],
    visibility = ["//visibility:private"],
    deps = [
        "//compiler/util:expression_parser",
        "//compiler/util:ir_pb2",
        "//compiler/util:traverse_ir",
    ],
)

py_test(
    name = "synthetics_test",
    srcs = ["synthetics_test.py"],
    python_version = "PY3",
    deps = [
        ":glue",
        ":synthetics",
        "//compiler/util:test_util",
    ],
)

py_library(
    name = "symbol_resolver",
    srcs = ["symbol_resolver.py"],
    visibility = ["//visibility:private"],
    deps = [
        "//compiler/util:error",
        "//compiler/util:ir_pb2",
        "//compiler/util:ir_util",
        "//compiler/util:traverse_ir",
    ],
)

py_test(
    name = "symbol_resolver_test",
    srcs = ["symbol_resolver_test.py"],
    python_version = "PY3",
    deps = [
        ":glue",
        ":symbol_resolver",
        "//compiler/util:error",
        "//compiler/util:test_util",
    ],
)

py_library(
    name = "write_inference",
    srcs = ["write_inference.py"],
    visibility = ["//visibility:private"],
    deps = [
        ":attributes",
        ":expression_bounds",
        "//compiler/util:ir_pb2",
        "//compiler/util:ir_util",
        "//compiler/util:traverse_ir",
    ],
)

py_test(
    name = "write_inference_test",
    srcs = ["write_inference_test.py"],
    python_version = "PY3",
    deps = [
        ":glue",
        ":write_inference",
        "//compiler/util:ir_pb2",
        "//compiler/util:test_util",
    ],
)

py_library(
    name = "attribute_checker",
    srcs = ["attribute_checker.py"],
    deps = [
        ":attributes",
        ":type_check",
        "//compiler/util:attribute_util",
        "//compiler/util:error",
        "//compiler/util:ir_pb2",
        "//compiler/util:ir_util",
        "//compiler/util:traverse_ir",
    ],
)

py_library(
    name = "attributes",
    srcs = ["attributes.py"],
    deps = [],
)

py_test(
    name = "attribute_checker_test",
    timeout = "long",
    srcs = ["attribute_checker_test.py"],
    python_version = "PY3",
    deps = [
        ":attribute_checker",
        ":glue",
        "//compiler/util:error",
        "//compiler/util:ir_pb2",
        "//compiler/util:ir_util",
        "//compiler/util:test_util",
    ],
)

py_library(
    name = "type_check",
    srcs = ["type_check.py"],
    deps = [
        ":attributes",
        "//compiler/util:error",
        "//compiler/util:ir_pb2",
        "//compiler/util:ir_util",
        "//compiler/util:traverse_ir",
    ],
)

py_test(
    name = "type_check_test",
    srcs = ["type_check_test.py"],
    python_version = "PY3",
    deps = [
        ":glue",
        ":type_check",
        "//compiler/util:error",
        "//compiler/util:test_util",
    ],
)

py_library(
    name = "expression_bounds",
    srcs = ["expression_bounds.py"],
    data = [
        "reserved_words",
    ],
    deps = [
        ":attributes",
        "//compiler/util:ir_pb2",
        "//compiler/util:ir_util",
        "//compiler/util:traverse_ir",
    ],
)

py_test(
    name = "expression_bounds_test",
    srcs = ["expression_bounds_test.py"],
    python_version = "PY3",
    deps = [
        ":expression_bounds",
        ":glue",
        "//compiler/util:test_util",
    ],
)

py_library(
    name = "constraints",
    srcs = ["constraints.py"],
    data = [
        "reserved_words",
    ],
    deps = [
        ":attributes",
        "//compiler/util:error",
        "//compiler/util:ir_pb2",
        "//compiler/util:ir_util",
        "//compiler/util:resources",
        "//compiler/util:traverse_ir",
    ],
)

py_test(
    name = "constraints_test",
    srcs = ["constraints_test.py"],
    python_version = "PY3",
    deps = [
        ":constraints",
        ":glue",
        "//compiler/util:error",
        "//compiler/util:test_util",
    ],
)

py_library(
    name = "dependency_checker",
    srcs = ["dependency_checker.py"],
    deps = [
        "//compiler/util:error",
        "//compiler/util:ir_pb2",
        "//compiler/util:ir_util",
        "//compiler/util:traverse_ir",
    ],
)

py_test(
    name = "dependency_checker_test",
    srcs = ["dependency_checker_test.py"],
    python_version = "PY3",
    deps = [
        ":dependency_checker",
        ":glue",
        "//compiler/util:error",
        "//compiler/util:test_util",
    ],
)

py_binary(
    name = "emboss_front_end",
    srcs = ["emboss_front_end.py"],
    python_version = "PY3",
    visibility = ["//visibility:public"],
    deps = [
        ":glue",
        ":module_ir",
        "//compiler/util:error",
    ],
)

py_binary(
    name = "format",
    srcs = ["format.py"],
    main = "format.py",
    python_version = "PY3",
    visibility = ["//visibility:public"],
    deps = [
        ":format_emb",
        ":parser",
        ":tokenizer",
        "//compiler/util:error",
    ],
)

py_library(
    name = "format_emb",
    srcs = ["format_emb.py"],
    deps = [
        ":module_ir",
        ":tokenizer",
        "//compiler/util:parser_types",
    ],
)

py_test(
    name = "format_emb_test",
    srcs = ["format_emb_test.py"],
    data = [
        "//testdata:format_embs",
    ],
    python_version = "PY3",
    deps = [
        ":format_emb",
        ":module_ir",
        ":parser",
        ":tokenizer",
    ],
)

py_binary(
    name = "generate_grammar_md",
    srcs = ["generate_grammar_md.py"],
    python_version = "PY3",
    deps = [
        ":constraints",
        ":module_ir",
        ":tokenizer",
    ],
)

py_test(
    name = "docs_are_up_to_date_test",
    srcs = ["docs_are_up_to_date_test.py"],
    data = [
        "//doc:grammar_md",
    ],
    python_version = "PY3",
    deps = [
        ":generate_grammar_md",
    ],
)
