Make CharSequence.length a function instead of property
And String.length as well. This is done for JVM interoperability: java.lang.CharSequence is an open class and has a function 'length()' which should be implemented in subclasses somehow. A minor unexpected effect of this is that String.length() is now a compile-time constant (it wasn't such as a property because properties are not supported in compile-time constant evaluation) #KT-3571 Fixed
This commit is contained in:
+1
-1
@@ -5,7 +5,7 @@ fun main(args: Array<String>) {
|
||||
val foo: String? = "abc"
|
||||
if (foo != null<caret>) {
|
||||
doSomething ("Hello")
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
else null
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ fun main(args: Array<String>) {
|
||||
var foo: String? = "foo"
|
||||
var bar: String? = "bar"
|
||||
if (foo != null<caret>) {
|
||||
bar?.length
|
||||
bar?.length()
|
||||
}
|
||||
else null
|
||||
}
|
||||
|
||||
+1
-1
@@ -2,7 +2,7 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo = "foo"
|
||||
if (null == <caret>null) {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
else null
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ fun <T> T.compareTo(a: T): Int = 0
|
||||
fun main(args: Array<String>) {
|
||||
val foo = "foo"
|
||||
if (foo > null<caret>) {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
else null
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ fun String?.times(a: Int): Boolean = a == 0
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String = "foo"
|
||||
if (foo * 10<caret>) {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
else null
|
||||
}
|
||||
|
||||
+1
-1
@@ -8,7 +8,7 @@ fun main(args: Array<String>) {
|
||||
val foo = maybeFoo()
|
||||
doSomething(foo)
|
||||
if (foo != null<caret>) {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
else {
|
||||
null
|
||||
|
||||
+1
-1
@@ -7,5 +7,5 @@ fun doSomething<T>(a: T) {}
|
||||
fun main(args: Array<String>) {
|
||||
val foo = maybeFoo()
|
||||
doSomething(foo)
|
||||
foo?.length
|
||||
foo?.length()
|
||||
}
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@ val x = maybeFoo()
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
if (x !=<caret> null) {
|
||||
x.length
|
||||
x.length()
|
||||
} else {
|
||||
null
|
||||
}
|
||||
|
||||
+1
-1
@@ -5,5 +5,5 @@ fun maybeFoo(): String? {
|
||||
val x = maybeFoo()
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
x?.length
|
||||
x?.length()
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo = "foo"
|
||||
if (<caret>) {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
else null
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ fun maybeFoo(): String? {
|
||||
fun main(args: Array<String>) {
|
||||
val foo = maybeFoo()
|
||||
if (foo != null<caret>) {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
else {
|
||||
|
||||
|
||||
@@ -3,5 +3,5 @@ fun maybeFoo(): String? {
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
maybeFoo()?.length
|
||||
maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -7,6 +7,6 @@ fun main(args: Array<String>) {
|
||||
if (foo == null<caret>) {
|
||||
}
|
||||
else {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@ fun maybeFoo(): String? {
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
maybeFoo()?.length
|
||||
maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ fun maybeFoo(): String? {
|
||||
fun main(args: Array<String>) {
|
||||
val foo = maybeFoo()
|
||||
if (foo != null<caret>) {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
else {
|
||||
null
|
||||
|
||||
@@ -3,5 +3,5 @@ fun maybeFoo(): String? {
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
maybeFoo()?.length
|
||||
maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ fun maybeFoo(): String? {
|
||||
fun main(args: Array<String>) {
|
||||
val foo = maybeFoo()
|
||||
if (foo != null<caret>)
|
||||
foo.length
|
||||
foo.length()
|
||||
else
|
||||
null
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@ fun maybeFoo(): String? {
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
maybeFoo()?.length
|
||||
maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -8,6 +8,6 @@ fun main(args: Array<String>) {
|
||||
null
|
||||
}
|
||||
else {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@ fun maybeFoo(): String? {
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val x = maybeFoo()?.length
|
||||
val x = maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -7,5 +7,5 @@ fun main(args: Array<String>) {
|
||||
if (foo == null<caret>)
|
||||
null
|
||||
else
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@ fun maybeFoo(): String? {
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
maybeFoo()?.length
|
||||
maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ fun maybeFoo(): String? {
|
||||
fun main(args: Array<String>) {
|
||||
val foo = maybeFoo()
|
||||
if (foo != null<caret>)
|
||||
foo.length
|
||||
foo.length()
|
||||
else
|
||||
null
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@ fun maybeFoo(): String? {
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
maybeFoo()?.length
|
||||
maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -3,6 +3,6 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
if<caret> {
|
||||
foo.length
|
||||
foo.length()
|
||||
} else null
|
||||
}
|
||||
|
||||
@@ -5,6 +5,6 @@ fun maybeFoo(): String? {
|
||||
fun main(args: Array<String>) {
|
||||
val foo = maybeFoo()
|
||||
if (foo != null<caret>) {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@ fun maybeFoo(): String? {
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
maybeFoo()?.length
|
||||
maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
val bar: String? = null
|
||||
if (foo == bar<caret>) {
|
||||
foo?.length
|
||||
foo?.length()
|
||||
}
|
||||
else null
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
val bar: String? = null
|
||||
if (foo == bar<caret>) {
|
||||
bar?.length
|
||||
bar?.length()
|
||||
}
|
||||
else null
|
||||
}
|
||||
|
||||
@@ -5,6 +5,6 @@ fun maybeFoo(): String? {
|
||||
fun main(args: Array<String>) {
|
||||
val foo = maybeFoo()
|
||||
if (foo == null<caret>) else {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@ fun maybeFoo(): String? {
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
maybeFoo()?.length
|
||||
maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -7,5 +7,5 @@ fun main(args: Array<String>) {
|
||||
if (maybeFoo() == null<caret>)
|
||||
null
|
||||
else
|
||||
maybeFoo()?.length
|
||||
maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -8,5 +8,5 @@ fun main(args: Array<String>) {
|
||||
if (foo == null<caret>)
|
||||
null
|
||||
else
|
||||
foo?.length
|
||||
foo?.length()
|
||||
}
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@ fun doSomething<T>(a: T) {}
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "abc"
|
||||
if (foo != null<caret>) {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
else {
|
||||
doSomething("Hi")
|
||||
|
||||
@@ -7,5 +7,5 @@ fun main(args: Array<String>) {
|
||||
if (null == foo<caret>)
|
||||
null
|
||||
else
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@ fun maybeFoo(): String? {
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
maybeFoo()?.length
|
||||
maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ fun maybeFoo(): String? {
|
||||
fun main(args: Array<String>) {
|
||||
val foo = maybeFoo()
|
||||
if (null != foo<caret>)
|
||||
foo.length
|
||||
foo.length()
|
||||
else
|
||||
null
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@ fun maybeFoo(): String? {
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
maybeFoo()?.length
|
||||
maybeFoo()?.length()
|
||||
}
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
if (foo == null<caret>) {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
else {
|
||||
foo.length
|
||||
foo.length()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = null
|
||||
val y: String? = "Hello"
|
||||
val z = (x ?: y)?.<caret>length
|
||||
val z = (x ?: y)?.<caret>length()
|
||||
}
|
||||
|
||||
@@ -2,5 +2,5 @@ fun main(args: Array<String>) {
|
||||
val x: String? = null
|
||||
val y: String? = "Hello"
|
||||
val s = x ?: y
|
||||
val z = if (s != null) s.length else null
|
||||
val z = if (s != null) s.length() else null
|
||||
}
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
fun String.length() = length
|
||||
|
||||
fun foo(): String? = "foo"
|
||||
fun main(args: Array<String>) {
|
||||
foo()?.<caret>length()
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
fun String.length() = length
|
||||
|
||||
fun foo(): String? = "foo"
|
||||
fun main(args: Array<String>) {
|
||||
val s = foo()
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
fun foo(): String? = "foo"
|
||||
fun main(args: Array<String>) {
|
||||
(foo())?.<caret>length
|
||||
(foo())?.<caret>length()
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
fun foo(): String? = "foo"
|
||||
fun main(args: Array<String>) {
|
||||
val s = foo()
|
||||
if (s != null) s.length
|
||||
if (s != null) s.length()
|
||||
}
|
||||
|
||||
@@ -9,5 +9,5 @@ class Foo {
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val a = Foo()
|
||||
doSomething(a.b?.<caret>length)
|
||||
doSomething(a.b?.<caret>length())
|
||||
}
|
||||
|
||||
+1
-1
@@ -10,5 +10,5 @@ class Foo {
|
||||
fun main(args: Array<String>) {
|
||||
val a = Foo()
|
||||
val s = a.b
|
||||
doSomething(if (s != null) s.length else null)
|
||||
doSomething(if (s != null) s.length() else null)
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "abc"
|
||||
x?.<caret>length
|
||||
x?.<caret>length()
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "abc"
|
||||
if (x != null) x.length
|
||||
if (x != null) x.length()
|
||||
}
|
||||
|
||||
@@ -2,5 +2,5 @@ fun doSomething<T>(a: T) {}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val a: String? = "A"
|
||||
doSomething(a?.<caret>length)
|
||||
doSomething(a?.<caret>length())
|
||||
}
|
||||
|
||||
@@ -2,5 +2,5 @@ fun doSomething<T>(a: T) {}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val a: String? = "A"
|
||||
doSomething(if (a != null) a.length else null)
|
||||
doSomething(if (a != null) a.length() else null)
|
||||
}
|
||||
|
||||
@@ -2,6 +2,6 @@ fun doSomething<T>(a: T) {}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
var a: String? = "A"
|
||||
doSomething(a?.<caret>length)
|
||||
doSomething(a?.<caret>length())
|
||||
}
|
||||
|
||||
|
||||
@@ -3,6 +3,6 @@ fun doSomething<T>(a: T) {}
|
||||
fun main(args: Array<String>) {
|
||||
var a: String? = "A"
|
||||
val s = a
|
||||
doSomething(if (s != null) s.length else null)
|
||||
doSomething(if (s != null) s.length() else null)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "abc"
|
||||
val y = x?.<caret>length
|
||||
val y = x?.<caret>length()
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "abc"
|
||||
val y = if (x != null) x.length else null
|
||||
val y = if (x != null) x.length() else null
|
||||
}
|
||||
|
||||
+1
-1
@@ -3,5 +3,5 @@ fun f(s: Int?) {
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "foo"
|
||||
f(x?.<caret>length)
|
||||
f(x?.<caret>length())
|
||||
}
|
||||
|
||||
+1
-1
@@ -3,5 +3,5 @@ fun f(s: Int?) {
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "foo"
|
||||
f(if (x != null) x.length else null)
|
||||
f(if (x != null) x.length() else null)
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
foo?.<caret>length
|
||||
foo?.<caret>length()
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
if (foo != null) foo.length
|
||||
if (foo != null) foo.length()
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
(foo)?.<caret>length
|
||||
(foo)?.<caret>length()
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
if (foo != null) foo.length
|
||||
if (foo != null) foo.length()
|
||||
}
|
||||
|
||||
@@ -2,5 +2,5 @@ fun doSomething<T>(a: T) {}
|
||||
|
||||
val a: String? = "A"
|
||||
fun main(args: Array<String>) {
|
||||
doSomething(a?.<caret>length)
|
||||
doSomething(a?.<caret>length())
|
||||
}
|
||||
|
||||
@@ -2,5 +2,5 @@ fun doSomething<T>(a: T) {}
|
||||
|
||||
val a: String? = "A"
|
||||
fun main(args: Array<String>) {
|
||||
doSomething(if (a != null) a.length else null)
|
||||
doSomething(if (a != null) a.length() else null)
|
||||
}
|
||||
|
||||
@@ -4,5 +4,5 @@ val a: String?
|
||||
get() = ""
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
doSomething(a?.<caret>length)
|
||||
doSomething(a?.<caret>length())
|
||||
}
|
||||
|
||||
+1
-1
@@ -5,5 +5,5 @@ val a: String?
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val s = a
|
||||
doSomething(if (s != null) s.length else null)
|
||||
doSomething(if (s != null) s.length() else null)
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
var a: String? = "A"
|
||||
fun main(args: Array<String>) {
|
||||
a<caret>?.length
|
||||
a<caret>?.length()
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
var a: String? = "A"
|
||||
fun main(args: Array<String>) {
|
||||
val s = a
|
||||
if (s != null) s.length
|
||||
if (s != null) s.length()
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@ var a: String?
|
||||
set(v) {}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
a?.<caret>length
|
||||
a?.<caret>length()
|
||||
}
|
||||
|
||||
+1
-1
@@ -4,5 +4,5 @@ var a: String?
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val s = a
|
||||
if (s != null) s.length
|
||||
if (s != null) s.length()
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
fun foo(arg: String?): Int? = arg?.<caret>length
|
||||
fun foo(arg: String?): Int? = arg?.<caret>length()
|
||||
fun main(args: Array<String>) {
|
||||
foo("bar")
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
fun foo(arg: String?): Int? = if (arg != null) arg.length else null
|
||||
fun foo(arg: String?): Int? = if (arg != null) arg.length() else null
|
||||
fun main(args: Array<String>) {
|
||||
foo("bar")
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
val y = if (true) foo?.<caret>length else null
|
||||
val y = if (true) foo?.<caret>length() else null
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
val y = if (true) if (foo != null) foo.length else null else null
|
||||
val y = if (true) if (foo != null) foo.length() else null else null
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
fun doSth(): Int? {
|
||||
val x: String? = "abc"
|
||||
return x?.<caret>length
|
||||
return x?.<caret>length()
|
||||
}
|
||||
fun main(args: Array<String>) {
|
||||
val y = doSth()
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
fun doSth(): Int? {
|
||||
val x: String? = "abc"
|
||||
return if (x != null) x.length else null
|
||||
return if (x != null) x.length() else null
|
||||
}
|
||||
fun main(args: Array<String>) {
|
||||
val y = doSth()
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
if (true) {
|
||||
foo?.<caret>length
|
||||
foo?.<caret>length()
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
if (true) {
|
||||
if (foo != null) foo.length
|
||||
if (foo != null) foo.length()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
fun String.not(): Boolean {
|
||||
return length == 0
|
||||
return length() == 0
|
||||
}
|
||||
|
||||
fun foo(a: Boolean, b: Boolean) : Boolean {
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
fun String.not(): Boolean {
|
||||
return length == 0
|
||||
return length() == 0
|
||||
}
|
||||
|
||||
fun foo(a: Boolean, b: Boolean) : Boolean {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// IS_APPLICABLE: false
|
||||
fun foo() {
|
||||
val x = "x"
|
||||
val y = "$<caret>{x.length}"
|
||||
val y = "$<caret>{x.length()}"
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
// IS_APPLICABLE: false
|
||||
fun foo(x: String) {
|
||||
x.<caret>length
|
||||
fun foo(x: IntRange) {
|
||||
x.<caret>start
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user