ExceptionUtils rewritten in Kotlin

This commit is contained in:
Andrey Breslav
2014-01-29 17:33:40 +04:00
parent d0787795b6
commit 210827b1d5
28 changed files with 107 additions and 120 deletions
@@ -42,7 +42,7 @@ import org.jetbrains.jet.config.CommonConfigurationKeys;
import org.jetbrains.jet.config.CompilerConfiguration; import org.jetbrains.jet.config.CompilerConfiguration;
import org.jetbrains.jet.lang.resolve.java.PackageClassUtils; import org.jetbrains.jet.lang.resolve.java.PackageClassUtils;
import org.jetbrains.jet.lang.resolve.name.FqName; import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import org.jetbrains.jet.utils.KotlinPaths; import org.jetbrains.jet.utils.KotlinPaths;
import org.jetbrains.jet.utils.PathUtil; import org.jetbrains.jet.utils.PathUtil;
@@ -206,10 +206,10 @@ public class CompileEnvironmentUtil {
throw new CompileEnvironmentException("Invalid jar path " + jarPath, e); throw new CompileEnvironmentException("Invalid jar path " + jarPath, e);
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
finally { finally {
ExceptionUtils.closeQuietly(outputStream); UtilsPackage.closeQuietly(outputStream);
} }
} }
@@ -22,7 +22,7 @@ import jline.console.ConsoleReader;
import jline.console.history.FileHistory; import jline.console.history.FileHistory;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.config.CompilerConfiguration; import org.jetbrains.jet.config.CompilerConfiguration;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.File; import java.io.File;
import java.io.PrintWriter; import java.io.PrintWriter;
@@ -59,7 +59,7 @@ public class ReplFromTerminal {
consoleReader.setHistoryEnabled(true); consoleReader.setHistoryEnabled(true);
consoleReader.setHistory(new FileHistory(new File(new File(System.getProperty("user.home")), ".kotlin_history"))); consoleReader.setHistory(new FileHistory(new File(new File(System.getProperty("user.home")), ".kotlin_history")));
} catch (Exception e) { } catch (Exception e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -72,13 +72,13 @@ public class ReplFromTerminal {
try { try {
waitRepl.wait(); waitRepl.wait();
} catch (Throwable e) { } catch (Throwable e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
if (replInterpreter != null) { if (replInterpreter != null) {
return replInterpreter; return replInterpreter;
} }
throw ExceptionUtils.rethrow(replInitializationFailed); throw UtilsPackage.rethrow(replInitializationFailed);
} }
} }
@@ -94,7 +94,7 @@ public class ReplFromTerminal {
} }
} }
} catch (Exception e) { } catch (Exception e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} finally { } finally {
try { try {
((FileHistory) consoleReader.getHistory()).flush(); ((FileHistory) consoleReader.getHistory()).flush();
@@ -132,7 +132,7 @@ public class ReplFromTerminal {
} }
} }
catch (Exception e) { catch (Exception e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -60,7 +60,7 @@ import org.jetbrains.jet.lang.types.lang.InlineUtil;
import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns; import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns;
import org.jetbrains.jet.plugin.JetLanguage; import org.jetbrains.jet.plugin.JetLanguage;
import org.jetbrains.jet.storage.LockBasedStorageManager; import org.jetbrains.jet.storage.LockBasedStorageManager;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.File; import java.io.File;
import java.io.PrintWriter; import java.io.PrintWriter;
@@ -119,7 +119,7 @@ public class ReplInterpreter {
classpath.add(file.toURI().toURL()); classpath.add(file.toURI().toURL());
} }
catch (MalformedURLException e) { catch (MalformedURLException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -281,7 +281,7 @@ public class ReplInterpreter {
PrintWriter writer = new PrintWriter(System.err); PrintWriter writer = new PrintWriter(System.err);
classLoader.dumpClasses(writer); classLoader.dumpClasses(writer);
writer.flush(); writer.flush();
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -32,7 +32,7 @@ import org.jetbrains.jet.lang.resolve.name.Name;
import org.jetbrains.jet.storage.NotNullLazyValue; import org.jetbrains.jet.storage.NotNullLazyValue;
import org.jetbrains.jet.storage.NullableLazyValue; import org.jetbrains.jet.storage.NullableLazyValue;
import org.jetbrains.jet.storage.StorageManager; import org.jetbrains.jet.storage.StorageManager;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.IOException; import java.io.IOException;
@@ -81,7 +81,7 @@ public class VirtualFileKotlinClass implements KotlinJvmBinaryClass {
}, SKIP_CODE | SKIP_DEBUG | SKIP_FRAMES); }, SKIP_CODE | SKIP_DEBUG | SKIP_FRAMES);
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
return classNameRef.get(); return classNameRef.get();
} }
@@ -113,7 +113,7 @@ public class VirtualFileKotlinClass implements KotlinJvmBinaryClass {
}, SKIP_CODE | SKIP_DEBUG | SKIP_FRAMES); }, SKIP_CODE | SKIP_DEBUG | SKIP_FRAMES);
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -197,7 +197,7 @@ public class VirtualFileKotlinClass implements KotlinJvmBinaryClass {
}, SKIP_CODE | SKIP_DEBUG | SKIP_FRAMES); }, SKIP_CODE | SKIP_DEBUG | SKIP_FRAMES);
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -18,7 +18,7 @@ package org.jetbrains.jet.descriptors.serialization;
import com.google.protobuf.ExtensionRegistryLite; import com.google.protobuf.ExtensionRegistryLite;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
@@ -34,7 +34,7 @@ public final class ClassData {
return new ClassData(nameResolver, classProto); return new ClassData(nameResolver, classProto);
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -66,7 +66,7 @@ public final class ClassData {
return result.toByteArray(); return result.toByteArray();
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
} }
@@ -17,7 +17,7 @@
package org.jetbrains.jet.descriptors.serialization; package org.jetbrains.jet.descriptors.serialization;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
@@ -35,7 +35,7 @@ public class NameSerializationUtil {
return new NameResolver(simpleNames, qualifiedNames); return new NameResolver(simpleNames, qualifiedNames);
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -57,7 +57,7 @@ public class NameSerializationUtil {
qualifiedNameTable.writeDelimitedTo(out); qualifiedNameTable.writeDelimitedTo(out);
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -18,7 +18,7 @@ package org.jetbrains.jet.descriptors.serialization;
import com.google.protobuf.ExtensionRegistryLite; import com.google.protobuf.ExtensionRegistryLite;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
@@ -34,7 +34,7 @@ public final class PackageData {
return new PackageData(nameResolver, packageProto); return new PackageData(nameResolver, packageProto);
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -66,7 +66,7 @@ public final class PackageData {
return result.toByteArray(); return result.toByteArray();
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
} }
@@ -41,7 +41,7 @@ import org.jetbrains.jet.lang.resolve.java.PackageClassUtils;
import org.jetbrains.jet.lang.resolve.java.jetAsJava.KotlinLightMethod; import org.jetbrains.jet.lang.resolve.java.jetAsJava.KotlinLightMethod;
import org.jetbrains.jet.lang.resolve.name.FqName; import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns; import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import org.jetbrains.jet.utils.KotlinVfsUtil; import org.jetbrains.jet.utils.KotlinVfsUtil;
import java.io.File; import java.io.File;
@@ -97,7 +97,7 @@ public class LightClassUtil {
FileUtil.toSystemIndependentName(BUILT_INS_SRC_DIR.getAbsolutePath())); FileUtil.toSystemIndependentName(BUILT_INS_SRC_DIR.getAbsolutePath()));
} }
catch (MalformedURLException e) { catch (MalformedURLException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -20,7 +20,7 @@ import com.intellij.util.io.ZipUtil;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.cli.common.ExitCode; import org.jetbrains.jet.cli.common.ExitCode;
import org.jetbrains.jet.cli.jvm.K2JVMCompiler; import org.jetbrains.jet.cli.jvm.K2JVMCompiler;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import org.jetbrains.jet.utils.PathUtil; import org.jetbrains.jet.utils.PathUtil;
import java.io.*; import java.io.*;
@@ -53,7 +53,7 @@ public class MockLibraryUtil {
return jarFile; return jarFile;
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -73,7 +73,7 @@ public class MockLibraryUtil {
assertEquals(new String(outStream.toByteArray()), ExitCode.OK.name(), invocationResult.name()); assertEquals(new String(outStream.toByteArray()), ExitCode.OK.name(), invocationResult.name());
} }
catch (Throwable e) { catch (Throwable e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -39,7 +39,7 @@ import org.jetbrains.jet.cli.jvm.compiler.JetCoreEnvironment;
import org.jetbrains.jet.lang.diagnostics.*; import org.jetbrains.jet.lang.diagnostics.*;
import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.resolve.BindingContext;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import org.junit.Assert; import org.junit.Assert;
import java.io.File; import java.io.File;
@@ -85,7 +85,7 @@ public abstract class BaseDiagnosticsTest extends JetLiteFixture {
JetTestUtils.mkdirs(javaFilesDir); JetTestUtils.mkdirs(javaFilesDir);
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
return javaFilesDir; return javaFilesDir;
} }
@@ -97,7 +97,7 @@ public abstract class BaseDiagnosticsTest extends JetLiteFixture {
Files.write(content, javaFile, Charset.forName("utf-8")); Files.write(content, javaFile, Charset.forName("utf-8"));
return true; return true;
} catch (Exception e) { } catch (Exception e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -28,7 +28,7 @@ import org.jetbrains.jet.cli.common.ExitCode;
import org.jetbrains.jet.cli.js.K2JSCompiler; import org.jetbrains.jet.cli.js.K2JSCompiler;
import org.jetbrains.jet.cli.jvm.K2JVMCompiler; import org.jetbrains.jet.cli.jvm.K2JVMCompiler;
import org.jetbrains.jet.test.Tmpdir; import org.jetbrains.jet.test.Tmpdir;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import org.junit.Rule; import org.junit.Rule;
import org.junit.rules.TestName; import org.junit.rules.TestName;
@@ -54,7 +54,7 @@ public class CliBaseTest {
return Pair.create(bytes.toString("utf-8"), exitCode); return Pair.create(bytes.toString("utf-8"), exitCode);
} }
catch (Exception e) { catch (Exception e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
finally { finally {
System.setOut(origOut); System.setOut(origOut);
@@ -20,7 +20,7 @@ import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.util.text.StringUtil;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.ConfigurationKind; import org.jetbrains.jet.ConfigurationKind;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
@@ -54,7 +54,7 @@ public abstract class AbstractBytecodeTextTest extends CodegenTestCase {
} }
catch (Throwable e) { catch (Throwable e) {
System.out.println(text); System.out.println(text);
ExceptionUtils.rethrow(e); UtilsPackage.rethrow(e);
} }
} }
@@ -32,7 +32,7 @@ import org.jetbrains.jet.config.CompilerConfiguration;
import org.jetbrains.jet.lang.resolve.AnalyzingUtils; import org.jetbrains.jet.lang.resolve.AnalyzingUtils;
import org.jetbrains.jet.lang.resolve.java.AnalyzerFacadeForJVM; import org.jetbrains.jet.lang.resolve.java.AnalyzerFacadeForJVM;
import org.jetbrains.jet.lang.types.lang.InlineUtil; import org.jetbrains.jet.lang.types.lang.InlineUtil;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
@@ -115,7 +115,7 @@ public class CodegenTestUtil {
return javaClassesTempDirectory; return javaClassesTempDirectory;
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -30,7 +30,7 @@ import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.resolve.java.PackageClassUtils; import org.jetbrains.jet.lang.resolve.java.PackageClassUtils;
import org.jetbrains.jet.lang.resolve.name.FqName; import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.test.TestCaseWithTmpdir; import org.jetbrains.jet.test.TestCaseWithTmpdir;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
@@ -80,7 +80,7 @@ public class LineNumberTest extends TestCaseWithTmpdir {
text = FileUtil.loadFile(file); text = FileUtil.loadFile(file);
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
return JetTestUtils.createFile(file.getName(), text, environment.getProject()); return JetTestUtils.createFile(file.getName(), text, environment.getProject());
@@ -121,7 +121,7 @@ public class LineNumberTest extends TestCaseWithTmpdir {
} }
catch (Throwable e) { catch (Throwable e) {
System.out.println(factory.createText()); System.out.println(factory.createText());
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -24,7 +24,7 @@ import org.jetbrains.jet.lang.parsing.JetScriptDefinition;
import org.jetbrains.jet.lang.parsing.JetScriptDefinitionProvider; import org.jetbrains.jet.lang.parsing.JetScriptDefinitionProvider;
import org.jetbrains.jet.lang.resolve.AnalyzerScriptParameter; import org.jetbrains.jet.lang.resolve.AnalyzerScriptParameter;
import org.jetbrains.jet.lang.resolve.ScriptNameUtil; import org.jetbrains.jet.lang.resolve.ScriptNameUtil;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.lang.reflect.Constructor; import java.lang.reflect.Constructor;
import java.lang.reflect.Field; import java.lang.reflect.Field;
@@ -81,7 +81,7 @@ public class ScriptGenTest extends CodegenTestCase {
} }
catch (Throwable e) { catch (Throwable e) {
System.out.println(generateToText()); System.out.println(generateToText());
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -26,7 +26,7 @@ import org.jetbrains.jet.cli.jvm.compiler.JetCoreEnvironment;
import org.jetbrains.jet.codegen.CodegenTestCase; import org.jetbrains.jet.codegen.CodegenTestCase;
import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.psi.JetPsiUtil; import org.jetbrains.jet.lang.psi.JetPsiUtil;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.File; import java.io.File;
import java.lang.reflect.Method; import java.lang.reflect.Method;
@@ -102,7 +102,7 @@ public abstract class AbstractBlackBoxCodegenTest extends CodegenTestCase {
} }
catch (Throwable e) { catch (Throwable e) {
System.out.println(generateToText()); System.out.println(generateToText());
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
} }
@@ -32,7 +32,7 @@ import org.jetbrains.jet.lang.resolve.java.AnalyzerFacadeForJVM;
import org.jetbrains.jet.test.TestCaseWithTmpdir; import org.jetbrains.jet.test.TestCaseWithTmpdir;
import org.jetbrains.jet.test.util.DescriptorValidator; import org.jetbrains.jet.test.util.DescriptorValidator;
import org.jetbrains.jet.test.util.RecursiveDescriptorComparator; import org.jetbrains.jet.test.util.RecursiveDescriptorComparator;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.BufferedOutputStream; import java.io.BufferedOutputStream;
import java.io.File; import java.io.File;
@@ -129,7 +129,7 @@ public class CompileKotlinAgainstCustomBinariesTest extends TestCaseWithTmpdir {
return outputFile; return outputFile;
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -20,7 +20,7 @@ import com.google.common.io.Files;
import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.util.io.FileUtil;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.JetTestUtils; import org.jetbrains.jet.JetTestUtils;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import org.junit.rules.TestWatcher; import org.junit.rules.TestWatcher;
import org.junit.runner.Description; import org.junit.runner.Description;
@@ -37,7 +37,7 @@ public class Tmpdir extends TestWatcher {
tmpDir = Files.createTempDir().getCanonicalFile(); tmpDir = Files.createTempDir().getCanonicalFile();
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -21,7 +21,7 @@ import jet.Function1;
import jet.Unit; import jet.Unit;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import org.jetbrains.jet.utils.WrappedValues; import org.jetbrains.jet.utils.WrappedValues;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
@@ -36,7 +36,7 @@ public class LockBasedStorageManager implements StorageManager {
@NotNull @NotNull
@Override @Override
public RuntimeException handleException(@NotNull Throwable throwable) { public RuntimeException handleException(@NotNull Throwable throwable) {
throw ExceptionUtils.rethrow(throwable); throw UtilsPackage.rethrow(throwable);
} }
}; };
@@ -1,54 +0,0 @@
/*
* Copyright 2010-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.
*/
package org.jetbrains.jet.utils;
import java.io.Closeable;
public class ExceptionUtils {
private ExceptionUtils() {
}
/**
* Translate exception to unchecked exception.
*
* Return type is specified to make it possible to use it like this:
* throw ExceptionUtils.rethrow(e);
* In this case compiler knows that code after this rethrowing won't be executed.
*/
public static RuntimeException rethrow(Throwable e) {
if (e instanceof RuntimeException) {
throw (RuntimeException) e;
}
else if (e instanceof Error) {
throw (Error) e;
}
else {
throw new RuntimeException(e);
}
}
public static void closeQuietly(Closeable closeable) {
if (closeable != null) {
try {
closeable.close();
} catch (Throwable ignored) {
}
}
}
}
@@ -69,7 +69,7 @@ public class WrappedValues {
@Nullable @Nullable
public static <V> V unescapeThrowable(@Nullable Object value) { public static <V> V unescapeThrowable(@Nullable Object value) {
if (value instanceof ThrowableWrapper) { if (value instanceof ThrowableWrapper) {
throw ExceptionUtils.rethrow(((ThrowableWrapper) value).getThrowable()); throw UtilsPackage.rethrow(((ThrowableWrapper) value).getThrowable());
} }
//noinspection unchecked //noinspection unchecked
@@ -0,0 +1,41 @@
/*
* Copyright 2010-2014 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.
*/
package org.jetbrains.jet.utils
import java.io.Closeable
/**
* Translate exception to unchecked exception.
*
* Return type is specified to make it possible to use it like this:
* throw ExceptionUtils.rethrow(e);
* In this case compiler knows that code after this rethrowing won't be executed.
*/
public fun rethrow(e: Throwable): RuntimeException {
throw e
}
public fun closeQuietly(closeable: Closeable?) {
if (closeable != null) {
try {
closeable.close()
}
catch (ignored: Throwable) {
// Do nothing
}
}
}
@@ -45,7 +45,7 @@ import org.jetbrains.jet.lang.resolve.scopes.JetScope;
import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns; import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns;
import org.jetbrains.jet.renderer.DescriptorRenderer; import org.jetbrains.jet.renderer.DescriptorRenderer;
import org.jetbrains.jet.storage.LockBasedStorageManager; import org.jetbrains.jet.storage.LockBasedStorageManager;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.File; import java.io.File;
import java.net.MalformedURLException; import java.net.MalformedURLException;
@@ -128,7 +128,7 @@ public class BuiltInsReferenceResolver extends AbstractProjectComponent {
builtIns.addAll(getBuiltInSourceFiles(BUILT_INS_COMPILABLE_SRC_DIR.toURI().toURL())); builtIns.addAll(getBuiltInSourceFiles(BUILT_INS_COMPILABLE_SRC_DIR.toURI().toURL()));
} }
catch (MalformedURLException e) { catch (MalformedURLException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -18,7 +18,7 @@ package org.jetbrains.jet.editor;
import com.intellij.testFramework.EditorTestUtil; import com.intellij.testFramework.EditorTestUtil;
import com.intellij.testFramework.LightCodeInsightTestCase; import com.intellij.testFramework.LightCodeInsightTestCase;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.IOException; import java.io.IOException;
@@ -315,7 +315,7 @@ public class TypedHandlerTest extends LightCodeInsightTestCase {
checkResultByText(afterText); checkResultByText(afterText);
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -23,7 +23,7 @@ import com.intellij.testFramework.LightProjectDescriptor;
import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase; import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.InTextDirectivesUtils; import org.jetbrains.jet.InTextDirectivesUtils;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
@@ -59,7 +59,7 @@ public abstract class JetLightCodeInsightFixtureTestCase extends LightCodeInsigh
} }
} }
catch (IOException e) { catch (IOException e) {
throw ExceptionUtils.rethrow(e); throw UtilsPackage.rethrow(e);
} }
} }
@@ -40,7 +40,7 @@ import org.jetbrains.jet.codegen.GenerationUtils;
import org.jetbrains.jet.codegen.state.GenerationState; import org.jetbrains.jet.codegen.state.GenerationState;
import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.resolve.java.JetFilesProvider; import org.jetbrains.jet.lang.resolve.java.JetFilesProvider;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.util.*; import java.util.*;
import java.util.regex.Matcher; import java.util.regex.Matcher;
@@ -64,7 +64,7 @@ public abstract class PositionManagerTestCase extends MultiFileTestCase {
configureByFile(path); configureByFile(path);
} }
catch (Exception e) { catch (Exception e) {
ExceptionUtils.rethrow(e); UtilsPackage.rethrow(e);
} }
performTest(); performTest();
} }
@@ -77,7 +77,7 @@ public abstract class PositionManagerTestCase extends MultiFileTestCase {
PsiDocumentManager.getInstance(myProject).commitAllDocuments(); PsiDocumentManager.getInstance(myProject).commitAllDocuments();
} }
catch (Exception e) { catch (Exception e) {
ExceptionUtils.rethrow(e); UtilsPackage.rethrow(e);
} }
performTest(); performTest();
} }
@@ -107,7 +107,7 @@ public abstract class PositionManagerTestCase extends MultiFileTestCase {
} }
} }
catch (NoDataException e) { catch (NoDataException e) {
ExceptionUtils.rethrow(e); UtilsPackage.rethrow(e);
} }
} }
}); });
@@ -31,7 +31,7 @@ import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.resolve.java.PackageClassUtils; import org.jetbrains.jet.lang.resolve.java.PackageClassUtils;
import org.jetbrains.jet.lang.resolve.name.FqName; import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.plugin.PluginTestCaseBase; import org.jetbrains.jet.plugin.PluginTestCaseBase;
import org.jetbrains.jet.utils.ExceptionUtils; import org.jetbrains.jet.utils.UtilsPackage;
import java.io.File; import java.io.File;
@@ -61,7 +61,7 @@ public class JetExceptionFilterTest extends MultiFileTestCase {
PsiDocumentManager.getInstance(myProject).commitAllDocuments(); PsiDocumentManager.getInstance(myProject).commitAllDocuments();
} }
catch (Exception e) { catch (Exception e) {
ExceptionUtils.rethrow(e); UtilsPackage.rethrow(e);
} }
} }
@@ -32,7 +32,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import static org.jetbrains.jet.utils.ExceptionUtils.rethrow; import static org.jetbrains.jet.utils.UtilsPackage.rethrow;
import static org.jetbrains.k2js.test.BasicTest.pathToTestFilesRoot; import static org.jetbrains.k2js.test.BasicTest.pathToTestFilesRoot;
public final class RhinoUtils { public final class RhinoUtils {