/*
* Copyright 2010-2015 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.kotlin.psi.stubs.elements;
import com.intellij.psi.tree.
TokenSet;
import org.jetbrains.kotlin.psi.*;
public interface
KtStubElementTypes {
KtFileElementType FILE = new
KtFileElementType();
KtClassElementType CLASS = new
KtClassElementType("CLASS");
KtFunctionElementType FUNCTION = new
KtFunctionElementType("FUN");
KtPropertyElementType PROPERTY = new
KtPropertyElementType("PROPERTY");
KtPropertyAccessorElementType PROPERTY_ACCESSOR = new
KtPropertyAccessorElementType("PROPERTY_ACCESSOR");
KtTypeAliasElementType TYPEALIAS = new
KtTypeAliasElementType("TYPEALIAS");
KtClassElementType ENUM_ENTRY = new
KtClassElementType("ENUM_ENTRY");
KtObjectElementType OBJECT_DECLARATION = new
KtObjectElementType("OBJECT_DECLARATION");
KtPlaceHolderStubElementType<
KtClassInitializer>
CLASS_INITIALIZER =
new
KtPlaceHolderStubElementType<>("CLASS_INITIALIZER",
KtClassInitializer.class);
KtPlaceHolderStubElementType<
KtSecondaryConstructor>
SECONDARY_CONSTRUCTOR =
new
KtPlaceHolderStubElementType<>("SECONDARY_CONSTRUCTOR",
KtSecondaryConstructor.class);
KtPlaceHolderStubElementType<
KtPrimaryConstructor>
PRIMARY_CONSTRUCTOR =
new
KtPlaceHolderStubElementType<>("PRIMARY_CONSTRUCTOR",
KtPrimaryConstructor.class);
KtParameterElementType VALUE_PARAMETER = new
KtParameterElementType("VALUE_PARAMETER");
KtPlaceHolderStubElementType<
KtParameterList>
VALUE_PARAMETER_LIST =
new
KtPlaceHolderStubElementType<>("VALUE_PARAMETER_LIST",
KtParameterList.class);
KtTypeParameterElementType TYPE_PARAMETER = new
KtTypeParameterElementType("TYPE_PARAMETER");
KtPlaceHolderStubElementType<
KtTypeParameterList>
TYPE_PARAMETER_LIST =
new
KtPlaceHolderStubElementType<>("TYPE_PARAMETER_LIST",
KtTypeParameterList.class);
KtAnnotationEntryElementType ANNOTATION_ENTRY = new
KtAnnotationEntryElementType("ANNOTATION_ENTRY");
KtPlaceHolderStubElementType<
KtAnnotation>
ANNOTATION =
new
KtPlaceHolderStubElementType<>("ANNOTATION",
KtAnnotation.class);
KtAnnotationUseSiteTargetElementType ANNOTATION_TARGET = new
KtAnnotationUseSiteTargetElementType("ANNOTATION_TARGET");
KtPlaceHolderStubElementType<
KtClassBody>
CLASS_BODY =
new
KtPlaceHolderStubElementType<>("CLASS_BODY",
KtClassBody.class);
KtPlaceHolderStubElementType<
KtImportList>
IMPORT_LIST =
new
KtPlaceHolderStubElementType<>("IMPORT_LIST",
KtImportList.class);
KtPlaceHolderStubElementType<
KtFileAnnotationList>
FILE_ANNOTATION_LIST =
new
KtPlaceHolderStubElementType<>("FILE_ANNOTATION_LIST",
KtFileAnnotationList.class);
KtImportDirectiveElementType IMPORT_DIRECTIVE = new
KtImportDirectiveElementType("IMPORT_DIRECTIVE");
KtImportAliasElementType IMPORT_ALIAS = new
KtImportAliasElementType("IMPORT_ALIAS");
KtPlaceHolderStubElementType<
KtPackageDirective>
PACKAGE_DIRECTIVE =
new
KtPlaceHolderStubElementType<>("PACKAGE_DIRECTIVE",
KtPackageDirective.class);
KtModifierListElementType<
KtDeclarationModifierList>
MODIFIER_LIST =
new
KtModifierListElementType<>("MODIFIER_LIST",
KtDeclarationModifierList.class);
KtPlaceHolderStubElementType<
KtTypeConstraintList>
TYPE_CONSTRAINT_LIST =
new
KtPlaceHolderStubElementType<>("TYPE_CONSTRAINT_LIST",
KtTypeConstraintList.class);
KtPlaceHolderStubElementType<
KtTypeConstraint>
TYPE_CONSTRAINT =
new
KtPlaceHolderStubElementType<>("TYPE_CONSTRAINT",
KtTypeConstraint.class);
KtPlaceHolderStubElementType<
KtNullableType>
NULLABLE_TYPE =
new
KtPlaceHolderStubElementType<>("NULLABLE_TYPE",
KtNullableType.class);
KtPlaceHolderStubElementType<
KtTypeReference>
TYPE_REFERENCE =
new
KtPlaceHolderStubElementType<>("TYPE_REFERENCE",
KtTypeReference.class);
KtUserTypeElementType USER_TYPE = new
KtUserTypeElementType("USER_TYPE");
KtPlaceHolderStubElementType<
KtDynamicType>
DYNAMIC_TYPE =
new
KtPlaceHolderStubElementType<>("DYNAMIC_TYPE",
KtDynamicType.class);
KtPlaceHolderStubElementType<
KtFunctionType>
FUNCTION_TYPE =
new
KtPlaceHolderStubElementType<>("FUNCTION_TYPE",
KtFunctionType.class);
KtTypeProjectionElementType TYPE_PROJECTION = new
KtTypeProjectionElementType("TYPE_PROJECTION");
KtPlaceHolderStubElementType<
KtFunctionTypeReceiver>
FUNCTION_TYPE_RECEIVER =
new
KtPlaceHolderStubElementType<>("FUNCTION_TYPE_RECEIVER",
KtFunctionTypeReceiver.class);
KtNameReferenceExpressionElementType REFERENCE_EXPRESSION = new
KtNameReferenceExpressionElementType("REFERENCE_EXPRESSION");
KtDotQualifiedExpressionElementType DOT_QUALIFIED_EXPRESSION = new
KtDotQualifiedExpressionElementType("DOT_QUALIFIED_EXPRESSION");
KtEnumEntrySuperClassReferenceExpressionElementType
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION = new
KtEnumEntrySuperClassReferenceExpressionElementType("ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION");
KtPlaceHolderStubElementType<
KtTypeArgumentList>
TYPE_ARGUMENT_LIST =
new
KtPlaceHolderStubElementType<>("TYPE_ARGUMENT_LIST",
KtTypeArgumentList.class);
KtPlaceHolderStubElementType<
KtSuperTypeList>
SUPER_TYPE_LIST =
new
KtPlaceHolderStubElementType<>("SUPER_TYPE_LIST",
KtSuperTypeList.class);
KtPlaceHolderStubElementType<
KtInitializerList>
INITIALIZER_LIST =
new
KtPlaceHolderStubElementType<>("INITIALIZER_LIST",
KtInitializerList.class);
KtPlaceHolderStubElementType<
KtDelegatedSuperTypeEntry>
DELEGATED_SUPER_TYPE_ENTRY =
new
KtPlaceHolderStubElementType<>("DELEGATED_SUPER_TYPE_ENTRY",
KtDelegatedSuperTypeEntry.class);
KtPlaceHolderStubElementType<
KtSuperTypeCallEntry>
SUPER_TYPE_CALL_ENTRY =
new
KtPlaceHolderStubElementType<>("SUPER_TYPE_CALL_ENTRY",
KtSuperTypeCallEntry.class);
KtPlaceHolderStubElementType<
KtSuperTypeEntry>
SUPER_TYPE_ENTRY =
new
KtPlaceHolderStubElementType<>("SUPER_TYPE_ENTRY",
KtSuperTypeEntry.class);
KtPlaceHolderStubElementType<
KtConstructorCalleeExpression>
CONSTRUCTOR_CALLEE =
new
KtPlaceHolderStubElementType<>("CONSTRUCTOR_CALLEE",
KtConstructorCalleeExpression.class);
KtScriptElementType SCRIPT = new
KtScriptElementType("SCRIPT");
TokenSet DECLARATION_TYPES =
TokenSet.
create(
CLASS,
OBJECT_DECLARATION,
FUNCTION,
PROPERTY,
TYPEALIAS,
CLASS_INITIALIZER,
SECONDARY_CONSTRUCTOR,
ENUM_ENTRY);
TokenSet SUPER_TYPE_LIST_ENTRIES =
TokenSet.
create(
DELEGATED_SUPER_TYPE_ENTRY,
SUPER_TYPE_CALL_ENTRY,
SUPER_TYPE_ENTRY);
TokenSet TYPE_ELEMENT_TYPES =
TokenSet.
create(
USER_TYPE,
NULLABLE_TYPE,
FUNCTION_TYPE,
DYNAMIC_TYPE);
TokenSet INSIDE_DIRECTIVE_EXPRESSIONS =
TokenSet.
create(
REFERENCE_EXPRESSION,
DOT_QUALIFIED_EXPRESSION);
}