org.jetbrains.kotlin.types.expressions
Class BasicExpressionTypingVisitor
java.lang.Object
com.intellij.psi.PsiElementVisitor
org.jetbrains.kotlin.psi.JetVisitor<JetTypeInfo,ExpressionTypingContext>
org.jetbrains.kotlin.types.expressions.BasicExpressionTypingVisitor
public class BasicExpressionTypingVisitor
- extends JetVisitor<JetTypeInfo,ExpressionTypingContext>
| Fields inherited from class com.intellij.psi.PsiElementVisitor |
EMPTY_VISITOR |
|
Method Summary |
JetTypeInfo |
checkInExpression(JetElement callElement,
JetSimpleNameExpression operationSign,
ValueArgument leftArgument,
JetExpression right,
ExpressionTypingContext context)
|
boolean |
checkLValue(BindingTrace trace,
ExpressionTypingContext context,
JetExpression expression,
JetExpression rightHandSide)
|
JetType |
getDefaultType(com.intellij.psi.tree.IElementType constantType)
|
JetTypeInfo |
getTypeInfoForBinaryCall(Name name,
ExpressionTypingContext context,
JetBinaryExpression binaryExpression)
|
JetTypeInfo |
visitAnnotatedExpression(JetAnnotatedExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitAnnotatedExpression(JetAnnotatedExpression expression,
ExpressionTypingContext context,
boolean isStatement)
|
JetTypeInfo |
visitArrayAccessExpression(JetArrayAccessExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitBinaryExpression(JetBinaryExpression expression,
ExpressionTypingContext contextWithExpectedType)
|
JetTypeInfo |
visitBinaryWithTypeRHSExpression(JetBinaryExpressionWithTypeRHS expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitBlockExpression(JetBlockExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitCallableReferenceExpression(JetCallableReferenceExpression expression,
ExpressionTypingContext c)
|
JetTypeInfo |
visitCallExpression(JetCallExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitClassLiteralExpression(JetClassLiteralExpression expression,
ExpressionTypingContext c)
|
JetTypeInfo |
visitConstantExpression(JetConstantExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitDeclaration(JetDeclaration dcl,
ExpressionTypingContext context)
|
JetTypeInfo |
visitJetElement(JetElement element,
ExpressionTypingContext context)
|
JetTypeInfo |
visitLabeledExpression(JetLabeledExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitLabeledExpression(JetLabeledExpression expression,
ExpressionTypingContext context,
boolean isStatement)
|
JetTypeInfo |
visitObjectLiteralExpression(JetObjectLiteralExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitParenthesizedExpression(JetParenthesizedExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitQualifiedExpression(JetQualifiedExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitRootPackageExpression(JetRootPackageExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitSimpleNameExpression(JetSimpleNameExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitStringTemplateExpression(JetStringTemplateExpression expression,
ExpressionTypingContext contextWithExpectedType)
|
JetTypeInfo |
visitSuperExpression(JetSuperExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitThisExpression(JetThisExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitUnaryExpression(JetUnaryExpression expression,
ExpressionTypingContext contextWithExpectedType)
|
| Methods inherited from class org.jetbrains.kotlin.psi.JetVisitor |
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
JetSimpleNameExpression expression,
ExpressionTypingContext context)
- Overrides:
visitSimpleNameExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitParenthesizedExpression
public JetTypeInfo visitParenthesizedExpression(@NotNull
JetParenthesizedExpression expression,
ExpressionTypingContext context)
- Overrides:
visitParenthesizedExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitConstantExpression
public JetTypeInfo visitConstantExpression(@NotNull
JetConstantExpression expression,
ExpressionTypingContext context)
- Overrides:
visitConstantExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
getDefaultType
@NotNull
public JetType getDefaultType(com.intellij.psi.tree.IElementType constantType)
visitBinaryWithTypeRHSExpression
public JetTypeInfo visitBinaryWithTypeRHSExpression(@NotNull
JetBinaryExpressionWithTypeRHS expression,
ExpressionTypingContext context)
- Overrides:
visitBinaryWithTypeRHSExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitThisExpression
public JetTypeInfo visitThisExpression(@NotNull
JetThisExpression expression,
ExpressionTypingContext context)
- Overrides:
visitThisExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitSuperExpression
public JetTypeInfo visitSuperExpression(@NotNull
JetSuperExpression expression,
ExpressionTypingContext context)
- Overrides:
visitSuperExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitBlockExpression
public JetTypeInfo visitBlockExpression(@NotNull
JetBlockExpression expression,
ExpressionTypingContext context)
- Overrides:
visitBlockExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitClassLiteralExpression
public JetTypeInfo visitClassLiteralExpression(@NotNull
JetClassLiteralExpression expression,
ExpressionTypingContext c)
- Overrides:
visitClassLiteralExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitCallableReferenceExpression
public JetTypeInfo visitCallableReferenceExpression(@NotNull
JetCallableReferenceExpression expression,
ExpressionTypingContext c)
- Overrides:
visitCallableReferenceExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitObjectLiteralExpression
public JetTypeInfo visitObjectLiteralExpression(@NotNull
JetObjectLiteralExpression expression,
ExpressionTypingContext context)
- Overrides:
visitObjectLiteralExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitQualifiedExpression
public JetTypeInfo visitQualifiedExpression(@NotNull
JetQualifiedExpression expression,
ExpressionTypingContext context)
- Overrides:
visitQualifiedExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitCallExpression
public JetTypeInfo visitCallExpression(@NotNull
JetCallExpression expression,
ExpressionTypingContext context)
- Overrides:
visitCallExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitUnaryExpression
public JetTypeInfo visitUnaryExpression(@NotNull
JetUnaryExpression expression,
ExpressionTypingContext contextWithExpectedType)
- Overrides:
visitUnaryExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitLabeledExpression
public JetTypeInfo visitLabeledExpression(@NotNull
JetLabeledExpression expression,
ExpressionTypingContext context)
- Overrides:
visitLabeledExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitLabeledExpression
@NotNull
public JetTypeInfo visitLabeledExpression(@NotNull
JetLabeledExpression expression,
@NotNull
ExpressionTypingContext context,
boolean isStatement)
checkLValue
public boolean checkLValue(@NotNull
BindingTrace trace,
@NotNull
ExpressionTypingContext context,
@NotNull
JetExpression expression,
@Nullable
JetExpression rightHandSide)
- Returns:
true iff expression can be assigned to
visitBinaryExpression
public JetTypeInfo visitBinaryExpression(@NotNull
JetBinaryExpression expression,
ExpressionTypingContext contextWithExpectedType)
- Overrides:
visitBinaryExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
checkInExpression
@NotNull
public JetTypeInfo checkInExpression(@NotNull
JetElement callElement,
@NotNull
JetSimpleNameExpression operationSign,
@NotNull
ValueArgument leftArgument,
@Nullable
JetExpression right,
@NotNull
ExpressionTypingContext context)
visitArrayAccessExpression
public JetTypeInfo visitArrayAccessExpression(@NotNull
JetArrayAccessExpression expression,
ExpressionTypingContext context)
- Overrides:
visitArrayAccessExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
getTypeInfoForBinaryCall
@NotNull
public JetTypeInfo getTypeInfoForBinaryCall(@NotNull
Name name,
@NotNull
ExpressionTypingContext context,
@NotNull
JetBinaryExpression binaryExpression)
visitDeclaration
public JetTypeInfo visitDeclaration(@NotNull
JetDeclaration dcl,
ExpressionTypingContext context)
- Overrides:
visitDeclaration in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitRootPackageExpression
public JetTypeInfo visitRootPackageExpression(@NotNull
JetRootPackageExpression expression,
ExpressionTypingContext context)
- Overrides:
visitRootPackageExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitStringTemplateExpression
public JetTypeInfo visitStringTemplateExpression(@NotNull
JetStringTemplateExpression expression,
ExpressionTypingContext contextWithExpectedType)
- Overrides:
visitStringTemplateExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitAnnotatedExpression
public JetTypeInfo visitAnnotatedExpression(@NotNull
JetAnnotatedExpression expression,
ExpressionTypingContext context)
- Overrides:
visitAnnotatedExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitAnnotatedExpression
public JetTypeInfo visitAnnotatedExpression(JetAnnotatedExpression expression,
ExpressionTypingContext context,
boolean isStatement)
visitJetElement
public JetTypeInfo visitJetElement(@NotNull
JetElement element,
ExpressionTypingContext context)
- Overrides:
visitJetElement in class JetVisitor<JetTypeInfo,ExpressionTypingContext>