Revert "IJPL-208136 extract Groovy Live templates into the separate plugin from the platform"

This reverts commit ce376078

GitOrigin-RevId: dd12d68792a5cc3f7671b2855686c3160a535fb2
This commit is contained in:
Mikhail Filippov
2025-11-03 11:42:59 -05:00
committed by intellij-monorepo-bot
parent cd32de08a4
commit b75eb262bf
14 changed files with 8 additions and 110 deletions

1
.idea/modules.xml generated
View File

@@ -475,7 +475,6 @@
<module fileurl="file://$PROJECT_DIR$/plugins/groovy/git/intellij.groovy.git.iml" filepath="$PROJECT_DIR$/plugins/groovy/git/intellij.groovy.git.iml" />
<module fileurl="file://$PROJECT_DIR$/plugins/groovy/jps-plugin/intellij.groovy.jps.iml" filepath="$PROJECT_DIR$/plugins/groovy/jps-plugin/intellij.groovy.jps.iml" />
<module fileurl="file://$PROJECT_DIR$/plugins/groovy/jps-plugin/intellij.groovy.jps.tests.iml" filepath="$PROJECT_DIR$/plugins/groovy/jps-plugin/intellij.groovy.jps.tests.iml" />
<module fileurl="file://$PROJECT_DIR$/plugins/groovy-live-templates/intellij.groovy.live.templates.iml" filepath="$PROJECT_DIR$/plugins/groovy-live-templates/intellij.groovy.live.templates.iml" />
<module fileurl="file://$PROJECT_DIR$/plugins/groovy/groovy-psi/intellij.groovy.psi.iml" filepath="$PROJECT_DIR$/plugins/groovy/groovy-psi/intellij.groovy.psi.iml" />
<module fileurl="file://$PROJECT_DIR$/plugins/groovy/rt/intellij.groovy.rt.iml" filepath="$PROJECT_DIR$/plugins/groovy/rt/intellij.groovy.rt.iml" />
<module fileurl="file://$PROJECT_DIR$/plugins/groovy/rt/classLoader/intellij.groovy.rt.classLoader.iml" filepath="$PROJECT_DIR$/plugins/groovy/rt/classLoader/intellij.groovy.rt.classLoader.iml" />

View File

@@ -949,7 +949,6 @@ plugins/grazie/src/test
plugins/grazie/xml
plugins/grazie/yaml
plugins/groovy
plugins/groovy-live-templates
plugins/groovy/git
plugins/groovy/groovy-psi
plugins/groovy/groovy-uast-tests

View File

@@ -181,6 +181,7 @@ macro.spacesToUnderscores.string=spacesToUnderscores(String)
macro.underscoresToCamelCase.string=underscoresToCamelCase(String)
macro.capitalizeAndUnderscore.string=capitalizeAndUnderscore(String)
macro.enum=enum(...)
macro.groovy.script=groovyScript("groovy code")
livetemplate.description.surround.tag=Surround with <tag></tag>
livetemplate.description.surround.cdata.in.xmlorhtmlorjsp=Surround with CDATA section
disable.intention.action=Disable ''{0}''

View File

@@ -59,6 +59,7 @@ jvm_library(
"//libraries/commons/logging",
"//platform/diff-impl",
"//platform/built-in-server-api:builtInServer",
"@lib//:org-codehaus-groovy-groovy",
"//libraries/xstream",
"//libraries/miglayout-swing",
"//platform/ide-core/plugins",

View File

@@ -67,6 +67,7 @@
<orderEntry type="module" module-name="intellij.libraries.commons.logging" />
<orderEntry type="module" module-name="intellij.platform.diff.impl" />
<orderEntry type="module" module-name="intellij.platform.builtInServer" />
<orderEntry type="library" name="org.codehaus.groovy:groovy" level="project" />
<orderEntry type="module" module-name="intellij.libraries.xstream" />
<orderEntry type="module" module-name="intellij.libraries.miglayout.swing" />
<orderEntry type="module" module-name="intellij.platform.ide.core.plugins" />

View File

@@ -1,6 +1,7 @@
// 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.groovy.live.templates;
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.codeInsight.template.macro;
import com.intellij.codeInsight.CodeInsightBundle;
import com.intellij.codeInsight.lookup.LookupElement;
import com.intellij.codeInsight.lookup.LookupElementBuilder;
import com.intellij.codeInsight.template.*;
@@ -34,7 +35,7 @@ public final class GroovyScriptMacro extends Macro {
@Override
public String getPresentableName() {
return GroovyLiveTemplatesBundle.message("macro.groovy.script");
return CodeInsightBundle.message("macro.groovy.script");
}
@Override

View File

@@ -586,6 +586,7 @@
<liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.SplitWordsMacro$LowercaseAndDash"/>
<liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.SplitWordsMacro$SpaceSeparated"/>
<liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.ConcatMacro"/>
<liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.GroovyScriptMacro"/>
<liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.CompleteMacro"/>
<liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.ShowParameterInfoMacro"/>
<liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.CompleteSmartMacro"/>

View File

@@ -1,27 +0,0 @@
### auto-generated section `build intellij.groovy.live.templates` start
load("@rules_jvm//:jvm.bzl", "jvm_library", "resourcegroup")
resourcegroup(
name = "groovy-live-templates_resources",
srcs = glob(["resources/**/*"]),
strip_prefix = "resources"
)
jvm_library(
name = "groovy-live-templates",
module_name = "intellij.groovy.live.templates",
visibility = ["//visibility:public"],
srcs = glob(["src/**/*.kt", "src/**/*.java", "src/**/*.form"], allow_empty = True),
resources = [":groovy-live-templates_resources"],
deps = [
"@lib//:jetbrains-annotations",
"@lib//:kotlin-stdlib",
"@lib//:org-codehaus-groovy-groovy",
"//platform/analysis-api:analysis",
"//platform/core-api:core",
"//platform/editor-ui-api:editor-ui",
"//platform/lang-impl",
"//platform/util",
]
)
### auto-generated section `build intellij.groovy.live.templates` end

View File

@@ -1,20 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" packagePrefix="com.intellij.groovy.live.templates" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="jetbrains-annotations" level="project" />
<orderEntry type="library" name="kotlin-stdlib" level="project" />
<orderEntry type="library" name="org.codehaus.groovy:groovy" level="project" />
<orderEntry type="module" module-name="intellij.platform.analysis" />
<orderEntry type="module" module-name="intellij.platform.core" />
<orderEntry type="module" module-name="intellij.platform.editor.ui" />
<orderEntry type="module" module-name="intellij.platform.lang.impl" />
<orderEntry type="module" module-name="intellij.platform.util" />
</component>
</module>

View File

@@ -1,3 +0,0 @@
- name: lib/groovy-live-templates.jar
modules:
- name: intellij.groovy.live.templates

View File

@@ -1,14 +0,0 @@
<idea-plugin>
<id>org.intellij.groovy.live.templates</id>
<name>Groovy Live Templates Support</name>
<description><![CDATA[
Adds support for Groovy in IDE live templates.
]]></description>
<vendor>JetBrains</vendor>
<depends>com.intellij.modules.platform</depends>
<extensions defaultExtensionNs="com.intellij">
<liveTemplateMacro implementation="com.intellij.groovy.live.templates.GroovyScriptMacro"/>
</extensions>
</idea-plugin>

View File

@@ -1,6 +0,0 @@
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<svg width="41" height="41" viewBox="0 0 41 41" xmlns="http://www.w3.org/2000/svg">
<path d="M39.44 24.1c-.25-2.14-.75-4.25-1.11-6.38-.08-.44-.16-.9-.39-1.29-.19-.32-.33-.79-.75-.86-.8-.16-1.57-.14-2.18.61-.17.21-.29.23-.39-.05-.13-.35-.47-.55-.85-.61l.74-.68c.44-.4.54-1.06.24-1.57l-.86-1.49c-.22-.4-.65-.65-1.1-.65l-.24.02-1.87.59-1.42-1.42.55-1.73c.18-.57-.06-1.18-.58-1.48l-1.5-.87c-.2-.11-.42-.16-.64-.16-.35 0-.69.15-.93.41l-1.23 1.33L23 7.3l-.39-1.76c-.13-.59-.64-1-1.24-1h-1.74c-.6 0-1.11.41-1.24.99L18 7.3l-1.93.52-1.23-1.33a1.27 1.27 0 0 0-1.57-.24l-1.5.86c-.52.3-.76.91-.58 1.48l.55 1.73-.95.95c-.11-.39-.31-.72-.65-.98-1.04-.79-1.38-.83-2.4-.13-1.14.78-2.05 1.82-2.93 2.91-.62.77-1.18 1.59-1.71 2.44-.26.42-.49.88-.69 1.35s-.32.94-.5 1.4c-.11.24-.19.48-.25.75-.1.48-.24 1.02-.1 1.52.07.25.26.47.42.68.35.47.7.95 1.06 1.42.25.31.25.49.02.81-.1.12-.21.26-.31.4-.22.29-.25.59-.14.94.06.15.11.32.2.46.45.73.87 1.51 1.33 2.24.11.21.27.37.43.54.3.33.67.44 1.09.33.27-.07.54-.15.81-.23l.64 1.11c.22.39.65.64 1.1.64l.24-.02 1.87-.59 1.42 1.42-.55 1.73c-.17.56.07 1.19.58 1.48l1.5.87c.19.11.41.16.64.16.35 0 .7-.15.93-.41l1.23-1.33 1.93.52.39 1.76c.13.59.64 1 1.24 1h1.74c.6 0 1.11-.41 1.24-.99L23 33.7l1.93-.52 1.22 1.33c.24.26.59.41.94.41.23 0 .45-.05.64-.17l1.5-.86c.51-.29.75-.92.58-1.48l-.55-1.73 1.29-1.29c-.28.65-.07 1.33.62 1.69.54.26 1.14.18 1.7.14.67-.03 1.33.11 2 .04.44-.04.93-.36 1.31-.55 1.05-.57 1.87-1.28 2.49-2.3.81-1.3.93-2.79.77-4.31"/>
<path fill="#6398aa" d="M31.34 15.7c-.75-.2-1.53-.16-2.3-.11-.25.02-.48.01-.72.12s-.47.3-.75.27c-.25-.02-.41-.23-.61-.35-.23-.12-.51-.21-.77-.25s-.54 0-.82-.04c-.03 0-.05 0-.08-.01s-.07 0-.1-.02h-.01a6.9 6.9 0 0 0-4.68-1.81c-2.14 0-4.05.96-5.33 2.47-.5.02-.99 0-1.5-.04-.59-.05-1.19-.01-1.64.45a1.3 1.3 0 0 1-.39.27c-.24.12-.33.07-.36-.22-.08-.68-.17-1.35-.22-2.03-.05-.62-.08-1.24-.13-1.86l1.91-1.91s.03-.07.01-.1l-.7-2.24c-.04-.12.01-.25.12-.31l1.5-.87c.11-.06.25-.04.33.05l1.59 1.73s.05.05.09.04l3.03-.81s.05-.04.05-.08l.51-2.29c.03-.12.14-.21.26-.21h1.74c.12 0 .23.09.26.21l.51 2.29s.02.07.05.08l3.03.81s.07-.01.09-.04l1.59-1.73c.08-.09.22-.11.33-.05l1.5.87c.11.06.16.19.12.31l-.7 2.24s-.02.07.01.1l2.21 2.21s.07.03.1.01l2.24-.7c.12-.04.25 0 .31.12l.87 1.5c.06.11.04.25-.05.33l-1.73 1.59s-.05.05-.04.09l.06.22c-.08 0-.18-.04-.27-.08-.16-.08-.34-.17-.52-.22m-.87 12.45s-.07-.02-.1.01l-2.21 2.21s-.03.07-.01.1l.7 2.24c.04.12-.01.25-.12.31l-1.5.87c-.11.06-.25.04-.33-.05l-1.59-1.73s-.05-.05-.09-.04l-3.03.81s-.05.04-.05.08l-.51 2.29c-.03.12-.14.21-.26.21h-1.74c-.12 0-.23-.09-.26-.21l-.51-2.29s-.02-.07-.05-.08l-3.03-.81s-.07.01-.09.04l-1.59 1.73c-.08.09-.22.11-.33.05l-1.5-.87a.26.26 0 0 1-.12-.31l.7-2.24s.02-.07-.01-.1l-2.21-2.21s-.07-.03-.1-.01l-2.24.7a.26.26 0 0 1-.31-.12l-.52-.9c.32-.08.63-.18.94-.28 1.76-.56 3.1-1.58 4.12-3.13.03-.07.09-.12.14-.19.31.31.6.65.9.95.58.57 1.26.76 2.02.62.1-.02.2-.03.3-.05a6.88 6.88 0 0 0 4.62 1.75c2.41 0 4.52-1.21 5.79-3.06.42-.1.84-.3 1.25-.59.38-.26.74-.54 1.14-.83.04.11.1.21.14.32.28.65.52 1.32 1.01 1.81.26.27.55.49.83.74.23.22.51.43.69.7.44.65.2 1.23-.17 1.78z"/>
<path fill="#fff" d="M18.9 18.48c-.01.09-.04.18-.04.27-.08 1.03.3 1.8 1.05 2.39.26.2.48.21.74.03.54-.37.99-.86 1.28-1.49.07-.16.12-.37.11-.55-.05-.68-.35-1.25-.79-1.72a1.1 1.1 0 0 0-.4-.27c-.3-.13-.55.09-.54.45 0 .29.14.51.31.72.15.18.24.4.14.65-.11.28-.31.39-.57.39-.42 0-.72-.23-.97-.57-.08-.11-.16-.22-.25-.33-.02.01-.04.02-.07.03m-1.23 2.81c.01-.78.18-1.41.4-2.03.28-.78.65-1.49 1.11-2.15.59-.85 2.08-.79 2.67.12.49.75.71 1.6.68 2.5-.06 1.52-.67 2.69-1.84 3.5-.47.33-1 .46-1.55.32-.75-.19-1.28-.85-1.41-1.74-.03-.2-.05-.41-.06-.52m20.56 5.16c-.29 1.68-1.21 2.73-2.63 3.29-1.33.53-2.7.66-4.09.36-.13-.03-.26-.05-.42-.09.12-.18.24-.35.35-.51.04-.05.07-.1.11-.15.17-.23.31-.48.42-.73.19-.4.29-.83.3-1.31.01-.38.15-.48.48-.35.36.15.72.27 1.09.35.34.08.69.11 1.04.09.1 0 .21 0 .32-.02 1.04-.12 1.83-.67 2.21-1.79.16-.45.25-.93.37-1.4.02-.09 0-.2 0-.29l-.07-.03c-.08.1-.16.18-.22.29-.14.25-.24.52-.39.75-.17.25-.35.49-.57.68-.41.35-.91.29-1.24-.16-.18-.25-.32-.55-.41-.85-.17-.58-.29-1.17-.38-1.76h-.01c-.05-.33-.1-.66-.14-.99l-.09-.61c-.1-.72-.21-1.45-.39-2.16-.11-.46-.26-.92-.46-1.36-.09-.19-.14-.41-.18-.62-.01-.07.02-.21.08-.24.02-.01.04-.02.07-.02.06-.02.14 0 .18.03.12.11.25.24.31.39.11.28.53 1.57.66 1.92 0 .02 0 .03.02.05.21.58.44 1.18.67 1.75q.09.21.24.39l.12.15c.24.29.55.38.81.3.23-.07.43-.27.56-.59.18-.46.14-.93.07-1.39-.15-.94-.46-1.82-.77-2.69-.05-.11-.1-.22-.12-.34-.02-.09 0-.19.01-.29.09.02.21-.01.26.05.14.14.31.31.38.5.21.59.42 1.19.55 1.81.33 1.49.63 2.98.89 4.49.18 1.02.2 2.07.01 3.1m-5.09-4.19c-.03.34-.04.84-.14 1.32-.1.51-.4.86-.79 1.1-.07.05-.14.08-.22.12-.41.19-.76.02-1.07-.29-.42-.43-.71-.97-.9-1.56-.33-1.06-.61-2.14-.91-3.22-.15-.54-.3-1.1-.46-1.64-.07-.21-.16-.41-.26-.61-.13-.26-.07-.53.16-.64.17-.09.32-.08.4.14.22.65.42 1.3.64 1.95.19.57.35 1.15.57 1.7.4.96 1.65.84 2.03.17.27-.49.28-1.02.16-1.55a3.13 3.13 0 0 0-.97-1.64c-.05-.04-.1-.09-.16-.12-.17-.08-.27-.02-.27.19 0 .11.02.23.04.35.01.09.03.17.04.26 0 .2.03.41-.15.51-.19.11-.36 0-.5-.13q-.465-.45-.6-1.11c-.1-.49.21-.85.69-.79.2.03.41.07.58.17 1.13.63 1.87 1.55 1.96 3 .04.68.1 1.35.12 2.16 0 .05.01.11.01.16m-5.88-4.64c-.23-.36-.51-.65-.83-.84-.25-.15-.52-.25-.83-.29-1.05-.13-1.63.17-2.01 1.19-.3.8-.48 1.62-.58 2.48-.11 1.02.2 1.87.93 2.51.91.8 2.32.96 3.26-.13.18-.2.34-.45.48-.74.24-.52.37-1.07.36-1.63 0-.93-.27-1.77-.78-2.55m.18 2.01s-.05.06-.08.1c-.28.36-.64.62-1.03.81-.31.15-.63.17-.94.01-.14-.07-.28-.14-.41-.22-.52-.3-.84-.75-.86-1.42-.01-.43 0-.85 0-1.28.04 0 .07-.01.11-.01.05.13.1.26.17.38.12.21.23.44.4.61.35.37.87.32 1.21-.05.11-.12.11-.24.01-.35s-.22-.19-.31-.31c-.14-.2-.3-.4-.4-.63-.05-.1-.01-.33.06-.4.08-.07.25-.04.37-.02.08.01.15.08.21.13.46.4.87.86 1.21 1.38 0 0 .02.01.01.02.1.14.19.27.27.42.2.36.2.54 0 .83m-13.81-.49s-.06.12-.05.22c0 .02.01.05.01.07.09.65.21 1.27.51 1.85.07.14.16.28.27.4.37.47.77.55 1.27.28.37-.2.48-.15.55.29.06.35.09.71.13 1.07h-.02v.24c-.02.68-.26.96-.88.97-.26 0-.53-.07-.78-.2-.56-.3-1.03-.9-1.06-1.63-.06-1.27-.38-2.47-.8-3.64-.07-.2-.19-.39-.32-.56-.19-.26-.2-.42-.04-.7.1-.18.22-.35.35-.52.16-.21.23-.2.32.07.03.12.05.24.1.36.07.18.14.35.23.51.1.19.26.24.43.09 0 0 .01-.01.01-.02.2-.18.41-.38.6-.57.14-.14.26-.3.41-.43.19-.16.25-.13.38.09.15.27.43.41.7.35.15-.03.24-.12.26-.3.03-.23.16-.34.33-.32.18.02.26.15.24.4 0 .08-.01.16-.04.24-.28.79-.76 1.38-1.43 1.78-.16.09-.33.08-.5 0-.31-.14-.63-.28-.95-.4-.11-.04-.19-.04-.23.01m-2.04 3.1c.09 1.41-.41 2.46-1.5 3.19-.81.54-1.69.87-2.59 1.16-.12.03-.24.07-.36.11-.35.12-.7.2-1.05.3-.13.04-.27.08-.41.12-.15.04-.26.01-.37-.12-.59-.71-1.09-1.5-1.52-2.35-.1-.19-.05-.28.13-.35 1.05-.39 2.1-.78 3.14-1.21.07-.03.15-.06.22-.1q.48-.195.93-.48c.26-.14.5-.31.74-.51.71-.57 1.12-1.32 1.13-2.31v-1.36s-.03-.01-.04-.01c-.15.27-.31.54-.46.81-.47.84-1.02 1.6-1.77 2.17q-.48.375-.99.57c-.67.28-1.37.33-2.11.13H4.7c-.1-.02-.2-.06-.3-.09-1.25-.4-1.91-1.93-1.49-3.3.27-.88.7-1.66 1.17-2.42.75-1.23 1.55-2.4 2.48-3.46.27-.31.56-.62.86-.91.29-.28.59-.54.95-.69.14-.06.29-.1.46-.12.41-.05.74.11.85.53.01.02.01.05.02.08.06.33.1.67.12 1.01 0 .14.01.28.01.42-.03 1.69-.47 3.24-1.35 4.65-.03.05-.06.1-.1.14-.33.48-.72.89-1.21 1.15-.09.05-.18.09-.27.13l-.46.1c-.31.01-.62-.08-.92-.29a.78.78 0 0 1-.31-.41.8.8 0 0 1-.05-.26c-.02-1.42.35-2.65 1.07-3.77.07-.11.14-.22.22-.33.12-.17.27-.35.49-.27.21.08.25.31.28.53.05.36.01.7-.08 1.02-.04.15-.1.3-.17.44-.23.5-.37 1.04-.36 1.61 0 .17.03.35.09.51l.06.12c.11.18.31.23.5.09.21-.17.41-.39.56-.62.4-.64.68-1.34.9-2.06.12-.38.21-.77.3-1.16.13-.64.21-1.28.18-1.94-.01-.06-.01-.11-.01-.15-.08-.63-.4-.83-.92-.57-.56.28-1 .75-1.43 1.22-.26.29-.51.59-.76.9-.67.86-1.26 1.79-1.67 2.86-.32.84-.51 1.7-.36 2.62.07.47.23.89.49 1.26.04.08.1.16.16.23.24.29.53.41.84.46.13.03.25.04.38.05.81.08 1.45-.32 2.03-.89.76-.77 1.25-1.72 1.55-2.81.09-.32.21-.63.31-.94.04-.13.1-.25.18-.35.06-.08.16-.12.24-.18.04.09.12.17.12.26.03 1.23.5 2.36.81 3.52.21.76.38 1.52.43 2.32"/>
</svg>

Before

Width:  |  Height:  |  Size: 7.9 KiB

View File

@@ -1 +0,0 @@
macro.groovy.script=groovyScript("groovy code")

View File

@@ -1,34 +0,0 @@
// 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.groovy.live.templates;
import com.intellij.DynamicBundle;
import com.intellij.ide.IdeDeprecatedMessagesBundle;
import org.jetbrains.annotations.Nls;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.PropertyKey;
import java.util.function.Supplier;
public final class GroovyLiveTemplatesBundle{
public static final @NonNls String BUNDLE = "messages.GroovyLiveTemplates";
private static final DynamicBundle INSTANCE = new DynamicBundle(GroovyLiveTemplatesBundle.class, BUNDLE);
private GroovyLiveTemplatesBundle() {}
public static @NotNull @Nls String message(@NotNull @PropertyKey(resourceBundle = BUNDLE) String key, Object @NotNull ... params) {
if (INSTANCE.containsKey(key)) {
return INSTANCE.getMessage(key, params);
}
return IdeDeprecatedMessagesBundle.message(key, params);
}
public static @NotNull Supplier<@Nls String> messagePointer(@NotNull @PropertyKey(resourceBundle = BUNDLE) String key, Object @NotNull ... params) {
if (INSTANCE.containsKey(key)) {
return INSTANCE.getLazyMessage(key, params);
}
return IdeDeprecatedMessagesBundle.messagePointer(key, params);
}
}