Skip to content

Commit 58aaec8

Browse files
jDramaixcopybara-github
authored andcommitted
[KT] Add multi-dollar string interpolation example to Strings.kt readable.
This language feature is available since Kotlin 2.2. PiperOrigin-RevId: 888338909
1 parent 0fdbaec commit 58aaec8

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

transpiler/javatests/com/google/j2cl/readable/kotlin/strings/Strings.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,15 @@ class Strings {
207207
s1 = (1 + 2).toString() + "s"
208208
s1 = "s" + 1 + 2
209209
}
210+
211+
fun testMultiDollarInterpolation() {
212+
val name = "world"
213+
val s1 = $$$"Hello $$$name, $$name, $name"
214+
val s2 =
215+
$$"""Hello $$name
216+
$name literal
217+
"""
218+
}
210219
}
211220

212221
private class Foo {

transpiler/javatests/com/google/j2cl/readable/kotlin/strings/output_closure/Strings.impl.java.js.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,12 @@ class Strings extends j_l_Object {
6868
s1 = j_l_String.m_valueOf__java_lang_Object__java_lang_String(Integer.valueOf(1 + 2 | 0).toString()) + 's';
6969
s1 = 's' + 1 + 2;
7070
}
71+
/** @final @nodts */
72+
m_testMultiDollarInterpolation__void() {
73+
let name = 'world';
74+
let s1 = '' + 'Hello ' + j_l_String.m_valueOf__java_lang_Object__java_lang_String(name) + ', $$name, $name';
75+
let s2 = '' + 'Hello ' + j_l_String.m_valueOf__java_lang_Object__java_lang_String(name) + '\n $name literal\n ';
76+
}
7177
/** @nodts */
7278
static $clinit() {
7379
Strings.$clinit = () =>{};

0 commit comments

Comments
 (0)