syntax: move SyntaxLanguage to syntax lib

GitOrigin-RevId: 2a20f35438d65ea358ffb5986f73f1742bce65ce
This commit is contained in:
Max Medvedev
2025-05-30 11:51:42 +00:00
committed by intellij-monorepo-bot
parent 4d84bd6b75
commit 47a4550e01
12 changed files with 24 additions and 23 deletions
@@ -7,8 +7,8 @@ import com.intellij.java.syntax.lexer.JavaDocLexer
import com.intellij.java.syntax.lexer.JavaLexer
import com.intellij.java.syntax.lexer.JavaTypeEscapeLexer
import com.intellij.platform.syntax.SyntaxElementTypeSet
import com.intellij.platform.syntax.SyntaxLanguage
import com.intellij.platform.syntax.element.SyntaxTokenTypes
import com.intellij.platform.syntax.extensions.SyntaxLanguage
import com.intellij.platform.syntax.lexer.Lexer
import com.intellij.platform.syntax.syntaxElementTypeSetOf
import com.intellij.pom.java.LanguageLevel
@@ -72,6 +72,12 @@
- *sf:emptySyntaxElementTypeSet():com.intellij.platform.syntax.SyntaxElementTypeSet
- sf:flattenSyntaxElementTypeSets(com.intellij.platform.syntax.SyntaxElementTypeSet[]):com.intellij.platform.syntax.SyntaxElementTypeSet
- *sf:syntaxElementTypeSetOf(com.intellij.platform.syntax.SyntaxElementType[]):com.intellij.platform.syntax.SyntaxElementTypeSet
*f:com.intellij.platform.syntax.SyntaxLanguage
- equals(java.lang.Object):Z
- f:getId():java.lang.String
- hashCode():I
*f:com.intellij.platform.syntax.SyntaxLanguageKt
- sf:SyntaxLanguage(java.lang.String):com.intellij.platform.syntax.SyntaxLanguage
*f:com.intellij.platform.syntax.element.SyntaxTokenTypes
- sf:INSTANCE:com.intellij.platform.syntax.element.SyntaxTokenTypes
- sf:getBAD_CHARACTER():com.intellij.platform.syntax.SyntaxElementType
@@ -216,7 +222,7 @@
- a:getEndOffset():I
- a:getErrorMessage():java.lang.String
- a:getFirstChild():com.intellij.platform.syntax.tree.SyntaxNode
- a:getLanguage():java.lang.Object
- a:getLanguage():com.intellij.platform.syntax.SyntaxLanguage
- a:getLastChild():com.intellij.platform.syntax.tree.SyntaxNode
- a:getNextSibling():com.intellij.platform.syntax.tree.SyntaxNode
- a:getParent():com.intellij.platform.syntax.tree.SyntaxNode
@@ -1,15 +1,10 @@
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
@file:ApiStatus.Experimental
package com.intellij.platform.syntax.extensions
package com.intellij.platform.syntax
import org.jetbrains.annotations.ApiStatus
/**
* Language allows associate extension points with it.
*
* See [ExtensionSupport.getLanguageExtensions]
*/
@ApiStatus.Experimental
class SyntaxLanguage internal constructor(val id: String, unused: Any?) {
override fun equals(other: Any?): Boolean =
@@ -2,6 +2,7 @@
package com.intellij.platform.syntax.tree
import com.intellij.platform.syntax.SyntaxElementType
import com.intellij.platform.syntax.SyntaxLanguage
import org.jetbrains.annotations.ApiStatus
/**
@@ -27,5 +28,5 @@ interface SyntaxNode {
val errorMessage: String?
val language: Any?
val language: SyntaxLanguage?
}
@@ -15,6 +15,7 @@ jvm_library(
deps = [
"@lib//:kotlin-stdlib",
"@lib//:jetbrains-annotations",
"//platform/syntax/syntax-api:syntax",
":multiplatformSupport_provided",
]
)
@@ -32,6 +33,8 @@ jvm_library(
"@lib//:junit5",
"@lib//:kotlin-test",
"@lib//:kotlin-test-junit",
"//platform/syntax/syntax-api:syntax",
"//platform/syntax/syntax-api:syntax_test_lib",
]
)
@@ -7,18 +7,12 @@
*:com.intellij.platform.syntax.extensions.ExtensionRegistry
- com.intellij.platform.syntax.extensions.ExtensionSupport
- a:registerExtension(com.intellij.platform.syntax.extensions.ExtensionPointKey,java.lang.Object):V
- a:registerLanguageExtension(com.intellij.platform.syntax.extensions.ExtensionPointKey,java.lang.Object,com.intellij.platform.syntax.extensions.SyntaxLanguage):V
- a:registerLanguageExtension(com.intellij.platform.syntax.extensions.ExtensionPointKey,java.lang.Object,com.intellij.platform.syntax.SyntaxLanguage):V
- a:unregisterExtension(com.intellij.platform.syntax.extensions.ExtensionPointKey,java.lang.Object):V
- a:unregisterLanguageExtension(com.intellij.platform.syntax.extensions.ExtensionPointKey,com.intellij.platform.syntax.extensions.SyntaxLanguage):V
- a:unregisterLanguageExtension(com.intellij.platform.syntax.extensions.ExtensionPointKey,com.intellij.platform.syntax.SyntaxLanguage):V
*:com.intellij.platform.syntax.extensions.ExtensionSupport
- a:getExtensions(com.intellij.platform.syntax.extensions.ExtensionPointKey):java.util.List
- a:getLanguageExtensions(com.intellij.platform.syntax.extensions.ExtensionPointKey,com.intellij.platform.syntax.extensions.SyntaxLanguage):java.util.List
- a:getLanguageExtensions(com.intellij.platform.syntax.extensions.ExtensionPointKey,com.intellij.platform.syntax.SyntaxLanguage):java.util.List
*f:com.intellij.platform.syntax.extensions.ExtensionSupportKt
- *sf:ExtensionRegistry():com.intellij.platform.syntax.extensions.ExtensionRegistry
- *sf:ExtensionSupport():com.intellij.platform.syntax.extensions.ExtensionSupport
*f:com.intellij.platform.syntax.extensions.SyntaxLanguage
- equals(java.lang.Object):Z
- f:getId():java.lang.String
- hashCode():I
*f:com.intellij.platform.syntax.extensions.SyntaxLanguageKt
- sf:SyntaxLanguage(java.lang.String):com.intellij.platform.syntax.extensions.SyntaxLanguage
@@ -36,5 +36,6 @@
<orderEntry type="library" scope="TEST" name="JUnit5" level="project" />
<orderEntry type="library" scope="TEST" name="kotlin-test" level="project" />
<orderEntry type="library" scope="TEST" name="kotlin-test-junit" level="project" />
<orderEntry type="module" module-name="intellij.platform.syntax" />
</component>
</module>
@@ -3,6 +3,7 @@
package com.intellij.platform.syntax.extensions
import com.intellij.platform.syntax.SyntaxLanguage
import com.intellij.platform.syntax.extensions.impl.registry
import org.jetbrains.annotations.ApiStatus
@@ -28,7 +29,7 @@ fun ExtensionRegistry(): ExtensionRegistry? = registry as? ExtensionRegistry
* When working outside of IJ environment, extensions must be registered explicitly.
*
* @See ExtensionKey
* @see SyntaxLanguage
* @see com.intellij.platform.syntax.SyntaxLanguage
* @see ExtensionRegistry
*/
@ApiStatus.Experimental
@@ -1,9 +1,9 @@
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.platform.syntax.extensions.impl
import com.intellij.platform.syntax.SyntaxLanguage
import com.intellij.platform.syntax.extensions.ExtensionPointKey
import com.intellij.platform.syntax.extensions.ExtensionRegistry
import com.intellij.platform.syntax.extensions.SyntaxLanguage
/**
* Simple [ExtensionSupport] backend that is used outside IntelliJ runtime.
@@ -52,7 +52,7 @@
*f:com.intellij.platform.syntax.psi.PsiSyntaxBuilderFactory$Companion
- f:getInstance():com.intellij.platform.syntax.psi.PsiSyntaxBuilderFactory
*f:com.intellij.platform.syntax.psi.extensions.IntelliJSyntaxLanguageSupportKt
- sf:asIntelliJLanguage(com.intellij.platform.syntax.extensions.SyntaxLanguage):com.intellij.lang.Language
- sf:asIntelliJLanguage(com.intellij.platform.syntax.SyntaxLanguage):com.intellij.lang.Language
*f:com.intellij.platform.syntax.psi.impl.PsiSyntaxParserRuntimeFactoryImplKt
- sf:getSyntaxParserRuntimeFactory(com.intellij.lang.Language):com.intellij.platform.syntax.util.runtime.SyntaxParserRuntimeFactory
*c:com.intellij.platform.syntax.psi.lexer.LexerAdapter
@@ -5,7 +5,7 @@ import com.intellij.lang.LanguageExtension
import com.intellij.openapi.extensions.ExtensionPointName
import com.intellij.platform.syntax.extensions.ExtensionPointKey
import com.intellij.platform.syntax.extensions.ExtensionSupport
import com.intellij.platform.syntax.extensions.SyntaxLanguage
import com.intellij.platform.syntax.SyntaxLanguage
import java.util.concurrent.ConcurrentHashMap
/**
@@ -4,7 +4,7 @@
package com.intellij.platform.syntax.psi.extensions
import com.intellij.lang.Language
import com.intellij.platform.syntax.extensions.SyntaxLanguage
import com.intellij.platform.syntax.SyntaxLanguage
import org.jetbrains.annotations.ApiStatus
fun SyntaxLanguage.asIntelliJLanguage(): Language =