Uses 108K of libraries. Compilation Failed (20060L/148K).
!7 set flag DynModule. // for transpilation set flag NoSwitchableFields. sclass JavaEval extends DynPrintLog { S expression; bool realEval = true; transient bool calculating; transient O value; transient JTextArea taInput; transient Throwable error; transient JPanel babiesPanel; start { loadImage2(#1101447); makeDependent_postProcess = r updateBabySymbols; dm_vmBus_onMessage('gcDone, r updateBabySymbols); doEvery(300.0, r updateBabySymbols); // just to be sure to updat eit sometimes } visualize { ret centerAndSouthWithMargins( jvsplit( centerAndEastWithMarginInbetween( onCtrlEnter(taInput = jEnableUndoRedo(typeWriterTextArea(expression)), rThread evalIt), vstackWithSpacing( jbutton("Fresh", rThread { refresh(); evalIt() }), jbutton("Eval", rThread evalIt), withToolTip("Don't interpret", dm_fieldCheckBox("Real", 'realEval)))), super.visualize()), jScrollWithoutBorder(babiesPanel = leftAlignedLine())); } void refresh { call(dm_transpiler(), 'refresh); loadFunctions_clearCache(); print("Refreshed translator."); } void evalIt { if (calculating) ret; calculating = true; temp afterwards(r { calculating = false }); dm_javaEvalModule_doIt(gtt(taInput), realEval); } void updateBabySymbols enter { dm_q().add(r { final int n = l(dependentClasses()); final BufferedImage img = scaleImageToWidth(loadImage2(#1101447), 24); swing { removeAllComponents(babiesPanel); repeat n { babiesPanel.add(toolTip("You have made one cute little subprocess!", jimage(img))); } revalidate(babiesPanel); } }); } }
Began life as a copy of #1017551
download show line numbers debug dex old transpilations
Travelled to 8 computer(s): bhatertpkbcr, cfunsshuasjs, gwrvuhgaqvyk, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tvejysmllsmz, vouqrxazstgt
No comments. add comment
Snippet ID: | #1020090 |
Snippet name: | Multi-Line Java Eval w/baby symbols [Evaluate Java Code, Dyn Module, one baby per submodule made :)] |
Eternal ID of this version: | #1020090/18 |
Text MD5: | 2a07f6216b26f0897deac86272d92bca |
Transpilation MD5: | 6d9dfe2d61957f2fcc9e25e82474df76 |
Author: | stefan |
Category: | javax / stefan's os |
Type: | JavaX source code (Dynamic Module) |
Public (visible to everyone): | Yes |
Archived (hidden from active list): | No |
Created/modified: | 2018-12-14 01:05:45 |
Source code size: | 1819 bytes / 61 lines |
Pitched / IR pitched: | No / No |
Views / Downloads: | 335 / 1385 |
Version history: | 17 change(s) |
Referenced in: | #1020212 - Stack Trace showing unnoticed deadlock in old version of setField() |