aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/script/dom/bindings/codegen/CodegenRust.py
diff options
context:
space:
mode:
authorbors-servo <release+servo@mozilla.com>2013-11-06 10:07:21 -0800
committerbors-servo <release+servo@mozilla.com>2013-11-06 10:07:21 -0800
commit5c101526a1432ca783028d70185f78ae0d2559a1 (patch)
tree39a221c86aa2499f5d2126bfb222c73e0197230f /src/components/script/dom/bindings/codegen/CodegenRust.py
parent9d8c97d3b0ac932c1db8c71016eab531e5aeefa0 (diff)
parentccd930668118cfdb9f823983ac391de906e0c54c (diff)
downloadservo-5c101526a1432ca783028d70185f78ae0d2559a1.tar.gz
servo-5c101526a1432ca783028d70185f78ae0d2559a1.zip
auto merge of #1194 : Ms2ger/servo/DerivedWrapper, r=jdm
Diffstat (limited to 'src/components/script/dom/bindings/codegen/CodegenRust.py')
-rw-r--r--src/components/script/dom/bindings/codegen/CodegenRust.py17
1 files changed, 2 insertions, 15 deletions
diff --git a/src/components/script/dom/bindings/codegen/CodegenRust.py b/src/components/script/dom/bindings/codegen/CodegenRust.py
index b36f0ebd860..1d1eb1e4fe0 100644
--- a/src/components/script/dom/bindings/codegen/CodegenRust.py
+++ b/src/components/script/dom/bindings/codegen/CodegenRust.py
@@ -1569,16 +1569,7 @@ for (uint32_t i = 0; i < length; ++i) {
wrappingCode = ""
if (not descriptor.interface.isExternal() and
not descriptor.interface.isCallback()):
- if descriptor.wrapperCache:
- wrapMethod = "WrapNewBindingObject"
- else:
- if not isCreator:
- raise MethodNotCreatorError(descriptor.interface.identifier.name)
- wrapMethod = "WrapNewBindingNonWrapperCachedObject"
- if descriptor.pointerType == '':
- wrap = "%s.wrap(cx, ${obj}, ${jsvalPtr} as *mut JSVal)" % result
- else:
- wrap = "%s(cx, ${obj}, %s as @mut Reflectable, ${jsvalPtr} as *mut JSVal)" % (wrapMethod, result)
+ wrap = "GetReflector(cx, (%s).reflector(), ${jsvalPtr} as *mut JSVal)" % result
# We don't support prefable stuff in workers.
assert(not descriptor.prefable or not descriptor.workers)
if not descriptor.prefable:
@@ -1596,11 +1587,7 @@ for (uint32_t i = 0; i < length; ++i) {
failed = wrapAndSetPtr("HandleNewBindingWrappingFailure(cx, ${obj}, %s, ${jsvalPtr})" % result)
wrappingCode += wrapAndSetPtr(wrap, failed)
else:
- #wrap = "WrapObject(cx, ${obj}, %s, %s${jsvalPtr})" % (result, getIID)
- if descriptor.pointerType == '':
- wrap = "(%s.wrap(cx, ${obj}, ${jsvalPtr}) != 0)" % result
- else:
- wrap = "if WrapNewBindingObject(cx, ${obj}, %s as @mut Reflectable, ${jsvalPtr}) { 1 } else { 0 };" % result
+ wrap = "GetReflector(cx, (%s).reflector(), ${jsvalPtr} as *mut JSVal)" % result
wrappingCode += wrapAndSetPtr(wrap)
return (wrappingCode, False)