From d854f93640fad350f9800b7503c4bc9551cfdf6a Mon Sep 17 00:00:00 2001 From: develar Date: Wed, 22 Aug 2012 12:06:00 +0400 Subject: [PATCH] JS backend: using native implementations in kotlin_lib.js for String.startsWith, String.endsWith and String.contains. --- js/js.libraries/src/core/stringsCode.kt | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/js/js.libraries/src/core/stringsCode.kt b/js/js.libraries/src/core/stringsCode.kt index 213d6f05f63..0d1fa17c251 100644 --- a/js/js.libraries/src/core/stringsCode.kt +++ b/js/js.libraries/src/core/stringsCode.kt @@ -25,21 +25,14 @@ public inline fun String.endsWith(ch: Char): Boolean { return if (s > 0) charAt(s - 1) == ch else false } -public inline fun String.startsWith(text: String): Boolean { - val size = text.length - return if (size <= this.length) { - substring(0, size) == text - } else false -} +native +fun String.startsWith(s:String):Boolean = noImpl -public inline fun String.endsWith(text: String): Boolean { - val matchSize = text.length - val thisSize = this.length - return if (matchSize <= thisSize) { - substring(thisSize - matchSize, thisSize) == text - } else false -} +native +fun String.endsWith(s:String):Boolean = noImpl +native +fun String.contains(s:String):Boolean = noImpl /** * Returns a copy of this string capitalised if it is not empty or already starting with an uppper case letter, otherwise returns this