Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Adapt extension protocol to allow for placement new and placement delete #15

@hostilefork

Description

@hostilefork

The C++ objects wrap a RenCell but add their own tracking information to it. Right now, for instance, when an extension is called it is done with data on the Rebol/Red stack...but the stack elements are of size RenCell... not of size Value. Hence we must, in a new place on the C++ stack, make Values and copy the bits into them.

If Rebol or Red knew they were calling the extension, they could leave the right amount of room for a placement new to just read and write the cells in place on the stack. The return value wouldn't have to be copied back into the Rebol/Red stack either, because it would by convention be understood to have been put in the right place.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions