Added nullability annotations to the ParserDefinition return values

Arguments should be reviewed too

IDEA-CR-69793

GitOrigin-RevId: 916f5696aaee45e161224b024d2b632f1440887b
This commit is contained in:
Alexandr Evstigneev
2020-12-16 13:09:59 +03:00
committed by intellij-monorepo-bot
parent 0860c9a2c0
commit 152cd9431b
40 changed files with 169 additions and 276 deletions

View File

@@ -49,8 +49,8 @@ public class RegExpParserDefinition implements ParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
return createParser(project, getDefaultCapabilities());
public @NotNull PsiParser createParser(Project project) {
return createParser(project, getDefaultCapabilities());
}
@NotNull
@@ -63,10 +63,10 @@ public class RegExpParserDefinition implements ParserDefinition {
return new RegExpLexer(capabilities);
}
@Override
public IFileElementType getFileNodeType() {
return REGEXP_FILE;
}
@Override
public @NotNull IFileElementType getFileNodeType() {
return REGEXP_FILE;
}
@Override
@NotNull
@@ -135,13 +135,13 @@ public class RegExpParserDefinition implements ParserDefinition {
return new ASTWrapperPsiElement(node);
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
return new RegExpFile(viewProvider, RegExpLanguage.INSTANCE);
}
@Override
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new RegExpFile(viewProvider, RegExpLanguage.INSTANCE);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MUST_NOT;
}
@Override
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MUST_NOT;
}
}

View File

@@ -1,4 +1,4 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.intellij.lang.regexp.ecmascript;
import com.intellij.lang.PsiParser;
@@ -48,17 +48,17 @@ public class EcmaScriptRegexpParserDefinition extends RegExpParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new RegExpParser(CAPABILITIES);
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return JS_REGEXP_FILE;
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new RegExpFile(viewProvider, EcmaScriptRegexpLanguage.INSTANCE);
}
}

View File

@@ -1,4 +1,4 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.intellij.lang.regexp.ecmascript;
import com.intellij.lang.PsiParser;
@@ -31,17 +31,17 @@ public class EcmaScriptUnicodeRegexpParserDefinition extends RegExpParserDefinit
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new RegExpParser(CAPABILITIES);
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return JS_REGEXP_FILE;
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new RegExpFile(viewProvider, EcmaScriptUnicodeRegexpLanguage.INSTANCE);
}
}

View File

@@ -1,4 +1,4 @@
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.intellij.images.fileTypes.impl
import com.intellij.lang.xml.XMLLanguage
@@ -7,6 +7,7 @@ import com.intellij.psi.FileViewProvider
import com.intellij.psi.PsiFile
import com.intellij.psi.impl.source.xml.XmlFileImpl
import com.intellij.psi.tree.IFileElementType
import org.jetbrains.annotations.NotNull
class SvgLanguage : XMLLanguage(XMLLanguage.INSTANCE, "SVG", "image/svg+xml") {
companion object {
@@ -17,7 +18,7 @@ class SvgLanguage : XMLLanguage(XMLLanguage.INSTANCE, "SVG", "image/svg+xml") {
class SvgParserDefinition : XMLParserDefinition() {
override fun getFileNodeType(): IFileElementType = SVG_FILE
override fun createFile(viewProvider: FileViewProvider): PsiFile = XmlFileImpl(viewProvider, SVG_FILE)
override fun createFile(viewProvider: @NotNull FileViewProvider): @NotNull PsiFile = XmlFileImpl(viewProvider, SVG_FILE)
companion object {
val SVG_FILE = IFileElementType(SvgLanguage.INSTANCE)

View File

@@ -1,18 +1,4 @@
/*
* Copyright 2000-2013 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.
*/
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.spi.parsing;
import com.intellij.core.JavaPsiBundle;
@@ -48,7 +34,7 @@ public class SPIParserDefinition implements ParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new PsiParser() {
@NotNull
@Override
@@ -66,7 +52,7 @@ public class SPIParserDefinition implements ParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return SPI_FILE_ELEMENT_TYPE;
}
@@ -105,12 +91,12 @@ public class SPIParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new SPIFile(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MAY;
}

View File

@@ -1,18 +1,4 @@
/*
* Copyright 2000-2017 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.
*/
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.lang.java;
import com.intellij.lang.ASTNode;
@@ -49,12 +35,12 @@ public class JShellParserDefinition extends JavaParserDefinition{
};
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new JShellFileImpl(viewProvider);
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return JShellElementType.FILE;
}

View File

@@ -45,7 +45,7 @@ public class JavaParserDefinition implements ParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return JAVA_FILE;
}
@@ -85,19 +85,19 @@ public class JavaParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(final FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(final @NotNull FileViewProvider viewProvider) {
return new PsiJavaFileImpl(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
if (right.getElementType() == JavaDocTokenType.DOC_TAG_VALUE_SHARP_TOKEN ||
left.getElementType() == JavaDocTokenType.DOC_TAG_VALUE_SHARP_TOKEN) {
return SpaceRequirements.MUST_NOT;
}
PsiFile containingFile = left.getTreeParent().getPsi().getContainingFile();
LanguageLevel level = containingFile instanceof PsiJavaFile? ((PsiJavaFile)containingFile).getLanguageLevel() : LanguageLevel.HIGHEST;
LanguageLevel level = containingFile instanceof PsiJavaFile ? ((PsiJavaFile)containingFile).getLanguageLevel() : LanguageLevel.HIGHEST;
Lexer lexer = createLexer(level);
SpaceRequirements spaceRequirements = LanguageUtil.canStickTokensTogetherByLexer(left, right, lexer);
if (left.getElementType() == JavaTokenType.END_OF_LINE_COMMENT) {

View File

@@ -52,12 +52,12 @@ public class ManifestParserDefinition implements ParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new ManifestParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return ManifestElementType.FILE;
}
@@ -91,12 +91,12 @@ public class ManifestParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new ManifestFileImpl(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return left.getPsi() instanceof Header || right.getPsi() instanceof Header ?
SpaceRequirements.MUST_LINE_BREAK : SpaceRequirements.MUST_NOT;
}

View File

@@ -1,3 +1,4 @@
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.json;
import com.intellij.json.psi.impl.JsonFileImpl;
@@ -38,12 +39,12 @@ public class JsonParserDefinition implements ParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new JsonParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return FILE;
}
@@ -72,12 +73,12 @@ public class JsonParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider fileViewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider fileViewProvider) {
return new JsonFileImpl(fileViewProvider, JsonLanguage.INSTANCE);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode astNode, ASTNode astNode2) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode astNode, ASTNode astNode2) {
return SpaceRequirements.MAY;
}
}

View File

@@ -1,4 +1,4 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.json.json5;
import com.intellij.json.JsonParserDefinition;
@@ -20,12 +20,12 @@ public class Json5ParserDefinition extends JsonParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider fileViewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider fileViewProvider) {
return new JsonFileImpl(fileViewProvider, Json5Language.INSTANCE);
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return FILE;
}
}

View File

@@ -10,6 +10,7 @@ import com.intellij.psi.tree.IFileElementType;
import com.intellij.psi.tree.TokenSet;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
/**
* Defines the implementation of a parser for a custom language.
@@ -33,6 +34,7 @@ public interface ParserDefinition {
* @param project the project to which the parser is connected.
* @return the parser instance.
*/
@NotNull
PsiParser createParser(Project project);
/**
@@ -40,6 +42,7 @@ public interface ParserDefinition {
*
* @return the file node element type.
*/
@NotNull
IFileElementType getFileNodeType();
/**
@@ -104,7 +107,8 @@ public interface ParserDefinition {
* @param viewProvider virtual file.
* @return the PSI file element.
*/
PsiFile createFile(FileViewProvider viewProvider);
@NotNull
PsiFile createFile(@NotNull FileViewProvider viewProvider);
/**
* Checks if the specified two token types need to be separated by a space according to the language grammar.
@@ -115,7 +119,7 @@ public interface ParserDefinition {
* @param right the second token to check.
* @return the spacing requirements.
*/
default SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
default @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
//noinspection deprecation
return spaceExistanceTypeBetweenTokens(left, right);
}
@@ -124,7 +128,7 @@ public interface ParserDefinition {
* @deprecated Override {@link ParserDefinition#spaceExistenceTypeBetweenTokens(ASTNode, ASTNode)} instead
*/
@Deprecated
default SpaceRequirements spaceExistanceTypeBetweenTokens(ASTNode left, ASTNode right) {
default @NotNull SpaceRequirements spaceExistanceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MAY;
}
@@ -138,7 +142,7 @@ public interface ParserDefinition {
* @see com.intellij.lang.ASTFactory#leaf(com.intellij.psi.tree.IElementType, CharSequence)
*/
@ApiStatus.Experimental
default ASTNode reparseSpace(@NotNull ASTNode originalSpaceNode, @NotNull CharSequence newWhiteSpaceSequence) {
default @Nullable ASTNode reparseSpace(@NotNull ASTNode originalSpaceNode, @NotNull CharSequence newWhiteSpaceSequence) {
return null;
}

View File

@@ -1,18 +1,4 @@
/*
* Copyright 2000-2009 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.
*/
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
/*
* @author max
@@ -58,7 +44,7 @@ public class PlainTextParserDefinition implements ParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return PLAIN_FILE_ELEMENT_TYPE;
}
@@ -87,12 +73,12 @@ public class PlainTextParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new PsiPlainTextFileImpl(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MAY;
}
}

View File

@@ -92,7 +92,7 @@ public class IgnoreParserDefinition implements ParserDefinition {
* @return the parser instance.
*/
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new IgnoreParser();
}
@@ -102,7 +102,7 @@ public class IgnoreParserDefinition implements ParserDefinition {
* @return the file node element type.
*/
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return FILE;
}
@@ -167,7 +167,7 @@ public class IgnoreParserDefinition implements ParserDefinition {
* @return the PSI file element.
*/
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
if (viewProvider.getBaseLanguage() instanceof IgnoreLanguage) {
return ((IgnoreLanguage)viewProvider.getBaseLanguage()).createFile(viewProvider);
}

View File

@@ -1,4 +1,4 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.editorconfig.language.parser
import com.intellij.lang.ASTNode
@@ -13,9 +13,9 @@ import com.intellij.psi.tree.IFileElementType
import com.intellij.psi.tree.TokenSet
import org.editorconfig.configmanagement.lexer.EditorConfigLexerFactory
import org.editorconfig.language.EditorConfigLanguage
import org.editorconfig.language.lexer.EditorConfigLexerAdapter
import org.editorconfig.language.psi.EditorConfigElementTypes
import org.editorconfig.language.psi.EditorConfigPsiFile
import org.jetbrains.annotations.NotNull
class EditorConfigParserDefinition : ParserDefinition {
override fun createLexer(project: Project) = EditorConfigLexerFactory.getAdapter();
@@ -26,7 +26,7 @@ class EditorConfigParserDefinition : ParserDefinition {
override fun getStringLiteralElements(): TokenSet = TokenSet.EMPTY
override fun getFileNodeType() = FILE
override fun createFile(viewProvider: FileViewProvider): PsiFile = EditorConfigPsiFile(viewProvider)
override fun createFile(viewProvider: @NotNull FileViewProvider): @NotNull PsiFile = EditorConfigPsiFile(viewProvider)
override fun createElement(node: ASTNode): PsiElement = EditorConfigElementTypes.Factory.createElement(node)
private companion object {

View File

@@ -42,12 +42,12 @@ public class GroovyParserDefinition implements ParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new GroovyParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return GROOVY_FILE;
}
@@ -70,12 +70,12 @@ public class GroovyParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new GroovyFileImpl(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
final IElementType lType = left.getElementType();
final IElementType rType = right.getElementType();

View File

@@ -54,12 +54,12 @@ public class LombokConfigParserDefinition implements ParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return FILE;
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new LombokConfigFile(viewProvider);
}

View File

@@ -1,18 +1,4 @@
/*
* Copyright 2000-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.
*/
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.intellij.plugins.markdown.lang.parser;
@@ -84,7 +70,7 @@ public class MarkdownParserDefinition implements ParserDefinition {
@NotNull
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new MarkdownFile(viewProvider);
}

View File

@@ -25,7 +25,7 @@ public class PropertiesParserDefinition implements ParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return PropertiesElementTypes.FILE;
}
@@ -54,12 +54,12 @@ public class PropertiesParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new PropertiesFileImpl(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
if (left.getElementType() == PropertiesTokenTypes.END_OF_LINE_COMMENT) {
return SpaceRequirements.MUST_LINE_BREAK;
}

View File

@@ -1,4 +1,4 @@
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.sh.parser;
import com.intellij.lang.ASTNode;
@@ -26,12 +26,12 @@ public class ShParserDefinition implements ParserDefinition, ShTokenTypes {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new ShParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return ShFileElementType.INSTANCE;
}
@@ -60,12 +60,12 @@ public class ShParserDefinition implements ParserDefinition, ShTokenTypes {
}
@Override
public PsiFile createFile(FileViewProvider fileViewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider fileViewProvider) {
return new ShFile(fileViewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MAY;
}
}

View File

@@ -1,3 +1,4 @@
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.tasks.jira.jql;
import com.intellij.lang.ASTNode;
@@ -26,12 +27,12 @@ public class JqlParserDefinition implements ParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new JqlParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return JqlElementTypes.FILE;
}
@@ -60,12 +61,12 @@ public class JqlParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new JqlFile(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MAY;
}
}

View File

@@ -1,3 +1,4 @@
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.tasks.youtrack.lang;
import com.intellij.extapi.psi.ASTWrapperPsiElement;
@@ -35,12 +36,12 @@ public class YouTrackParserDefinition implements ParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new YouTrackMockParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return FILE;
}
@@ -70,12 +71,12 @@ public class YouTrackParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new YouTrackFile(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MAY;
}

View File

@@ -24,12 +24,12 @@ public class TextMateParserDefinition implements ParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new TextMateParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return FILE_ELEMENT_TYPE;
}
@@ -58,12 +58,12 @@ public class TextMateParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new TextMateFile(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MAY;
}
}

View File

@@ -1,4 +1,4 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.intellij.lang.xpath;
import com.intellij.lang.ASTNode;
@@ -22,12 +22,12 @@ public class XPath2ParserDefinition extends XPathParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return XPath2ElementTypes.FILE;
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new XPath2Parser();
}
@@ -76,7 +76,7 @@ public class XPath2ParserDefinition extends XPathParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new XPathFile(viewProvider, XPathFileType.XPATH2);
}
}

View File

@@ -39,8 +39,8 @@ public class XPathParserDefinition implements ParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
return XPathElementTypes.FILE;
public @NotNull IFileElementType getFileNodeType() {
return XPathElementTypes.FILE;
}
@Override
@@ -61,15 +61,15 @@ public class XPathParserDefinition implements ParserDefinition {
return TokenSet.create(XPathTokenTypes.STRING_LITERAL);
}
@Override
public PsiParser createParser(Project project) {
return new XPathParser();
}
@Override
public @NotNull PsiParser createParser(Project project) {
return new XPathParser();
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MUST_NOT;
}
@Override
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MUST_NOT;
}
@Override
@NotNull
@@ -121,7 +121,7 @@ public class XPathParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
return new XPathFile(viewProvider, XPathFileType.XPATH);
}
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new XPathFile(viewProvider, XPathFileType.XPATH);
}
}

View File

@@ -13,7 +13,6 @@ import com.intellij.psi.tree.IElementType;
import com.intellij.psi.tree.IFileElementType;
import com.intellij.psi.tree.TokenSet;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.yaml.lexer.YAMLFlexLexer;
import org.jetbrains.yaml.parser.YAMLParser;
import org.jetbrains.yaml.psi.impl.*;
@@ -28,13 +27,12 @@ public class YAMLParserDefinition implements ParserDefinition, YAMLElementTypes
}
@Override
@Nullable
public PsiParser createParser(final Project project) {
public @NotNull PsiParser createParser(final Project project) {
return new YAMLParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return FILE;
}
@@ -106,12 +104,12 @@ public class YAMLParserDefinition implements ParserDefinition, YAMLElementTypes
}
@Override
public PsiFile createFile(final FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(final @NotNull FileViewProvider viewProvider) {
return new YAMLFileImpl(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(final ASTNode left, final ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(final ASTNode left, final ASTNode right) {
return SpaceRequirements.MAY;
}
}

View File

@@ -34,7 +34,7 @@ public class PythonParserDefinition implements ParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return PyFileElementType.INSTANCE;
}
@@ -77,12 +77,12 @@ public class PythonParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new PyFileImpl(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
// see LanguageTokenSeparatorGenerator instead
return SpaceRequirements.MAY;
}

View File

@@ -37,12 +37,12 @@ public class PyFunctionTypeAnnotationParserDefinition extends PythonParserDefini
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new PyFunctionTypeAnnotationFile(viewProvider);
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return PyFunctionTypeAnnotationFileElementType.INSTANCE;
}

View File

@@ -38,12 +38,12 @@ public class PyDocstringParserDefinition extends PythonParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return PYTHON_DOCSTRING_FILE;
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new PyDocstringFile(viewProvider);
}
}

View File

@@ -19,6 +19,7 @@ import com.intellij.psi.FileViewProvider;
import com.intellij.psi.PsiFile;
import com.intellij.psi.tree.IFileElementType;
import com.jetbrains.python.PythonParserDefinition;
import org.jetbrains.annotations.NotNull;
/**
* @author vlan
@@ -27,12 +28,12 @@ public class PyiParserDefinition extends PythonParserDefinition {
public static final IFileElementType PYTHON_STUB_FILE = new PyiFileElementType(PyiLanguageDialect.getInstance());
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new PyiFile(viewProvider);
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return PYTHON_STUB_FILE;
}
}

View File

@@ -1,18 +1,4 @@
/*
* Copyright 2000-2013 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.
*/
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.jetbrains.rest.parsing;
import com.intellij.lang.ASTNode;
@@ -47,12 +33,12 @@ public class RestParserDefinition implements ParserDefinition, RestTokenTypes {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new RestParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return FILE_ELEMENT_TYPE;
}
@@ -81,12 +67,12 @@ public class RestParserDefinition implements ParserDefinition, RestTokenTypes {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new RestFile(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MAY;
}
}

View File

@@ -1,18 +1,4 @@
/*
* Copyright 2000-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.
*/
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.jetbrains.commandInterface.commandLine;
import com.intellij.lang.ASTNode;
@@ -46,12 +32,12 @@ public final class CommandLineParserDefinition implements ParserDefinition {
}
@Override
public PsiParser createParser(final Project project) {
public @NotNull PsiParser createParser(final Project project) {
return new CommandLineParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return FILE_TYPE;
}
@@ -81,12 +67,12 @@ public final class CommandLineParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(final FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(final @NotNull FileViewProvider viewProvider) {
return new CommandLineFile(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(final ASTNode left, final ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(final ASTNode left, final ASTNode right) {
return SpaceRequirements.MAY;
}
}

View File

@@ -15,7 +15,6 @@ import com.jetbrains.python.buildout.config.lexer.BuildoutCfgFlexLexer;
import com.jetbrains.python.buildout.config.psi.BuildoutCfgASTFactory;
import com.jetbrains.python.buildout.config.psi.impl.BuildoutCfgFile;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class BuildoutCfgParserDefinition implements ParserDefinition, BuildoutCfgElementTypes, BuildoutCfgTokenTypes {
private final BuildoutCfgASTFactory astFactory = new BuildoutCfgASTFactory();
@@ -27,13 +26,12 @@ public class BuildoutCfgParserDefinition implements ParserDefinition, BuildoutCf
}
@Override
@Nullable
public PsiParser createParser(final Project project) {
public @NotNull PsiParser createParser(final Project project) {
return new BuildoutCfgParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return FILE;
}
@@ -62,12 +60,12 @@ public class BuildoutCfgParserDefinition implements ParserDefinition, BuildoutCf
}
@Override
public PsiFile createFile(final FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(final @NotNull FileViewProvider viewProvider) {
return new BuildoutCfgFile(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(final ASTNode left, final ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(final ASTNode left, final ASTNode right) {
return SpaceRequirements.MAY;
}
}

View File

@@ -1,18 +1,4 @@
/*
* Copyright 2000-2017 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.
*/
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.jetbrains.python.codeInsight.regexp;
import com.intellij.lang.PsiParser;
@@ -45,17 +31,17 @@ public class PythonRegexpParserDefinition extends RegExpParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new RegExpParser(CAPABILITIES);
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return PYTHON_REGEXP_FILE;
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new RegExpFile(viewProvider, PythonRegexpLanguage.INSTANCE);
}
}

View File

@@ -1,4 +1,4 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.jetbrains.python.codeInsight.regexp;
import com.intellij.lang.PsiParser;
@@ -34,17 +34,17 @@ public class PythonVerboseRegexpParserDefinition extends PythonRegexpParserDefin
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new RegExpParser(VERBOSE_CAPABILITIES);
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return VERBOSE_PYTHON_REGEXP_FILE;
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new RegExpFile(viewProvider, PythonVerboseRegexpLanguage.INSTANCE);
}
}

View File

@@ -46,12 +46,12 @@ public class RncParserDefinition implements ParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new RncParser();
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return FILE_ELEMENT_TYPE;
}
@@ -87,12 +87,12 @@ public class RncParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new RncFileImpl(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return SpaceRequirements.MAY;
}

View File

@@ -21,12 +21,12 @@ import org.jetbrains.annotations.NotNull;
public class DTDParserDefinition extends XMLParserDefinition {
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return LanguageUtil.canStickTokensTogetherByLexer(left, right, new DtdLexer(false));
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new XmlFileImpl(viewProvider, XmlElementType.DTD_FILE);
}
@@ -43,7 +43,7 @@ public class DTDParserDefinition extends XMLParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return XmlElementType.DTD_FILE;
}

View File

@@ -30,7 +30,7 @@ public class HTMLParserDefinition implements ParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return XmlElementType.HTML_FILE;
}
@@ -75,12 +75,12 @@ public class HTMLParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new HtmlFileImpl(viewProvider);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return XMLParserDefinition.canStickTokensTogether(left, right);
}
}

View File

@@ -21,12 +21,12 @@ public class XHTMLParserDefinition extends XMLParserDefinition {
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return canStickTokensTogether(left, right);
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new XmlFileImpl(viewProvider, XmlElementType.XHTML_FILE);
}

View File

@@ -28,7 +28,7 @@ public class XMLParserDefinition implements ParserDefinition {
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return XmlElementType.XML_FILE;
}
@@ -67,12 +67,12 @@ public class XMLParserDefinition implements ParserDefinition {
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new XmlFileImpl(viewProvider, XmlElementType.XML_FILE);
}
@Override
public SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
public @NotNull SpaceRequirements spaceExistenceTypeBetweenTokens(ASTNode left, ASTNode right) {
return canStickTokensTogether(left, right);
}

View File

@@ -1,18 +1,4 @@
/*
* Copyright 2000-2017 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.
*/
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.psi.impl.source.resolve.reference.impl.providers;
import com.intellij.lang.Language;
@@ -45,17 +31,17 @@ public class XsdRegExpParserDefinition extends RegExpParserDefinition {
}
@Override
public PsiParser createParser(Project project) {
public @NotNull PsiParser createParser(Project project) {
return new RegExpParser(CAPABILITIES);
}
@Override
public IFileElementType getFileNodeType() {
public @NotNull IFileElementType getFileNodeType() {
return XSD_REGEXP_FILE;
}
@Override
public PsiFile createFile(FileViewProvider viewProvider) {
public @NotNull PsiFile createFile(@NotNull FileViewProvider viewProvider) {
return new RegExpFile(viewProvider, LANGUAGE);
}
}