(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
+21
View File
@@ -0,0 +1,21 @@
namespace std
// Array "constructor"
inline fun <T> array(vararg t : T) : Array<T> = t
// "constructors" for primitive types array
inline fun doubleArray(vararg content : Double) = content
inline fun floatArray(vararg content : Float) = content
inline fun longArray(vararg content : Long) = content
inline fun intArray(vararg content : Int) = content
inline fun charArray(vararg content : Char) = content
inline fun shortArray(vararg content : Short) = content
inline fun byteArray(vararg content : Byte) = content
inline fun booleanArray(vararg content : Boolean) = content
+6 -8
View File
@@ -1,11 +1,9 @@
namespace std
namespace std.util
namespace util {
import java.util.*
import java.util.*
val Collection<*>.size : Int
get() = size()
val Collection<*>.size : Int
get() = size()
val Collection<*>.empty : Boolean
get() = isEmpty()
}
val Collection<*>.empty : Boolean
get() = isEmpty()
+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