diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/components/script/dom/bindings/codegen/CodegenRust.py | 4 | ||||
-rw-r--r-- | src/components/script/dom/testbinding.rs | 2 | ||||
-rw-r--r-- | src/components/script/dom/webidls/TestBinding.webidl | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/src/components/script/dom/bindings/codegen/CodegenRust.py b/src/components/script/dom/bindings/codegen/CodegenRust.py index 1fa4b47e8e4..ea5aac30305 100644 --- a/src/components/script/dom/bindings/codegen/CodegenRust.py +++ b/src/components/script/dom/bindings/codegen/CodegenRust.py @@ -628,14 +628,14 @@ def getJSToNativeConversionTemplate(type, descriptorProvider, failureCode=None, "(${val}).to_object()")) declType = CGGeneric(descriptor.nativeType) - if type.nullable() or isOptional: + if type.nullable(): templateBody = "Some(%s)" % templateBody declType = CGWrapper(declType, pre="Option<", post=">") templateBody = wrapObjectTemplate(templateBody, isDefinitelyObject, type, failureCode) - return (templateBody, declType, isOptional, "None" if isOptional else None) + return handleOptional(templateBody, declType, isOptional) if type.isSpiderMonkeyInterface(): raise TypeError("Can't handle SpiderMonkey interface arguments yet") diff --git a/src/components/script/dom/testbinding.rs b/src/components/script/dom/testbinding.rs index a441cbddcd2..031ee0a9259 100644 --- a/src/components/script/dom/testbinding.rs +++ b/src/components/script/dom/testbinding.rs @@ -145,7 +145,7 @@ impl TestBinding { pub fn PassOptionalNullableDouble(&self, _: Option<Option<f64>>) {} pub fn PassOptionalNullableString(&self, _: Option<Option<DOMString>>) {} // pub fn PassOptionalNullableEnum(&self, _: Option<Option<TestEnum>>) {} - // pub fn PassOptionalNullableInterface(&self, _: Option<Option<JS<Blob>>>) {} + pub fn PassOptionalNullableInterface(&self, _: Option<Option<JS<Blob>>>) {} pub fn PassOptionalNullableUnion(&self, _: Option<Option<HTMLElementOrLong>>) {} pub fn PassOptionalBooleanWithDefault(&self, _: bool) {} diff --git a/src/components/script/dom/webidls/TestBinding.webidl b/src/components/script/dom/webidls/TestBinding.webidl index e2a236e9199..5749214fba3 100644 --- a/src/components/script/dom/webidls/TestBinding.webidl +++ b/src/components/script/dom/webidls/TestBinding.webidl @@ -150,7 +150,7 @@ interface TestBinding { void passOptionalNullableDouble(optional double? arg); void passOptionalNullableString(optional DOMString? arg); // void passOptionalNullableEnum(optional TestEnum? arg); - // void passOptionalNullableInterface(optional Blob? arg); + void passOptionalNullableInterface(optional Blob? arg); void passOptionalNullableUnion(optional (HTMLElement or long)? arg); void passOptionalBooleanWithDefault(optional boolean arg = false); |