diff options
Diffstat (limited to 'platform/lang-impl/src/com/intellij/codeInsight/template/postfix/templates/PostfixTemplatePsiInfo.java')
-rw-r--r-- | platform/lang-impl/src/com/intellij/codeInsight/template/postfix/templates/PostfixTemplatePsiInfo.java | 35 |
1 files changed, 26 insertions, 9 deletions
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/template/postfix/templates/PostfixTemplatePsiInfo.java b/platform/lang-impl/src/com/intellij/codeInsight/template/postfix/templates/PostfixTemplatePsiInfo.java index 8f4716787453..6664d6404d64 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/template/postfix/templates/PostfixTemplatePsiInfo.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/template/postfix/templates/PostfixTemplatePsiInfo.java @@ -16,25 +16,42 @@ package com.intellij.codeInsight.template.postfix.templates; +import com.intellij.openapi.editor.Document; import com.intellij.psi.PsiElement; +import com.intellij.util.Function; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public interface PostfixTemplatePsiInfo { +import java.util.List; + +public abstract class PostfixTemplatePsiInfo { @NotNull - PsiElement createStatement(@NotNull PsiElement context, - @NotNull String prefix, - @NotNull String suffix); + public abstract PsiElement createStatement(@NotNull PsiElement context, + @NotNull String prefix, + @NotNull String suffix); @NotNull - PsiElement createExpression(@NotNull PsiElement context, - @NotNull String prefix, - @NotNull String suffix); + public abstract PsiElement createExpression(@NotNull PsiElement context, + @NotNull String prefix, + @NotNull String suffix); @Nullable - PsiElement getTopmostExpression(@NotNull PsiElement element); + public abstract PsiElement getTopmostExpression(@NotNull PsiElement element); + + @NotNull + public abstract PsiElement getNegatedExpression(@NotNull PsiElement element); + + @NotNull + public abstract List<PsiElement> getExpressions(@NotNull PsiElement context, @NotNull Document document, int offset); @NotNull - PsiElement getNegatedExpression(@NotNull PsiElement element); + public Function<PsiElement, String> getRenderer() { + return new Function<PsiElement, String>() { + @Override + public String fun(@NotNull PsiElement element) { + return element.getText(); + } + }; + } } |