Uses 911K of libraries. Click here for Pure Java version (2620L/14K).
!7 sclass Prop { S text, module; Runnable action; long date = now(); [stdEq] } cmodule ProposedActions > DynObjectTable<Prop> { transient int expiryTime = 10000; transient long timer; // When we began thinking transient int thinkTime = 2000; start { dontPersist(); // can't persist foreign Runnables //doEvery(1000, r cleanList); } void addProposition(S text, Runnable action, S module) { add(nu(Prop, +text, +action, +module)); } void cleanList { setField(data := objectsWhereFieldGreaterThan(cloneList(data), date := now()-expiryTime)); if (syncNempty(data)) { if (timer == 0) timer = now(); if (now() >= timer+thinkTime) { S out = getString(random(data), 'text); clear(); timer = 0; } } } }
Began life as a copy of #1016982
download show line numbers debug dex old transpilations
Travelled to 7 computer(s): bhatertpkbcr, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tvejysmllsmz, vouqrxazstgt, xrpafgyirdlv
No comments. add comment
Snippet ID: | #1027426 |
Snippet name: | Proposed Actions [dev.] |
Eternal ID of this version: | #1027426/4 |
Text MD5: | 5ffeee8fd4b0ebd7795300efd60a3d7a |
Transpilation MD5: | 3171e1f4e1ed9bfcc898fab9827435c5 |
Author: | stefan |
Category: | javax / dynamic modules |
Type: | JavaX source code (Dynamic Module) |
Public (visible to everyone): | Yes |
Archived (hidden from active list): | No |
Created/modified: | 2020-03-18 20:00:45 |
Source code size: | 834 bytes / 36 lines |
Pitched / IR pitched: | No / No |
Views / Downloads: | 180 / 380 |
Version history: | 3 change(s) |
Referenced in: | #1027427 - dm_proposeAction |