IR: IrField.isFinal

This commit is contained in:
Dmitry Petrov
2018-05-04 17:36:05 +03:00
parent 9721ca8d09
commit 9717345e3b
121 changed files with 470 additions and 456 deletions
@@ -16,7 +16,7 @@ FILE fqName:<root> fileName:/constructor.kt
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='Test1'
PROPERTY name:x type:T1 visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:x type:T1 visibility:public
FIELD PROPERTY_BACKING_FIELD name:x type:T1 visibility:public flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter x: T1' type=T1 origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:FINAL <> ($this:Test1<T1, T2>) returnType:T1 flags:
@@ -26,7 +26,7 @@ FILE fqName:<root> fileName:/constructor.kt
GET_FIELD 'x: T1' type=T1 origin=null
receiver: GET_VAR 'this@Test1: Test1<T1, T2>' type=Test1<T1, T2> origin=null
PROPERTY name:y type:T2 visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:y type:T2 visibility:public
FIELD PROPERTY_BACKING_FIELD name:y type:T2 visibility:public flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter y: T2' type=T2 origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-y> visibility:public modality:FINAL <> ($this:Test1<T1, T2>) returnType:T2 flags:
@@ -59,7 +59,7 @@ FILE fqName:<root> fileName:/constructor.kt
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='Test2'
PROPERTY name:y type:kotlin.String visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:y type:kotlin.String visibility:public
FIELD PROPERTY_BACKING_FIELD name:y type:kotlin.String visibility:public flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter y: String' type=kotlin.String origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-y> visibility:public modality:FINAL <> ($this:Test2) returnType:String flags:
@@ -82,7 +82,7 @@ FILE fqName:<root> fileName:/constructor.kt
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='TestInner'
PROPERTY name:z type:Z visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:z type:Z visibility:public
FIELD PROPERTY_BACKING_FIELD name:z type:Z visibility:public flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter z: Z' type=Z origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-z> visibility:public modality:FINAL <> ($this:Test2.TestInner<Z>) returnType:Z flags:
@@ -139,7 +139,7 @@ FILE fqName:<root> fileName:/constructor.kt
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='Test3'
PROPERTY name:x type:kotlin.Int visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:public
FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:public flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter x: Int' type=kotlin.Int origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:FINAL <> ($this:Test3) returnType:Int flags:
@@ -149,7 +149,7 @@ FILE fqName:<root> fileName:/constructor.kt
GET_FIELD 'x: Int' type=kotlin.Int origin=null
receiver: GET_VAR 'this@Test3: Test3' type=Test3 origin=null
PROPERTY name:y type:kotlin.String visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:y type:kotlin.String visibility:public
FIELD PROPERTY_BACKING_FIELD name:y type:kotlin.String visibility:public flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter y: String = ...' type=kotlin.String origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-y> visibility:public modality:FINAL <> ($this:Test3) returnType:String flags:
@@ -184,7 +184,7 @@ FILE fqName:<root> fileName:/constructor.kt
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='Test4'
PROPERTY name:x type:kotlin.Int visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:public
FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:public flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter x: Int' type=kotlin.Int origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:FINAL <> ($this:Test4<T>) returnType:Int flags:
@@ -15,7 +15,7 @@ FILE fqName:<root> fileName:/dataClassMembers.kt
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='Test'
PROPERTY name:x type:T visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:x type:T visibility:public
FIELD PROPERTY_BACKING_FIELD name:x type:T visibility:public flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter x: T' type=T origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:FINAL <> ($this:Test<T>) returnType:T flags:
@@ -25,7 +25,7 @@ FILE fqName:<root> fileName:/dataClassMembers.kt
GET_FIELD 'x: T' type=T origin=null
receiver: GET_VAR 'this@Test: Test<T>' type=Test<T> origin=null
PROPERTY name:y type:kotlin.String visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:y type:kotlin.String visibility:public
FIELD PROPERTY_BACKING_FIELD name:y type:kotlin.String visibility:public flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter y: String = ...' type=kotlin.String origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-y> visibility:public modality:FINAL <> ($this:Test<T>) returnType:String flags:
@@ -1,6 +1,6 @@
FILE fqName:<root> fileName:/defaultPropertyAccessors.kt
PROPERTY name:test1 type:kotlin.Int visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:test1 type:kotlin.Int visibility:public
FIELD PROPERTY_BACKING_FIELD name:test1 type:kotlin.Int visibility:public flags:final
EXPRESSION_BODY
CONST Int type=kotlin.Int value=42
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test1> visibility:public modality:FINAL <> () returnType:Int flags:
@@ -8,7 +8,7 @@ FILE fqName:<root> fileName:/defaultPropertyAccessors.kt
RETURN type=kotlin.Nothing from='<get-test1>(): Int'
GET_FIELD 'test1: Int' type=kotlin.Int origin=null
PROPERTY name:test2 type:kotlin.Int visibility:public modality:FINAL flags:var
FIELD PROPERTY_BACKING_FIELD name:test2 type:kotlin.Int visibility:public
FIELD PROPERTY_BACKING_FIELD name:test2 type:kotlin.Int visibility:public flags:final
EXPRESSION_BODY
CONST Int type=kotlin.Int value=42
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test2> visibility:public modality:FINAL <> () returnType:Int flags:
@@ -29,7 +29,7 @@ FILE fqName:<root> fileName:/defaultPropertyAccessors.kt
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='Host'
PROPERTY name:testMember1 type:kotlin.Int visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:testMember1 type:kotlin.Int visibility:public
FIELD PROPERTY_BACKING_FIELD name:testMember1 type:kotlin.Int visibility:public flags:final
EXPRESSION_BODY
CONST Int type=kotlin.Int value=42
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-testMember1> visibility:public modality:FINAL <> ($this:Host) returnType:Int flags:
@@ -39,7 +39,7 @@ FILE fqName:<root> fileName:/defaultPropertyAccessors.kt
GET_FIELD 'testMember1: Int' type=kotlin.Int origin=null
receiver: GET_VAR 'this@Host: Host' type=Host origin=null
PROPERTY name:testMember2 type:kotlin.Int visibility:public modality:FINAL flags:var
FIELD PROPERTY_BACKING_FIELD name:testMember2 type:kotlin.Int visibility:public
FIELD PROPERTY_BACKING_FIELD name:testMember2 type:kotlin.Int visibility:public flags:final
EXPRESSION_BODY
CONST Int type=kotlin.Int value=42
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-testMember2> visibility:public modality:FINAL <> ($this:Host) returnType:Int flags:
@@ -84,7 +84,7 @@ FILE fqName:<root> fileName:/defaultPropertyAccessors.kt
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='InPrimaryCtor'
PROPERTY name:testInPrimaryCtor1 type:T visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:testInPrimaryCtor1 type:T visibility:public
FIELD PROPERTY_BACKING_FIELD name:testInPrimaryCtor1 type:T visibility:public flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter testInPrimaryCtor1: T' type=T origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-testInPrimaryCtor1> visibility:public modality:FINAL <> ($this:InPrimaryCtor<T>) returnType:T flags:
@@ -94,7 +94,7 @@ FILE fqName:<root> fileName:/defaultPropertyAccessors.kt
GET_FIELD 'testInPrimaryCtor1: T' type=T origin=null
receiver: GET_VAR 'this@InPrimaryCtor: InPrimaryCtor<T>' type=InPrimaryCtor<T> origin=null
PROPERTY name:testInPrimaryCtor2 type:kotlin.Int visibility:public modality:FINAL flags:var
FIELD PROPERTY_BACKING_FIELD name:testInPrimaryCtor2 type:kotlin.Int visibility:public
FIELD PROPERTY_BACKING_FIELD name:testInPrimaryCtor2 type:kotlin.Int visibility:public flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter testInPrimaryCtor2: Int = ...' type=kotlin.Int origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-testInPrimaryCtor2> visibility:public modality:FINAL <> ($this:InPrimaryCtor<T>) returnType:Int flags:
@@ -44,7 +44,7 @@ FILE fqName:<root> fileName:/delegatedMembers.kt
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='Test'
FIELD DELEGATE name:Test$IBase$delegate type:IBase<TT> visibility:private
FIELD DELEGATE name:Test$IBase$delegate type:IBase<TT> visibility:private flags:final
EXPRESSION_BODY
GET_VAR 'value-parameter impl: IBase<TT>' type=IBase<TT> origin=null
FUN DELEGATED_MEMBER name:qux visibility:public modality:OPEN <X> ($this:Test<TT>, t:TT, x:X) returnType:Unit flags:
@@ -1,6 +1,6 @@
FILE fqName:<root> fileName:/lambdas.kt
PROPERTY name:test1 type:(kotlin.String) -> kotlin.String visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:test1 type:(kotlin.String) -> kotlin.String visibility:public
FIELD PROPERTY_BACKING_FIELD name:test1 type:(kotlin.String) -> kotlin.String visibility:public flags:final
EXPRESSION_BODY
BLOCK type=(kotlin.String) -> kotlin.String origin=LAMBDA
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> (it:kotlin.String) returnType:String flags:
@@ -14,7 +14,7 @@ FILE fqName:<root> fileName:/lambdas.kt
RETURN type=kotlin.Nothing from='<get-test1>(): (String) -> String'
GET_FIELD 'test1: (String) -> String' type=(kotlin.String) -> kotlin.String origin=null
PROPERTY name:test2 type:kotlin.Any.(kotlin.Any) -> kotlin.Any visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:test2 type:kotlin.Any.(kotlin.Any) -> kotlin.Any visibility:public
FIELD PROPERTY_BACKING_FIELD name:test2 type:kotlin.Any.(kotlin.Any) -> kotlin.Any visibility:public flags:final
EXPRESSION_BODY
BLOCK type=kotlin.Any.(kotlin.Any) -> kotlin.Int origin=LAMBDA
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> ($receiver:kotlin.Any, it:kotlin.Any) returnType:Int flags:
@@ -30,7 +30,7 @@ FILE fqName:<root> fileName:/lambdas.kt
RETURN type=kotlin.Nothing from='<get-test2>(): Any.(Any) -> Any'
GET_FIELD 'test2: Any.(Any) -> Any' type=kotlin.Any.(kotlin.Any) -> kotlin.Any origin=null
PROPERTY name:test3 type:(kotlin.Int, kotlin.Int) -> kotlin.Unit visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:test3 type:(kotlin.Int, kotlin.Int) -> kotlin.Unit visibility:public
FIELD PROPERTY_BACKING_FIELD name:test3 type:(kotlin.Int, kotlin.Int) -> kotlin.Unit visibility:public flags:final
EXPRESSION_BODY
BLOCK type=(kotlin.Int, kotlin.Int) -> kotlin.Unit origin=LAMBDA
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> (i:kotlin.Int, j:kotlin.Int) returnType:Unit flags:
@@ -45,7 +45,7 @@ FILE fqName:<root> fileName:/lambdas.kt
RETURN type=kotlin.Nothing from='<get-test3>(): (Int, Int) -> Unit'
GET_FIELD 'test3: (Int, Int) -> Unit' type=(kotlin.Int, kotlin.Int) -> kotlin.Unit origin=null
PROPERTY name:test4 type:(kotlin.Int, kotlin.Int) -> kotlin.Unit visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:test4 type:(kotlin.Int, kotlin.Int) -> kotlin.Unit visibility:public
FIELD PROPERTY_BACKING_FIELD name:test4 type:(kotlin.Int, kotlin.Int) -> kotlin.Unit visibility:public flags:final
EXPRESSION_BODY
BLOCK type=(kotlin.Int, kotlin.Int) -> kotlin.Unit origin=ANONYMOUS_FUNCTION
FUN name:<no name provided> visibility:local modality:FINAL <> (i:kotlin.Int, j:kotlin.Int) returnType:Unit flags: