1*3a22c0a3SAlix# Copyright 2022 Google LLC. All rights reserved. 2*3a22c0a3SAlix# 3*3a22c0a3SAlix# Licensed under the Apache License, Version 2.0 (the License); 4*3a22c0a3SAlix# you may not use this file except in compliance with the License. 5*3a22c0a3SAlix# You may obtain a copy of the License at 6*3a22c0a3SAlix# 7*3a22c0a3SAlix# http://www.apache.org/licenses/LICENSE-2.0 8*3a22c0a3SAlix# 9*3a22c0a3SAlix# Unless required by applicable law or agreed to in writing, software 10*3a22c0a3SAlix# distributed under the License is distributed on an "AS IS" BASIS, 11*3a22c0a3SAlix# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*3a22c0a3SAlix# See the License for the specific language governing permissions and 13*3a22c0a3SAlix# limitations under the License. 14*3a22c0a3SAlix 15*3a22c0a3SAlixload("//kotlin:rules.bzl", "kt_jvm_library") 16*3a22c0a3SAlix 17*3a22c0a3SAlixlicenses(["notice"]) 18*3a22c0a3SAlix 19*3a22c0a3SAlixpackage( 20*3a22c0a3SAlix default_testonly = 1, 21*3a22c0a3SAlix) 22*3a22c0a3SAlix 23*3a22c0a3SAlixjava_test( 24*3a22c0a3SAlix name = "ijar", 25*3a22c0a3SAlix main_class = "ijar.MainKt", 26*3a22c0a3SAlix runtime_deps = [":main"], 27*3a22c0a3SAlix) 28*3a22c0a3SAlix 29*3a22c0a3SAlixjava_test( 30*3a22c0a3SAlix name = "suspense", 31*3a22c0a3SAlix test_class = "ijar.SuspendTest", 32*3a22c0a3SAlix runtime_deps = [":SuspendTest"], 33*3a22c0a3SAlix) 34*3a22c0a3SAlix 35*3a22c0a3SAlixkt_jvm_library( 36*3a22c0a3SAlix name = "inline", 37*3a22c0a3SAlix srcs = [ 38*3a22c0a3SAlix "InlineCapture.kt", 39*3a22c0a3SAlix "InlineInnerClass.kt", 40*3a22c0a3SAlix "ReifiedInline.kt", 41*3a22c0a3SAlix ], 42*3a22c0a3SAlix) 43*3a22c0a3SAlix 44*3a22c0a3SAlix# Compiling this file by itself triggers synthetic methods needed when compiling 45*3a22c0a3SAlix# dependants. These methods carry annotations. 46*3a22c0a3SAlixkt_jvm_library( 47*3a22c0a3SAlix name = "statics", 48*3a22c0a3SAlix srcs = ["JvmStatics.kt"], 49*3a22c0a3SAlix) 50*3a22c0a3SAlix 51*3a22c0a3SAlixkt_jvm_library( 52*3a22c0a3SAlix name = "main", 53*3a22c0a3SAlix srcs = ["Main.kt"], 54*3a22c0a3SAlix deps = [ 55*3a22c0a3SAlix ":inline", 56*3a22c0a3SAlix ":statics", 57*3a22c0a3SAlix ], 58*3a22c0a3SAlix) 59*3a22c0a3SAlix 60*3a22c0a3SAlixkt_jvm_library( 61*3a22c0a3SAlix name = "inlined_suspense", 62*3a22c0a3SAlix srcs = ["DoubleInline.kt"], 63*3a22c0a3SAlix) 64*3a22c0a3SAlix 65*3a22c0a3SAlixkt_jvm_library( 66*3a22c0a3SAlix name = "SuspendTest", 67*3a22c0a3SAlix srcs = ["SuspendTest.kt"], 68*3a22c0a3SAlix deps = [ 69*3a22c0a3SAlix ":inlined_suspense", 70*3a22c0a3SAlix "@maven//:com_google_truth_truth", 71*3a22c0a3SAlix "@maven//:junit_junit", 72*3a22c0a3SAlix ], 73*3a22c0a3SAlix) 74*3a22c0a3SAlix 75*3a22c0a3SAlixjava_library( 76*3a22c0a3SAlix name = "SamInJava", 77*3a22c0a3SAlix srcs = ["SamInJava.java"], 78*3a22c0a3SAlix) 79*3a22c0a3SAlix 80*3a22c0a3SAlixkt_jvm_library( 81*3a22c0a3SAlix name = "SamExt", 82*3a22c0a3SAlix srcs = ["SamExt.kt"], 83*3a22c0a3SAlix deps = [ 84*3a22c0a3SAlix ":SamInJava", 85*3a22c0a3SAlix ], 86*3a22c0a3SAlix) 87*3a22c0a3SAlix 88*3a22c0a3SAlixkt_jvm_library( 89*3a22c0a3SAlix name = "SamExtUser", 90*3a22c0a3SAlix srcs = ["SamExtUser.kt"], 91*3a22c0a3SAlix deps = [ 92*3a22c0a3SAlix ":SamExt", 93*3a22c0a3SAlix ":SamInJava", 94*3a22c0a3SAlix ], 95*3a22c0a3SAlix) 96*3a22c0a3SAlix 97*3a22c0a3SAlixjava_test( 98*3a22c0a3SAlix name = "inlinedSamExt", 99*3a22c0a3SAlix main_class = "ijar.SamExtUserKt", 100*3a22c0a3SAlix runtime_deps = [ 101*3a22c0a3SAlix ":SamExtUser", 102*3a22c0a3SAlix ], 103*3a22c0a3SAlix) 104*3a22c0a3SAlix 105*3a22c0a3SAlixkt_jvm_library( 106*3a22c0a3SAlix name = "InlineWhenMapping", 107*3a22c0a3SAlix srcs = ["InlineWhenMapping.kt"], 108*3a22c0a3SAlix) 109*3a22c0a3SAlix 110*3a22c0a3SAlixkt_jvm_library( 111*3a22c0a3SAlix name = "InlineWhenMappingUser", 112*3a22c0a3SAlix srcs = ["InlineWhenMappingUser.kt"], 113*3a22c0a3SAlix deps = [":InlineWhenMapping"], 114*3a22c0a3SAlix) 115*3a22c0a3SAlix 116*3a22c0a3SAlixjava_test( 117*3a22c0a3SAlix name = "inlineWhenMapping", 118*3a22c0a3SAlix main_class = "ijar.InlineWhenMappingUserKt", 119*3a22c0a3SAlix runtime_deps = [ 120*3a22c0a3SAlix ":InlineWhenMappingUser", 121*3a22c0a3SAlix ], 122*3a22c0a3SAlix) 123