Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Updates to account for FUNC_BODY(), BLANK
This syncs Ren-Cpp and Ren Garden with the master branch of Ren-C after a somewhat long period of drift. The main change is an improvement surrounding the amount of information that can be "stowed" with a customized native function. Previously, function REBVALs (4 pointers in size) contained header bits, a spec array pointer, a paramlist array pointer, and a native C function pointer. This put the burden on Ren-Cpp to find a way to locate the C++ std::function implementing its extensions based on the information passed in--because the raw native function pointer would not be enough. That led to the ugly lambda identity trick of REN_STD_FUNCTION. (The decision was made at a time when no assumptions were being made about what was being passed *other* than the function pointer. Today's decision-making environment is much different than the one which guided that choice.) This gets rid of REN_STD_FUNCTION, instead taking advantage of the ability to stow arbitrary values along with the function via FUNC_BODY() when the instance is created. It also does the change from NONE => BLANK, as NONE is being retaken to mean "none of the expressions in the block are true".
- Loading branch information
1 parent
8b2d705
commit b0ce9b0
Showing
21 changed files
with
286 additions
and
322 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.