(slightly modified) contribution of Sergey Ignatov of methods for strings and arrays

This commit is contained in:
Alex Tkachman
2011-12-13 13:26:42 +02:00
parent 54336a285d
commit 9d0a2c7243
3 changed files with 86 additions and 8 deletions
+59
View File
@@ -0,0 +1,59 @@
namespace std
inline fun <T> T?.plus(str: String?) : String { return toString() + str }
inline fun String.lastIndexOf(s: String) = (this as java.lang.String).lastIndexOf(s)
inline fun String.lastIndexOf(s: Char) = (this as java.lang.String).lastIndexOf(s.toString()) }
inline fun String.indexOf(s : String) = (this as java.lang.String).indexOf(s)
inline fun String.indexOf(p0 : String, p1 : Int) = (this as java.lang.String).indexOf(p0, p1)
inline fun String.replaceAll(s: String, s1 : String) = (this as java.lang.String).replaceAll(s, s1).sure()
inline fun String.trim() = (this as java.lang.String).trim().sure()
inline fun String.toUpperCase() = (this as java.lang.String).toUpperCase().sure()
inline fun String.toLowerCase() = (this as java.lang.String).toLowerCase().sure()
inline fun String.length() = (this as java.lang.String).length()
inline fun String.getBytes() = (this as java.lang.String).getBytes().sure()
inline fun String.toCharArray() = (this as java.lang.String).toCharArray().sure()
inline fun String.format(s : String, vararg objects : Any?) = java.lang.String.format(s, objects).sure()
inline fun String.split(s : String) = (this as java.lang.String).split(s)
inline fun String.substring(i : Int) = (this as java.lang.String).substring(i).sure()
inline fun String.substring(i0 : Int, i1 : Int) = (this as java.lang.String).substring(i0, i1).sure()
inline val String.size : Int
get() = length()
inline val String.bytes : ByteArray
get() = getBytes()
// "constructors" for String
inline fun String(bytes : ByteArray, i : Int, i1 : Int, s : String) = java.lang.String(bytes, i, i1, s) as String
inline fun String(bytes : ByteArray, i : Int, i1 : Int, charset : java.nio.charset.Charset) = java.lang.String(bytes, i, i1, charset) as String
inline fun String(bytes : ByteArray, s : String?) = java.lang.String(bytes, s) as String
inline fun String(bytes : ByteArray, charset : java.nio.charset.Charset) = java.lang.String(bytes, charset) as String
inline fun String(bytes : ByteArray, i : Int, i1 : Int) = java.lang.String(bytes, i, i1) as String
inline fun String(bytes : ByteArray) = java.lang.String(bytes) as String
inline fun String(chars : CharArray) = java.lang.String(chars) as String
inline fun String(stringBuffer : java.lang.StringBuffer) = java.lang.String(stringBuffer) as String
inline fun String(stringBuilder : java.lang.StringBuilder) = java.lang.String(stringBuilder) as String