Add support for capturing frame local variables #19
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Based on #18, will rebase after that's merged; until then just look at latest commit.
This still needs docs, some tests, and some better failsafes, but I've tested it manually and it seems to work great. A bit WIP, but the core of it, including approach for dealing with non-json-serializable values and deeply nested tables, is done; open to comments on implementation strategy/conf options/etc.
To deal with non-json-serializable values, I made a
json_prep_value
helper which takes a lua value and makes it safe to pass tocjson.encode
by either tostringing or dropping pieces as necessary to comply with cjson's specified requirements, mainly:and
There are still a couple cases missing that I need to add, mainly NaN/Infinity, and I also want to have a better failsafe for any general unexpected case where
cjson.encode
fails.