mirror of
https://github.com/servo/servo.git
synced 2025-08-05 05:30:08 +01:00
Common up some code in the conversion to nullable and non-nullable primitive types.
This commit is contained in:
parent
54a59b9d38
commit
922d191948
1 changed files with 11 additions and 19 deletions
|
@ -1238,7 +1238,6 @@ for (uint32_t i = 0; i < length; ++i) {
|
||||||
if failureCode is None:
|
if failureCode is None:
|
||||||
failureCode = 'return 0'
|
failureCode = 'return 0'
|
||||||
|
|
||||||
if type.nullable():
|
|
||||||
successVal = "v"
|
successVal = "v"
|
||||||
if preSuccess or postSuccess:
|
if preSuccess or postSuccess:
|
||||||
successVal = preSuccess + successVal + postSuccess
|
successVal = preSuccess + successVal + postSuccess
|
||||||
|
@ -1249,6 +1248,7 @@ for (uint32_t i = 0; i < length; ++i) {
|
||||||
" Err(_) => %s\n"
|
" Err(_) => %s\n"
|
||||||
"}" % (successVal, failureCode))
|
"}" % (successVal, failureCode))
|
||||||
|
|
||||||
|
if type.nullable():
|
||||||
if defaultValue is not None and isinstance(defaultValue, IDLNullValue):
|
if defaultValue is not None and isinstance(defaultValue, IDLNullValue):
|
||||||
template = CGWrapper(CGIndenter(CGGeneric(template)),
|
template = CGWrapper(CGIndenter(CGGeneric(template)),
|
||||||
pre="if ${haveValue} {\n",
|
pre="if ${haveValue} {\n",
|
||||||
|
@ -1261,16 +1261,8 @@ for (uint32_t i = 0; i < length; ++i) {
|
||||||
else:
|
else:
|
||||||
assert(defaultValue is None or
|
assert(defaultValue is None or
|
||||||
not isinstance(defaultValue, IDLNullValue))
|
not isinstance(defaultValue, IDLNullValue))
|
||||||
#XXXjdm conversionBehavior should be used
|
|
||||||
successVal = "v"
|
|
||||||
if preSuccess or postSuccess:
|
|
||||||
successVal = preSuccess + successVal + postSuccess
|
|
||||||
template = (
|
|
||||||
"match JSValConvertible::from_jsval(cx, ${val}) {\n"
|
|
||||||
" Err(_) => %s,\n"
|
|
||||||
" Ok(v) => ${declName} = %s\n"
|
|
||||||
"}" % (failureCode, successVal))
|
|
||||||
declType = CGGeneric(typeName)
|
declType = CGGeneric(typeName)
|
||||||
|
|
||||||
if (defaultValue is not None and
|
if (defaultValue is not None and
|
||||||
# We already handled IDLNullValue, so just deal with the other ones
|
# We already handled IDLNullValue, so just deal with the other ones
|
||||||
not isinstance(defaultValue, IDLNullValue)):
|
not isinstance(defaultValue, IDLNullValue)):
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue