diff options
Diffstat (limited to 'src/components/script/dom/bindings/codegen/CodegenRust.py')
-rw-r--r-- | src/components/script/dom/bindings/codegen/CodegenRust.py | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/src/components/script/dom/bindings/codegen/CodegenRust.py b/src/components/script/dom/bindings/codegen/CodegenRust.py index ccd010a1b02..5151179f89a 100644 --- a/src/components/script/dom/bindings/codegen/CodegenRust.py +++ b/src/components/script/dom/bindings/codegen/CodegenRust.py @@ -658,16 +658,12 @@ def getJSToNativeConversionTemplate(type, descriptorProvider, failureCode=None, else: nullBehavior = treatAs[treatNullAs] - def getConversionCode(isOptional=False): - strval = "strval" - if isOptional: - strval = "Some(%s)" % strval - + def getConversionCode(): conversionCode = ( "match FromJSValConvertible::from_jsval(cx, ${val}, %s) {\n" - " Ok(strval) => %s,\n" + " Ok(strval) => strval,\n" " Err(_) => { %s },\n" - "}" % (nullBehavior, strval, exceptionCode)) + "}" % (nullBehavior, exceptionCode)) if defaultValue is None: return conversionCode @@ -690,15 +686,10 @@ def getJSToNativeConversionTemplate(type, descriptorProvider, failureCode=None, return handleDefault(conversionCode, default) declType = "DOMString" - initialValue = None if type.nullable(): declType = "Option<%s>" % declType - if isOptional: - declType = "Option<%s>" % declType - initialValue = "None" - - return (getConversionCode(isOptional), CGGeneric(declType), False, initialValue) + return handleOptional(getConversionCode(), CGGeneric(declType), isOptional) if type.isEnum(): assert not isEnforceRange and not isClamp |