KtFile: PropertyAccessorsContracts.kt PACKAGE_DIRECTIVE IMPORT_LIST CLASS PsiElement(class)('class') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('MyClass') PsiWhiteSpace(' ') CLASS_BODY PsiElement(LBRACE)('{') PsiWhiteSpace('\n ') PROPERTY PsiElement(var)('var') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('myInt') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') INTEGER_CONSTANT PsiElement(INTEGER_LITERAL)('0') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR PsiElement(get)('get') PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(contract)('contract') PsiWhiteSpace(' ') CONTRACT_EFFECT_LIST PsiElement(LBRACKET)('[') CONTRACT_EFFECT CALL_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('returnsNotNull') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') INTEGER_CONSTANT PsiElement(INTEGER_LITERAL)('1') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR PsiElement(set)('set') PsiElement(LPAR)('(') VALUE_PARAMETER_LIST VALUE_PARAMETER PsiElement(IDENTIFIER)('value') PsiElement(RPAR)(')') PsiWhiteSpace(' ') BLOCK PsiElement(LBRACE)('{') PsiWhiteSpace('\n ') BINARY_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('field') PsiWhiteSpace(' ') OPERATION_REFERENCE PsiElement(EQ)('=') PsiWhiteSpace(' ') BINARY_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('value') PsiWhiteSpace(' ') OPERATION_REFERENCE PsiElement(MUL)('*') PsiWhiteSpace(' ') INTEGER_CONSTANT PsiElement(INTEGER_LITERAL)('10') PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n') CLASS PsiElement(class)('class') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('AnotherClass') PRIMARY_CONSTRUCTOR VALUE_PARAMETER_LIST PsiElement(LPAR)('(') VALUE_PARAMETER PsiElement(IDENTIFIER)('multiplier') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') CLASS_BODY PsiElement(LBRACE)('{') PsiWhiteSpace('\n ') PROPERTY PsiElement(var)('var') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('anotherInt') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') INTEGER_CONSTANT PsiElement(INTEGER_LITERAL)('0') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR PsiElement(get)('get') PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(contract)('contract') PsiWhiteSpace(' ') CONTRACT_EFFECT_LIST PsiElement(LBRACKET)('[') CONTRACT_EFFECT CALL_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('returnsNotNull') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') INTEGER_CONSTANT PsiElement(INTEGER_LITERAL)('1') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR PsiElement(set)('set') PsiElement(LPAR)('(') VALUE_PARAMETER_LIST VALUE_PARAMETER PsiElement(IDENTIFIER)('value') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(contract)('contract') PsiWhiteSpace(' ') CONTRACT_EFFECT_LIST PsiElement(LBRACKET)('[') CONTRACT_EFFECT CALL_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('returns') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') BLOCK PsiElement(LBRACE)('{') PsiWhiteSpace('\n ') BINARY_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('field') PsiWhiteSpace(' ') OPERATION_REFERENCE PsiElement(EQ)('=') PsiWhiteSpace(' ') BINARY_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('value') PsiWhiteSpace(' ') OPERATION_REFERENCE PsiElement(MUL)('*') PsiWhiteSpace(' ') REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('multiplier') PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n') CLASS PsiElement(class)('class') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('SomeClass') PRIMARY_CONSTRUCTOR VALUE_PARAMETER_LIST PsiElement(LPAR)('(') VALUE_PARAMETER PsiElement(IDENTIFIER)('multiplier') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE NULLABLE_TYPE USER_TYPE REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(QUEST)('?') PsiElement(RPAR)(')') PsiWhiteSpace(' ') CLASS_BODY PsiElement(LBRACE)('{') PsiWhiteSpace('\n ') PROPERTY PsiElement(var)('var') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('someInt') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE USER_TYPE REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') INTEGER_CONSTANT PsiElement(INTEGER_LITERAL)('0') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR PsiElement(get)('get') PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(contract)('contract') PsiWhiteSpace(' ') CONTRACT_EFFECT_LIST PsiElement(LBRACKET)('[') CONTRACT_EFFECT CALL_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('returnsNotNull') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') INTEGER_CONSTANT PsiElement(INTEGER_LITERAL)('1') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR PsiElement(set)('set') PsiElement(LPAR)('(') VALUE_PARAMETER_LIST VALUE_PARAMETER PsiElement(IDENTIFIER)('value') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(contract)('contract') PsiWhiteSpace(' ') CONTRACT_EFFECT_LIST PsiElement(LBRACKET)('[') CONTRACT_EFFECT BINARY_EXPRESSION CALL_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('returns') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiWhiteSpace(' ') OPERATION_REFERENCE PsiElement(IDENTIFIER)('implies') PsiWhiteSpace(' ') PARENTHESIZED PsiElement(LPAR)('(') BINARY_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('value') PsiWhiteSpace(' ') OPERATION_REFERENCE PsiElement(EXCLEQ)('!=') PsiWhiteSpace(' ') NULL PsiElement(null)('null') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') BLOCK PsiElement(LBRACE)('{') PsiWhiteSpace('\n ') BINARY_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('value') PsiWhiteSpace(' ') OPERATION_REFERENCE PsiElement(ELVIS)('?:') PsiWhiteSpace(' ') THROW PsiElement(throw)('throw') PsiWhiteSpace(' ') CALL_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('NullArgumentException') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiWhiteSpace('\n ') BINARY_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('field') PsiWhiteSpace(' ') OPERATION_REFERENCE PsiElement(EQ)('=') PsiWhiteSpace(' ') REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('value') PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') PsiElement(RBRACE)('}')