aboutsummaryrefslogtreecommitdiff
path: root/nomsu_decompiler.lua
AgeCommit message (Collapse)Author
2019-03-04Better codegen and error reportingBruce Hill
2019-02-06Added underscores for numbers (e.g. 1_000, 0xDEAD_BEEF), and fixed someBruce Hill
compatibility and decompiling issues.
2019-02-05Bunch of changes:Bruce Hill
- Added shebangs to generated code output - SyntaxTree:map() -> SyntaxTree:with(), and corresponding changes to metaprogramming API - Added (return Lua 1) shorthand for (return (Lua 1)) - (1 and 2 and 3) compile rule mapping to -> (1 and (*extra arguments*)) - Don't scan for errors, just report them when compiling - Syntax changes: - Added prefix actions (e.g. #$foo) - Operator chars now include utf8 chars - Ditch "escaped nomsu" type (use (\ 1) compile action instead)
2019-01-25Fixed untested codepath for generating ($x, (foo; baz))Bruce Hill
2019-01-18Fixed lists/dicts to autoformat with spacer lines when appropriate (sameBruce Hill
rules as for Blocks)
2019-01-15Fix for formatting indented code with the format tool.Bruce Hill
2019-01-15Updating to v6.15, which includes "external (...)" instead of separateBruce Hill
'externally' versions of stuff, and some auto-formatting.
2019-01-14Fixed some bugs with append/add discrepancy, misguided ".." matching forBruce Hill
needs_space, and list items getting falsely forced into indented form.
2019-01-10Major overhaul of how modules and environments work, along with someBruce Hill
steamlining and tweaks to the makefile. Version bump: 6.14.13.8
2019-01-07Fix for no-arg functioncalls of expressions (e.g. $fn()), and lineBruce Hill
wrapping of list/dicts.
2019-01-01Some changes to the error API, a fix for statement block parsing, andBruce Hill
replacing ((foo 1 baz)'s meaning) with $(foo 1 baz).
2019-01-01Added support for $(foo 1 baz 2) as a way to access (foo 1 baz 2)'sBruce Hill
meaning.
2018-12-31Added the ": for $ in $: ..." shorthand for indented comprehensions.Bruce Hill
2018-12-30Fixes for: indented strings ending in ", peeking at code object textBruce Hill
before modifying them, and major upgrades to the nomsu codegen, including support for indented inline arguments (instead of using "\n..") and just generally better line wrapping, including finally good rules for when to use indented text (for almost all cases).
2018-12-30Some minor fixes for (type of $ast) and indexing codegen.Bruce Hill
2018-12-30Update to new syntax.Bruce Hill
2018-12-19Added parentheses to prevent stupid breakage.Bruce Hill
2018-12-18Initial pass on updating syntax.Bruce Hill
2018-12-14Removed EOL commentsBruce Hill
2018-12-14Fix for "\($x)abc" getting codegen'd to "$xabc"Bruce Hill
2018-12-14Parenthesizing inline method targets when needed.Bruce Hill
2018-12-14Updating to support multiple method calls.Bruce Hill
2018-12-14Fixed multi-line methodcallsBruce Hill
2018-12-14More fixes.Bruce Hill
2018-12-14Fix for nomsu codegen for methods.Bruce Hill
2018-12-14Initial setup work for syntax version 5.Bruce Hill
2018-11-29Renamed append/concat_append to add/concat_add for Code objects.Bruce Hill
2018-11-17In-progress (but working) overhaul of some elements including: functionBruce Hill
calls, lib/thing.nom API, multi-assignments, varargs, etc.
2018-11-12Fix for codegen of Set-style dicts.Bruce Hill
2018-11-11Added (% as hex) and fixed bug with text interpolation codegen notBruce Hill
adding parens around indexchains.
2018-11-11Fixed some autoformatting stuff, and prepping to deprecate some mathBruce Hill
shorthand.
2018-11-11Now preserving hex numbers with "0xF00" -> parse -> decompile ->Bruce Hill
"0xF00", fix for (compile error at ...)
2018-11-11Lots of fixes to the upgrading and codegen/autoformatting pipeline, alsoBruce Hill
deleted nomnom files, since they're mostly not needed anymore.
2018-11-10RecompileBruce Hill
2018-11-10Tweaks to line clumpingBruce Hill
2018-11-09Fixed word clumping with linebreaks.Bruce Hill
2018-11-09Fixed other place for clumping "'"Bruce Hill
2018-11-09Changed clumping to only be different for "'", not other operators.Bruce Hill
2018-11-09RecompileBruce Hill
2018-11-09Fixed `'s` clumping for stuff like (%foo's metatable)Bruce Hill
2018-11-09Fixed decompile issue with short actions not getting indented.Bruce Hill
2018-11-09Fixed comment clumping issue.Bruce Hill
2018-11-09Better handling of shebangs and comments at the top of a file.Bruce Hill
2018-11-09Improvements for parenthesization of escaped nomsu.Bruce Hill
2018-11-09Fixing the upgrade pipeline, plus some misc. fixes.Bruce Hill
2018-11-09No longer passing `tree` to every compile action. Now, you can justBruce Hill
return a LuaCode object, and it will automatically get a source from `tree` if it didn't already have a source. Plus some fixes/cleanup.
2018-11-08Major overhaul, splitting nomsu_compiler into nomsu_environment,Bruce Hill
nomsu_compiler, and nomsu_decompiler. Also added comprehensions.