Libraryless. Click here for Pure Java version (444L/4K/11K).
!636 !standard functions !L<S> m { p { L<S> tok = javaTok(loadMainJava()); for (L<S> c : allClasses(tok)) { print("Double stuff remover: Processing class " + getClassDeclarationName(c)); new Set<S> vars; new Set<S> classes; for (L<S> ic : innerClasses(c)) { S name = getClassDeclarationName(ic); print("Found inner class " + name); if (classes.contains(name)) { print("Removing duplicate inner class " + name); clearAllTokens(ic); ic.set(ic.size()-1, "\n"); // generous line break :) } else classes.add(name); } L<S> c2 = javaTok(join(c)); // retokenize //print(join(c)); try { for (L<S> v : allVariableDeclarations(c2)) { S name = getVarDeclarationName(v); print("Found var " + name); if (vars.contains(name)) { print("Removing duplicate variable " + name); clearAllTokens(v); v.set(v.size()-1, "\n"); // generous line break :) } else vars.add(name); } } catch (Exception e) { printStackTrace(e); } clearAllTokens(c); c.set(0, join(c2)); } print("done"); saveMainJava(join(tok)); } }
Note: Does not yet scan inner classes for duplicate variables.
download show line numbers debug dex old transpilations
Travelled to 20 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, ddnzoavkxhuk, dhtvkmknsjym, gwrvuhgaqvyk, ishqpsrjomds, jlatgrcjtklg, jtubtzbbkimh, liwcxgsjrgqn, lpdgvwnxivlt, mqqgnosmbjvj, onxytkatvevr, pyentgdyhuwx, pzhvpgtvlbxg, teubizvjbppd, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
| Snippet ID: | #1001045 | 
| Snippet name: | Double variable/double inner class remover (now standard) | 
| Eternal ID of this version: | #1001045/1 | 
| Text MD5: | 9dc9d6c5cc8bd04660af6062b9573fa7 | 
| Transpilation MD5: | 3bb43dc5f44eff091f2db2774e23492d | 
| Author: | stefan | 
| Category: | |
| Type: | JavaX translator | 
| Public (visible to everyone): | Yes | 
| Archived (hidden from active list): | No | 
| Created/modified: | 2016-01-21 03:05:30 | 
| Source code size: | 1348 bytes / 49 lines | 
| Pitched / IR pitched: | No / No | 
| Views / Downloads: | 1334 / 16197 | 
| Referenced in: | [show references] |