org.jetbrains.kotlin.types.expressions
Class ExpressionTypingVisitorDispatcher
java.lang.Object
com.intellij.psi.PsiElementVisitor
org.jetbrains.kotlin.psi.JetVisitor<JetTypeInfo,ExpressionTypingContext>
org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher
- Direct Known Subclasses:
- ExpressionTypingVisitorDispatcher.ForBlock, ExpressionTypingVisitorDispatcher.ForDeclarations
public abstract class ExpressionTypingVisitorDispatcher
- 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)
|
void |
checkStatementType(JetExpression expression,
ExpressionTypingContext context)
|
protected ExpressionTypingVisitorForStatements |
createStatementVisitor(ExpressionTypingContext context)
|
ExpressionTypingComponents |
getComponents()
|
protected abstract ExpressionTypingVisitorForStatements |
getStatementVisitor(ExpressionTypingContext context)
|
JetTypeInfo |
getTypeInfo(JetExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
getTypeInfo(JetExpression expression,
ExpressionTypingContext context,
boolean isStatement)
|
JetTypeInfo |
safeGetTypeInfo(JetExpression expression,
ExpressionTypingContext context)
|
JetTypeInfo |
visitAnnotatedExpression(JetAnnotatedExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitArrayAccessExpression(JetArrayAccessExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitBinaryExpression(JetBinaryExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitBinaryWithTypeRHSExpression(JetBinaryExpressionWithTypeRHS expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitBlockExpression(JetBlockExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitBreakExpression(JetBreakExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitCallableReferenceExpression(JetCallableReferenceExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitCallExpression(JetCallExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitClassLiteralExpression(JetClassLiteralExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitConstantExpression(JetConstantExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitContinueExpression(JetContinueExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitDeclaration(JetDeclaration dcl,
ExpressionTypingContext data)
|
JetTypeInfo |
visitDoWhileExpression(JetDoWhileExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitForExpression(JetForExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitFunctionLiteralExpression(JetFunctionLiteralExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitIfExpression(JetIfExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitIsExpression(JetIsExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitJetElement(JetElement element,
ExpressionTypingContext data)
|
JetTypeInfo |
visitLabeledExpression(JetLabeledExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitNamedFunction(JetNamedFunction function,
ExpressionTypingContext data)
|
JetTypeInfo |
visitObjectLiteralExpression(JetObjectLiteralExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitParenthesizedExpression(JetParenthesizedExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitQualifiedExpression(JetQualifiedExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitReturnExpression(JetReturnExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitRootPackageExpression(JetRootPackageExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitSimpleNameExpression(JetSimpleNameExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitStringTemplateExpression(JetStringTemplateExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitSuperExpression(JetSuperExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitThisExpression(JetThisExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitThrowExpression(JetThrowExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitTryExpression(JetTryExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitUnaryExpression(JetUnaryExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitWhenExpression(JetWhenExpression expression,
ExpressionTypingContext data)
|
JetTypeInfo |
visitWhileExpression(JetWhileExpression expression,
ExpressionTypingContext data)
|
| Methods inherited from class org.jetbrains.kotlin.psi.JetVisitor |
visitAnnotation, visitAnnotationEntry, visitAnnotationUseSiteTarget, visitAnonymousInitializer, visitArgument, visitBlockStringTemplateEntry, visitCatchSection, visitClass, visitClassBody, visitClassOrObject, visitConstructorCalleeExpression, visitConstructorDelegationCall, visitDelegationByExpressionSpecifier, visitDelegationSpecifier, visitDelegationSpecifierList, visitDelegationToSuperCallSpecifier, visitDelegationToSuperClassSpecifier, visitDotQualifiedExpression, visitDoubleColonExpression, visitDynamicType, visitEnumEntry, visitEscapeStringTemplateEntry, visitExpression, visitExpressionWithLabel, visitFileAnnotationList, visitFinallySection, visitFunctionType, visitImportDirective, visitImportList, visitInitializerList, visitJetFile, visitLiteralStringTemplateEntry, visitLoopExpression, visitModifierList, visitMultiDeclaration, visitMultiDeclarationEntry, visitNamedDeclaration, visitNullableType, visitObjectDeclaration, visitObjectDeclarationName, visitPackageDirective, visitParameter, visitParameterList, visitPostfixExpression, visitPrefixExpression, visitPrimaryConstructor, visitProperty, visitPropertyAccessor, visitPropertyDelegate, visitReferenceExpression, visitSafeQualifiedExpression, visitScript, visitSecondaryConstructor, visitSelfType, visitSimpleNameStringTemplateEntry, visitStringTemplateEntry, visitStringTemplateEntryWithExpression, visitTypeArgumentList, visitTypeConstraint, visitTypeConstraintList, visitTypedef, visitTypeParameter, visitTypeParameterList, visitTypeProjection, visitTypeReference, visitUserType, visitValueArgumentList, visitWhenConditionInRange, visitWhenConditionIsPattern, visitWhenConditionWithExpression, visitWhenEntry |
| 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 |
typeInfoPerfCounter
public static final PerformanceCounter typeInfoPerfCounter
basic
protected final BasicExpressionTypingVisitor basic
functions
protected final FunctionsTypingVisitor functions
controlStructures
protected final ControlStructureTypingVisitor controlStructures
patterns
protected final PatternMatchingTypingVisitor patterns
getStatementVisitor
protected abstract ExpressionTypingVisitorForStatements getStatementVisitor(@NotNull
ExpressionTypingContext context)
getComponents
@NotNull
public ExpressionTypingComponents getComponents()
checkInExpression
@NotNull
public JetTypeInfo checkInExpression(@NotNull
JetElement callElement,
@NotNull
JetSimpleNameExpression operationSign,
@NotNull
ValueArgument leftArgument,
@Nullable
JetExpression right,
@NotNull
ExpressionTypingContext context)
safeGetTypeInfo
@NotNull
public final JetTypeInfo safeGetTypeInfo(@NotNull
JetExpression expression,
ExpressionTypingContext context)
getTypeInfo
@NotNull
public final JetTypeInfo getTypeInfo(@NotNull
JetExpression expression,
ExpressionTypingContext context)
getTypeInfo
@NotNull
public final JetTypeInfo getTypeInfo(@NotNull
JetExpression expression,
ExpressionTypingContext context,
boolean isStatement)
createStatementVisitor
protected ExpressionTypingVisitorForStatements createStatementVisitor(ExpressionTypingContext context)
checkStatementType
public void checkStatementType(@NotNull
JetExpression expression,
ExpressionTypingContext context)
visitFunctionLiteralExpression
public JetTypeInfo visitFunctionLiteralExpression(@NotNull
JetFunctionLiteralExpression expression,
ExpressionTypingContext data)
- Overrides:
visitFunctionLiteralExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitNamedFunction
public JetTypeInfo visitNamedFunction(@NotNull
JetNamedFunction function,
ExpressionTypingContext data)
- Overrides:
visitNamedFunction in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitThrowExpression
public JetTypeInfo visitThrowExpression(@NotNull
JetThrowExpression expression,
ExpressionTypingContext data)
- Overrides:
visitThrowExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitReturnExpression
public JetTypeInfo visitReturnExpression(@NotNull
JetReturnExpression expression,
ExpressionTypingContext data)
- Overrides:
visitReturnExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitContinueExpression
public JetTypeInfo visitContinueExpression(@NotNull
JetContinueExpression expression,
ExpressionTypingContext data)
- Overrides:
visitContinueExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitIfExpression
public JetTypeInfo visitIfExpression(@NotNull
JetIfExpression expression,
ExpressionTypingContext data)
- Overrides:
visitIfExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitTryExpression
public JetTypeInfo visitTryExpression(@NotNull
JetTryExpression expression,
ExpressionTypingContext data)
- Overrides:
visitTryExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitForExpression
public JetTypeInfo visitForExpression(@NotNull
JetForExpression expression,
ExpressionTypingContext data)
- Overrides:
visitForExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitWhileExpression
public JetTypeInfo visitWhileExpression(@NotNull
JetWhileExpression expression,
ExpressionTypingContext data)
- Overrides:
visitWhileExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitDoWhileExpression
public JetTypeInfo visitDoWhileExpression(@NotNull
JetDoWhileExpression expression,
ExpressionTypingContext data)
- Overrides:
visitDoWhileExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitBreakExpression
public JetTypeInfo visitBreakExpression(@NotNull
JetBreakExpression expression,
ExpressionTypingContext data)
- Overrides:
visitBreakExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitIsExpression
public JetTypeInfo visitIsExpression(@NotNull
JetIsExpression expression,
ExpressionTypingContext data)
- Overrides:
visitIsExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitWhenExpression
public JetTypeInfo visitWhenExpression(@NotNull
JetWhenExpression expression,
ExpressionTypingContext data)
- Overrides:
visitWhenExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitSimpleNameExpression
public JetTypeInfo visitSimpleNameExpression(@NotNull
JetSimpleNameExpression expression,
ExpressionTypingContext data)
- Overrides:
visitSimpleNameExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitParenthesizedExpression
public JetTypeInfo visitParenthesizedExpression(@NotNull
JetParenthesizedExpression expression,
ExpressionTypingContext data)
- Overrides:
visitParenthesizedExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitConstantExpression
public JetTypeInfo visitConstantExpression(@NotNull
JetConstantExpression expression,
ExpressionTypingContext data)
- Overrides:
visitConstantExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitBinaryWithTypeRHSExpression
public JetTypeInfo visitBinaryWithTypeRHSExpression(@NotNull
JetBinaryExpressionWithTypeRHS expression,
ExpressionTypingContext data)
- Overrides:
visitBinaryWithTypeRHSExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitThisExpression
public JetTypeInfo visitThisExpression(@NotNull
JetThisExpression expression,
ExpressionTypingContext data)
- Overrides:
visitThisExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitSuperExpression
public JetTypeInfo visitSuperExpression(@NotNull
JetSuperExpression expression,
ExpressionTypingContext data)
- Overrides:
visitSuperExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitBlockExpression
public JetTypeInfo visitBlockExpression(@NotNull
JetBlockExpression expression,
ExpressionTypingContext data)
- Overrides:
visitBlockExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitClassLiteralExpression
public JetTypeInfo visitClassLiteralExpression(@NotNull
JetClassLiteralExpression expression,
ExpressionTypingContext data)
- Overrides:
visitClassLiteralExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitCallableReferenceExpression
public JetTypeInfo visitCallableReferenceExpression(@NotNull
JetCallableReferenceExpression expression,
ExpressionTypingContext data)
- Overrides:
visitCallableReferenceExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitObjectLiteralExpression
public JetTypeInfo visitObjectLiteralExpression(@NotNull
JetObjectLiteralExpression expression,
ExpressionTypingContext data)
- Overrides:
visitObjectLiteralExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitQualifiedExpression
public JetTypeInfo visitQualifiedExpression(@NotNull
JetQualifiedExpression expression,
ExpressionTypingContext data)
- Overrides:
visitQualifiedExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitCallExpression
public JetTypeInfo visitCallExpression(@NotNull
JetCallExpression expression,
ExpressionTypingContext data)
- Overrides:
visitCallExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitUnaryExpression
public JetTypeInfo visitUnaryExpression(@NotNull
JetUnaryExpression expression,
ExpressionTypingContext data)
- Overrides:
visitUnaryExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitLabeledExpression
public JetTypeInfo visitLabeledExpression(@NotNull
JetLabeledExpression expression,
ExpressionTypingContext data)
- Overrides:
visitLabeledExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitBinaryExpression
public JetTypeInfo visitBinaryExpression(@NotNull
JetBinaryExpression expression,
ExpressionTypingContext data)
- Overrides:
visitBinaryExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitArrayAccessExpression
public JetTypeInfo visitArrayAccessExpression(@NotNull
JetArrayAccessExpression expression,
ExpressionTypingContext data)
- Overrides:
visitArrayAccessExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitDeclaration
public JetTypeInfo visitDeclaration(@NotNull
JetDeclaration dcl,
ExpressionTypingContext data)
- Overrides:
visitDeclaration in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitRootPackageExpression
public JetTypeInfo visitRootPackageExpression(@NotNull
JetRootPackageExpression expression,
ExpressionTypingContext data)
- Overrides:
visitRootPackageExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitStringTemplateExpression
public JetTypeInfo visitStringTemplateExpression(@NotNull
JetStringTemplateExpression expression,
ExpressionTypingContext data)
- Overrides:
visitStringTemplateExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitAnnotatedExpression
public JetTypeInfo visitAnnotatedExpression(@NotNull
JetAnnotatedExpression expression,
ExpressionTypingContext data)
- Overrides:
visitAnnotatedExpression in class JetVisitor<JetTypeInfo,ExpressionTypingContext>
visitJetElement
public JetTypeInfo visitJetElement(@NotNull
JetElement element,
ExpressionTypingContext data)
- Overrides:
visitJetElement in class JetVisitor<JetTypeInfo,ExpressionTypingContext>