[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/geiser-kawa 5d8256d 041/119: Fix re-importing exception
From: |
Philip Kaludercic |
Subject: |
[nongnu] elpa/geiser-kawa 5d8256d 041/119: Fix re-importing exception |
Date: |
Sun, 1 Aug 2021 18:30:35 -0400 (EDT) |
branch: elpa/geiser-kawa
commit 5d8256de35ab81363af37ef8abd8b3d60af65d1f
Author: spellcard199 <spellcard199@protonmail.com>
Commit: spellcard199 <spellcard199@protonmail.com>
Fix re-importing exception
---
src/main/java/kawageiser/Geiser.java | 60 ++++++++++++++++++++----------------
1 file changed, 33 insertions(+), 27 deletions(-)
diff --git a/src/main/java/kawageiser/Geiser.java
b/src/main/java/kawageiser/Geiser.java
index 7db7e5b..8b06efb 100644
--- a/src/main/java/kawageiser/Geiser.java
+++ b/src/main/java/kawageiser/Geiser.java
@@ -42,33 +42,39 @@ public class Geiser implements Runnable {
// - type warnings: for the same reason of the previous point
// - less boilerplate for checking argument types
try {
- lang.defineFunction(
- "geiser:eval",
- lang.eval("kawageiser.GeiserEval:evalStr"));
- lang.defineFunction(
- "geiser:autodoc",
- lang.eval("kawageiser.GeiserAutodoc:autodoc"));
- lang.defineFunction(
- "geiser:module-completions",
-
lang.eval("kawageiser.GeiserCompleteModule:completeModule"));
- lang.defineFunction(
- "geiser:load-file",
- lang.eval("kawageiser.GeiserLoadFile:loadFile"));
- lang.defineFunction(
- "geiser:completions",
-
lang.eval("kawageiser.GeiserCompleteSymbol:getCompletions"));
- lang.defineFunction(
- "geiser:no-values",
- lang.eval("kawageiser.GeiserNoValues:noValues"));
- lang.defineFunction(
- "geiser:complete-java",
-
lang.eval("kawageiser.java.GeiserCompleteJava:completeJava"));
- lang.defineFunction(
- "geiser:manual-epub-unzip-to-tmp-dir",
-
lang.eval("kawageiser.geiserDoc.ManualEpubUnzipToTmpDir:unzipToTmpDir"));
- lang.defineFunction(
- "geiser:macroexpand",
- lang.eval("kawageiser.GeiserMacroexpand:expand"));
+ if (lang.lookup("geiser:eval") == null) {
+ // The reason for this if block is that if someone re-imported
this module
+ // and the following code was executed, this exception would
happen:
+ // java.lang.IllegalStateException:
+ // prohibited define/redefine of geiser:eval in
#<environment kawa-environment>
+ lang.defineFunction(
+ "geiser:eval",
+ lang.eval("kawageiser.GeiserEval:evalStr"));
+ lang.defineFunction(
+ "geiser:autodoc",
+ lang.eval("kawageiser.GeiserAutodoc:autodoc"));
+ lang.defineFunction(
+ "geiser:module-completions",
+
lang.eval("kawageiser.GeiserCompleteModule:completeModule"));
+ lang.defineFunction(
+ "geiser:load-file",
+ lang.eval("kawageiser.GeiserLoadFile:loadFile"));
+ lang.defineFunction(
+ "geiser:completions",
+
lang.eval("kawageiser.GeiserCompleteSymbol:getCompletions"));
+ lang.defineFunction(
+ "geiser:no-values",
+ lang.eval("kawageiser.GeiserNoValues:noValues"));
+ lang.defineFunction(
+ "geiser:complete-java",
+
lang.eval("kawageiser.java.GeiserCompleteJava:completeJava"));
+ lang.defineFunction(
+ "geiser:manual-epub-unzip-to-tmp-dir",
+
lang.eval("kawageiser.geiserDoc.ManualEpubUnzipToTmpDir:unzipToTmpDir"));
+ lang.defineFunction(
+ "geiser:macroexpand",
+ lang.eval("kawageiser.GeiserMacroexpand:expand"));
+ }
} catch (Throwable throwable) {
throwable.printStackTrace();
}
- [nongnu] elpa/geiser-kawa d744274 080/119: Cask file: add development dependencies, (continued)
- [nongnu] elpa/geiser-kawa d744274 080/119: Cask file: add development dependencies, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 9cc5ee1 083/119: Update kawa-devutil version + add default for evaluator, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 19d97d2 098/119: Small fix for package linting, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 6cb6826 107/119: melpa/melpa#6858 - Change regex in geiser-impl--add-to-alist to respect convention, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa fe548f9 104/119: melpa/melpa#6858 - Rename non-standard "geiser-kawa-util--eval/result" to "geiser-kawa-util--eval-get-result", Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa c7c8dae 110/119: melpa/melpa#6858 - Sharp-quote "identity" function, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 52605a4 109/119: melpa/melpa#6858 - Rename 'geiser-kawa-deps--run-kawa--compil-hook' to 'geiser-kawa-deps--run-kawa--compile-hook', Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa e171876 001/119: First commit, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 2e9138c 034/119: Small refactor + update comment in GeiserEval, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 05e1eaa 029/119: Add initial support for completing java packages, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 5d8256d 041/119: Fix re-importing exception,
Philip Kaludercic <=
- [nongnu] elpa/geiser-kawa 4247497 007/119: Add geiser-kawa.el (project is starting to work), Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa f1d6f8d 023/119: Add maven-wrapper, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 0f5c744 016/119: Avoid issues with older Kawa versions when using quickstart.el, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 5651a3a 031/119: Add message if no completions found, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa cebaa28 042/119: Add test, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 6495077 064/119: Fix: replace lang.getEnvironment() with Environment.user() as default environment, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa b15c4bc 069/119: TODO.org: add todo, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 56b7524 076/119: Add more elisp tests, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 0fd7c30 086/119: README.org: update, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa f8cf352 096/119: Update kawa-devutil version + add Random_notes.org, Philip Kaludercic, 2021/08/01