mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-09-24 22:02:23 +01:00
* Move nontrivial logic out of `parser.ypp` into `FieldList`, rename it to `ParenContents`, make it a class, and add tests * Use a `FieldInitializer` struct instead of `std::pair<std::string, Expression*>` to represent the fields of a tuple
59 lines
1.2 KiB
Python
59 lines
1.2 KiB
Python
# Part of the Carbon Language project, under the Apache License v2.0 with LLVM
|
|
# Exceptions. See /LICENSE for license information.
|
|
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
|
|
load("@rules_cc//cc:defs.bzl", "cc_library")
|
|
|
|
package(default_visibility = ["//executable_semantics:__subpackages__"])
|
|
|
|
cc_library(
|
|
name = "declaration",
|
|
srcs = ["declaration.cpp"],
|
|
hdrs = [
|
|
"abstract_syntax_tree.h",
|
|
"declaration.h",
|
|
],
|
|
deps = [
|
|
":function_definition",
|
|
":member",
|
|
":struct_definition",
|
|
"//executable_semantics/interpreter:containers",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "expression",
|
|
srcs = ["expression.cpp"],
|
|
hdrs = ["expression.h"],
|
|
)
|
|
|
|
cc_library(
|
|
name = "function_definition",
|
|
srcs = ["function_definition.cpp"],
|
|
hdrs = ["function_definition.h"],
|
|
deps = [
|
|
":expression",
|
|
":statement",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "member",
|
|
srcs = ["member.cpp"],
|
|
hdrs = ["member.h"],
|
|
deps = [":expression"],
|
|
)
|
|
|
|
cc_library(
|
|
name = "statement",
|
|
srcs = ["statement.cpp"],
|
|
hdrs = ["statement.h"],
|
|
deps = [":expression"],
|
|
)
|
|
|
|
cc_library(
|
|
name = "struct_definition",
|
|
hdrs = ["struct_definition.h"],
|
|
deps = [":member"],
|
|
)
|