121 lines
2.4 KiB
Python
121 lines
2.4 KiB
Python
# Copyright 2022 Google LLC. All rights reserved.
|
|
#
|
|
# 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
|
|
#
|
|
# http://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.
|
|
|
|
load("//kotlin:rules.bzl", "kt_jvm_library")
|
|
|
|
licenses(["notice"])
|
|
|
|
package(default_testonly = 1)
|
|
|
|
java_test(
|
|
name = "ijar",
|
|
main_class = "ijar.MainKt",
|
|
runtime_deps = [":main"],
|
|
)
|
|
|
|
java_test(
|
|
name = "suspense",
|
|
test_class = "ijar.SuspendTest",
|
|
runtime_deps = [":SuspendTest"],
|
|
)
|
|
|
|
kt_jvm_library(
|
|
name = "inline",
|
|
srcs = [
|
|
"InlineCapture.kt",
|
|
"InlineInnerClass.kt",
|
|
"ReifiedInline.kt",
|
|
],
|
|
)
|
|
|
|
# Compiling this file by itself triggers synthetic methods needed when compiling
|
|
# dependants. These methods carry annotations.
|
|
kt_jvm_library(
|
|
name = "statics",
|
|
srcs = ["JvmStatics.kt"],
|
|
)
|
|
|
|
kt_jvm_library(
|
|
name = "main",
|
|
srcs = ["Main.kt"],
|
|
deps = [
|
|
":inline",
|
|
":statics",
|
|
],
|
|
)
|
|
|
|
kt_jvm_library(
|
|
name = "inlined_suspense",
|
|
srcs = ["DoubleInline.kt"],
|
|
)
|
|
|
|
kt_jvm_library(
|
|
name = "SuspendTest",
|
|
srcs = ["SuspendTest.kt"],
|
|
deps = [
|
|
":inlined_suspense",
|
|
"@maven//:com_google_truth_truth",
|
|
"@maven//:junit_junit",
|
|
],
|
|
)
|
|
|
|
java_library(
|
|
name = "SamInJava",
|
|
srcs = ["SamInJava.java"],
|
|
)
|
|
|
|
kt_jvm_library(
|
|
name = "SamExt",
|
|
srcs = ["SamExt.kt"],
|
|
deps = [
|
|
":SamInJava",
|
|
],
|
|
)
|
|
|
|
kt_jvm_library(
|
|
name = "SamExtUser",
|
|
srcs = ["SamExtUser.kt"],
|
|
deps = [
|
|
":SamExt",
|
|
":SamInJava",
|
|
],
|
|
)
|
|
|
|
java_test(
|
|
name = "inlinedSamExt",
|
|
main_class = "ijar.SamExtUserKt",
|
|
runtime_deps = [
|
|
":SamExtUser",
|
|
],
|
|
)
|
|
|
|
kt_jvm_library(
|
|
name = "InlineWhenMapping",
|
|
srcs = ["InlineWhenMapping.kt"],
|
|
)
|
|
|
|
kt_jvm_library(
|
|
name = "InlineWhenMappingUser",
|
|
srcs = ["InlineWhenMappingUser.kt"],
|
|
deps = [":InlineWhenMapping"],
|
|
)
|
|
|
|
java_test(
|
|
name = "inlineWhenMapping",
|
|
main_class = "ijar.InlineWhenMappingUserKt",
|
|
runtime_deps = [
|
|
":InlineWhenMappingUser",
|
|
],
|
|
)
|