org.jetbrains.kotlin.types.expressions
Class BasicExpressionTypingVisitor
java.lang.Object
com.intellij.psi.PsiElementVisitor
org.jetbrains.kotlin.psi.KtVisitor<JetTypeInfo,ExpressionTypingContext>
org.jetbrains.kotlin.types.expressions.BasicExpressionTypingVisitor
public class BasicExpressionTypingVisitor
- extends KtVisitor<JetTypeInfo,ExpressionTypingContext>
| Fields inherited from class com.intellij.psi.PsiElementVisitor |
EMPTY_VISITOR |
|
Method Summary |
JetTypeInfo |
checkInExpression(KtElement callElement,
KtSimpleNameExpression operationSign,
ValueArgument leftArgument,
KtExpression right,
ExpressionTypingContext context)
|
boolean |
checkLValue(BindingTrace trace,
ExpressionTypingContext context,
KtExpression expression,
KtExpression rightHandSide)
|
KotlinType |
getDefaultType(com.intellij.psi.tree.IElementType constantType)
|
JetTypeInfo |
getTypeInfoForBinaryCall(Name name,
ExpressionTypingContext context,
KtBinaryExpression binaryExpression)
|
JetTypeInfo |
visitAnnotatedExpression(KtAnnotatedExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitAnnotatedExpression(KtAnnotatedExpression expression,
ExpressionTypingContext context,
boolean isStatement)
|
JetTypeInfo |
visitArrayAccessExpression(KtArrayAccessExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitBinaryExpression(KtBinaryExpression expression,
ExpressionTypingContext contextWithExpectedType)
|
JetTypeInfo |
visitBinaryWithTypeRHSExpression(KtBinaryExpressionWithTypeRHS expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitBlockExpression(KtBlockExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitCallableReferenceExpression(KtCallableReferenceExpression expression,
ExpressionTypingContext c)
|
JetTypeInfo |
visitCallExpression(KtCallExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitClassLiteralExpression(KtClassLiteralExpression expression,
ExpressionTypingContext c)
|
JetTypeInfo |
visitConstantExpression(KtConstantExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitDeclaration(KtDeclaration dcl,
ExpressionTypingContext context)
|
JetTypeInfo |
visitJetElement(KtElement element,
ExpressionTypingContext context)
|
JetTypeInfo |
visitLabeledExpression(KtLabeledExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitLabeledExpression(KtLabeledExpression expression,
ExpressionTypingContext context,
boolean isStatement)
|
JetTypeInfo |
visitObjectLiteralExpression(KtObjectLiteralExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitParenthesizedExpression(KtParenthesizedExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitQualifiedExpression(KtQualifiedExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitRootPackageExpression(KtRootPackageExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitSimpleNameExpression(KtSimpleNameExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitStringTemplateExpression(KtStringTemplateExpression expression,
ExpressionTypingContext contextWithExpectedType)
|
JetTypeInfo |
visitSuperExpression(KtSuperExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitThisExpression(KtThisExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitUnaryExpression(KtUnaryExpression expression,
ExpressionTypingContext contextWithExpectedType)
|
| Methods inherited from class org.jetbrains.kotlin.psi.KtVisitor |
visitAnnotation, visitAnnotationEntry, visitAnnotationUseSiteTarget, visitAnonymousInitializer, visitArgument, visitBlockStringTemplateEntry, visitBreakExpression, visitCatchSection, visitClass, visitClassBody, visitClassOrObject, visitConstructorCalleeExpression, visitConstructorDelegationCall, visitContinueExpression, visitDelegationByExpressionSpecifier, visitDelegationSpecifier, visitDelegationSpecifierList, visitDelegationToSuperCallSpecifier, visitDelegationToSuperClassSpecifier, visitDotQualifiedExpression, visitDoubleColonExpression, visitDoWhileExpression, visitDynamicType, visitEnumEntry, visitEscapeStringTemplateEntry, visitExpression, visitExpressionWithLabel, visitFileAnnotationList, visitFinallySection, visitForExpression, visitFunctionLiteralExpression, visitFunctionType, visitIfExpression, visitImportDirective, visitImportList, visitInitializerList, visitIsExpression, visitJetFile, visitLiteralStringTemplateEntry, visitLoopExpression, visitModifierList, visitMultiDeclaration, visitMultiDeclarationEntry, visitNamedDeclaration, visitNamedFunction, visitNullableType, visitObjectDeclaration, visitObjectDeclarationName, visitPackageDirective, visitParameter, visitParameterList, visitPostfixExpression, visitPrefixExpression, visitPrimaryConstructor, visitProperty, visitPropertyAccessor, visitPropertyDelegate, visitReferenceExpression, visitReturnExpression, visitSafeQualifiedExpression, visitScript, visitSecondaryConstructor, visitSelfType, visitSimpleNameStringTemplateEntry, visitStringTemplateEntry, visitStringTemplateEntryWithExpression, visitThrowExpression, visitTryExpression, visitTypeArgumentList, visitTypeConstraint, visitTypeConstraintList, visitTypedef, visitTypeParameter, visitTypeParameterList, visitTypeProjection, visitTypeReference, visitUserType, visitValueArgumentList, visitWhenConditionInRange, visitWhenConditionIsPattern, visitWhenConditionWithExpression, visitWhenEntry, visitWhenExpression, visitWhileExpression |
| Methods inherited from class com.intellij.psi.PsiElementVisitor |
visitBinaryFile, visitComment, visitDirectory, visitElement, visitErrorElement, visitFile, visitOuterLanguageElement, visitPlainText, visitPlainTextFile, visitWhiteSpace |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
facade
protected final org.jetbrains.kotlin.types.expressions.ExpressionTypingInternals facade
components
protected final ExpressionTypingComponents components
BasicExpressionTypingVisitor
protected BasicExpressionTypingVisitor(@NotNull
org.jetbrains.kotlin.types.expressions.ExpressionTypingInternals facade)
visitSimpleNameExpression
public JetTypeInfo visitSimpleNameExpression(@NotNull
KtSimpleNameExpression expression,
ExpressionTypingContext context)
- Overrides:
visitSimpleNameExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitParenthesizedExpression
public JetTypeInfo visitParenthesizedExpression(@NotNull
KtParenthesizedExpression expression,
ExpressionTypingContext context)
- Overrides:
visitParenthesizedExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitConstantExpression
public JetTypeInfo visitConstantExpression(@NotNull
KtConstantExpression expression,
ExpressionTypingContext context)
- Overrides:
visitConstantExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
getDefaultType
@NotNull
public KotlinType getDefaultType(com.intellij.psi.tree.IElementType constantType)
visitBinaryWithTypeRHSExpression
public JetTypeInfo visitBinaryWithTypeRHSExpression(@NotNull
KtBinaryExpressionWithTypeRHS expression,
ExpressionTypingContext context)
- Overrides:
visitBinaryWithTypeRHSExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitThisExpression
public JetTypeInfo visitThisExpression(@NotNull
KtThisExpression expression,
ExpressionTypingContext context)
- Overrides:
visitThisExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitSuperExpression
public JetTypeInfo visitSuperExpression(@NotNull
KtSuperExpression expression,
ExpressionTypingContext context)
- Overrides:
visitSuperExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitBlockExpression
public JetTypeInfo visitBlockExpression(@NotNull
KtBlockExpression expression,
ExpressionTypingContext context)
- Overrides:
visitBlockExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitClassLiteralExpression
public JetTypeInfo visitClassLiteralExpression(@NotNull
KtClassLiteralExpression expression,
ExpressionTypingContext c)
- Overrides:
visitClassLiteralExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitCallableReferenceExpression
public JetTypeInfo visitCallableReferenceExpression(@NotNull
KtCallableReferenceExpression expression,
ExpressionTypingContext c)
- Overrides:
visitCallableReferenceExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitObjectLiteralExpression
public JetTypeInfo visitObjectLiteralExpression(@NotNull
KtObjectLiteralExpression expression,
ExpressionTypingContext context)
- Overrides:
visitObjectLiteralExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitQualifiedExpression
public JetTypeInfo visitQualifiedExpression(@NotNull
KtQualifiedExpression expression,
ExpressionTypingContext context)
- Overrides:
visitQualifiedExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitCallExpression
public JetTypeInfo visitCallExpression(@NotNull
KtCallExpression expression,
ExpressionTypingContext context)
- Overrides:
visitCallExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitUnaryExpression
public JetTypeInfo visitUnaryExpression(@NotNull
KtUnaryExpression expression,
ExpressionTypingContext contextWithExpectedType)
- Overrides:
visitUnaryExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitLabeledExpression
public JetTypeInfo visitLabeledExpression(@NotNull
KtLabeledExpression expression,
ExpressionTypingContext context)
- Overrides:
visitLabeledExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitLabeledExpression
@NotNull
public JetTypeInfo visitLabeledExpression(@NotNull
KtLabeledExpression expression,
@NotNull
ExpressionTypingContext context,
boolean isStatement)
checkLValue
public boolean checkLValue(@NotNull
BindingTrace trace,
@NotNull
ExpressionTypingContext context,
@NotNull
KtExpression expression,
@Nullable
KtExpression rightHandSide)
- Returns:
true iff expression can be assigned to
visitBinaryExpression
public JetTypeInfo visitBinaryExpression(@NotNull
KtBinaryExpression expression,
ExpressionTypingContext contextWithExpectedType)
- Overrides:
visitBinaryExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
checkInExpression
@NotNull
public JetTypeInfo checkInExpression(@NotNull
KtElement callElement,
@NotNull
KtSimpleNameExpression operationSign,
@NotNull
ValueArgument leftArgument,
@Nullable
KtExpression right,
@NotNull
ExpressionTypingContext context)
visitArrayAccessExpression
public JetTypeInfo visitArrayAccessExpression(@NotNull
KtArrayAccessExpression expression,
ExpressionTypingContext context)
- Overrides:
visitArrayAccessExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
getTypeInfoForBinaryCall
@NotNull
public JetTypeInfo getTypeInfoForBinaryCall(@NotNull
Name name,
@NotNull
ExpressionTypingContext context,
@NotNull
KtBinaryExpression binaryExpression)
visitDeclaration
public JetTypeInfo visitDeclaration(@NotNull
KtDeclaration dcl,
ExpressionTypingContext context)
- Overrides:
visitDeclaration in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitRootPackageExpression
public JetTypeInfo visitRootPackageExpression(@NotNull
KtRootPackageExpression expression,
ExpressionTypingContext context)
- Overrides:
visitRootPackageExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitStringTemplateExpression
public JetTypeInfo visitStringTemplateExpression(@NotNull
KtStringTemplateExpression expression,
ExpressionTypingContext contextWithExpectedType)
- Overrides:
visitStringTemplateExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitAnnotatedExpression
public JetTypeInfo visitAnnotatedExpression(@NotNull
KtAnnotatedExpression expression,
ExpressionTypingContext context)
- Overrides:
visitAnnotatedExpression in class KtVisitor<JetTypeInfo,ExpressionTypingContext>
visitAnnotatedExpression
public JetTypeInfo visitAnnotatedExpression(KtAnnotatedExpression expression,
ExpressionTypingContext context,
boolean isStatement)
visitJetElement
public JetTypeInfo visitJetElement(@NotNull
KtElement element,
ExpressionTypingContext context)
- Overrides:
visitJetElement in class KtVisitor<JetTypeInfo,ExpressionTypingContext>