diff options
author | Chad Austin <chad@imvu.com> | 2013-03-19 16:43:03 -0700 |
---|---|---|
committer | Jukka Jylänki <jujjyl@gmail.com> | 2013-04-12 14:26:22 +0300 |
commit | 6f219fd0caad22aadad34dd46bc8043d299b4299 (patch) | |
tree | 11400c8421a89b8498699c9a1f8e0f21aceff6f1 /src | |
parent | fe2bcf89921105ad3719655ec59905cc63be5c3d (diff) |
Change EMSCRIPTEN_BINDINGS syntax and allow for out-of-order registration of value_tuple elements.
Diffstat (limited to 'src')
-rwxr-xr-x | src/embind/embind.js | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/embind/embind.js b/src/embind/embind.js index 48bf2a7f..5dd631ff 100755 --- a/src/embind/embind.js +++ b/src/embind/embind.js @@ -339,10 +339,12 @@ function __embind_register_tuple_element( memberPointer = copyMemberPointer(memberPointer, memberPointerSize); var tupleType = requireRegisteredType(rawTupleType, 'tuple'); - // TODO: this could register elements out of order + var index = tupleType.elements.length; + tupleType.elements.push(undefined); + whenDependentTypesAreResolved([rawType], function(type) { type = type[0]; - tupleType.elements.push({ + tupleType.elements[index] = { read: function(ptr) { return type.fromWireType(getter(ptr, memberPointer)); }, @@ -351,7 +353,7 @@ function __embind_register_tuple_element( setter(ptr, memberPointer, type.toWireType(destructors, o)); runDestructors(destructors); } - }); + }; }); } |