diff --git a/platform/core-api/src/com/intellij/lang/injection/MultiHostInjector.java b/platform/core-api/src/com/intellij/lang/injection/MultiHostInjector.java index 5d1f35d4ffef..396bdf4b4524 100644 --- a/platform/core-api/src/com/intellij/lang/injection/MultiHostInjector.java +++ b/platform/core-api/src/com/intellij/lang/injection/MultiHostInjector.java @@ -28,6 +28,9 @@ import org.jetbrains.annotations.NotNull; import java.util.List; +/** + * @see com.intellij.psi.PsiLanguageInjectionHost + */ public interface MultiHostInjector { ExtensionPointName MULTIHOST_INJECTOR_EP_NAME = ExtensionPointName.create("com.intellij.multiHostInjector"); diff --git a/platform/core-api/src/com/intellij/psi/LiteralTextEscaper.java b/platform/core-api/src/com/intellij/psi/LiteralTextEscaper.java index 07afd9c72916..bc93b01f0c78 100644 --- a/platform/core-api/src/com/intellij/psi/LiteralTextEscaper.java +++ b/platform/core-api/src/com/intellij/psi/LiteralTextEscaper.java @@ -60,4 +60,23 @@ public abstract class LiteralTextEscaper { public abstract boolean isOneLine(); + public static LiteralTextEscaper createSimple(T element) { + return new LiteralTextEscaper(element) { + @Override + public boolean decode(@NotNull TextRange rangeInsideHost, @NotNull StringBuilder outChars) { + outChars.append(rangeInsideHost.substring(myHost.getText())); + return true; + } + + @Override + public int getOffsetInHost(int offsetInDecoded, @NotNull TextRange rangeInsideHost) { + return rangeInsideHost.getStartOffset() + offsetInDecoded; + } + + @Override + public boolean isOneLine() { + return true; + } + }; + } } diff --git a/platform/lang-api/src/com/intellij/openapi/paths/PathReferenceManager.java b/platform/lang-api/src/com/intellij/openapi/paths/PathReferenceManager.java index a6aa7062b117..69e077ee9237 100644 --- a/platform/lang-api/src/com/intellij/openapi/paths/PathReferenceManager.java +++ b/platform/lang-api/src/com/intellij/openapi/paths/PathReferenceManager.java @@ -64,7 +64,6 @@ public abstract class PathReferenceManager { * @param endingSlashNotAllowed true if paths like "/foo/" should not be resolved. * @param relativePathsAllowed true if the folder of the file containing the PsiElement should be used as "root". * Otherwise, web application root will be used. - * @param suitableFileTypes *@param additionalProviders additional providers to process. @return created references or an empty array. */ @NotNull diff --git a/platform/lang-impl/src/com/intellij/execution/ProgramRunnerUtil.java b/platform/lang-impl/src/com/intellij/execution/ProgramRunnerUtil.java index 207ca4aadcf6..e74259e88c50 100644 --- a/platform/lang-impl/src/com/intellij/execution/ProgramRunnerUtil.java +++ b/platform/lang-impl/src/com/intellij/execution/ProgramRunnerUtil.java @@ -72,7 +72,7 @@ public class ProgramRunnerUtil { return; } - if (!RunManagerImpl.canRunConfiguration(configuration, executor) || (showSettings && RunManagerImpl.isEditBeforeRun(configuration))) { + if (!RunManagerImpl.canRunConfiguration(configuration, executor) || (showSettings && configuration.isEditBeforeRun())) { if (!RunDialog.editConfiguration(project, configuration, "Edit configuration", executor)) { return; } diff --git a/platform/lang-impl/src/com/intellij/execution/impl/RunManagerImpl.java b/platform/lang-impl/src/com/intellij/execution/impl/RunManagerImpl.java index fec7906323ba..4352717e2137 100644 --- a/platform/lang-impl/src/com/intellij/execution/impl/RunManagerImpl.java +++ b/platform/lang-impl/src/com/intellij/execution/impl/RunManagerImpl.java @@ -761,10 +761,6 @@ public class RunManagerImpl extends RunManagerEx implements JDOMExternalizable, setActiveConfiguration(tempConfiguration); } - public static boolean isEditBeforeRun(@NotNull final RunnerAndConfigurationSettings configuration) { - return configuration.isEditBeforeRun(); - } - Collection getStableConfigurations() { final Map result = new LinkedHashMap(myConfigurations); diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/FileReference.java b/platform/lang-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/FileReference.java index ce1a41ffbb38..ba819aa6ff66 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/FileReference.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/FileReference.java @@ -359,7 +359,7 @@ public class FileReference implements FileReferenceOwner, PsiPolyVariantReferenc @Override public PsiFileSystemItem resolve() { ResolveResult[] resolveResults = multiResolve(false); - return resolveResults.length == 1 ? (PsiFileSystemItem)resolveResults[0].getElement() : null; + return resolveResults.length == 1 ? (PsiFileSystemItem)resolveResults[0].getElement() : null; } @Nullable diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/MultiHostRegistrarImpl.java b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/MultiHostRegistrarImpl.java index 615c58974177..61ac24305495 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/MultiHostRegistrarImpl.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/MultiHostRegistrarImpl.java @@ -242,7 +242,10 @@ public class MultiHostRegistrarImpl implements MultiHostRegistrar, ModificationT finally { viewProvider.setPatchingLeaves(false); } - assert parsedNode.getText().equals(documentText) : exceptionContext("After patch: doc:\n'" + documentText + "'\n---PSI:\n'" + parsedNode.getText() + "'\n---chars:\n'"+outChars+"'"); + if (!parsedNode.getText().equals(documentText)) { + throw new AssertionError(exceptionContext( + "After patch: doc:\n'" + documentText + "'\n---PSI:\n'" + parsedNode.getText() + "'\n---chars:\n'" + outChars + "'")); + } virtualFile.setContent(null, documentWindow.getText(), false);