aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorbors-servo <release+servo@mozilla.com>2014-04-25 08:52:18 -0400
committerbors-servo <release+servo@mozilla.com>2014-04-25 08:52:18 -0400
commit27798980bf7f47fed7edf9fa506af903720612a6 (patch)
tree085a15f55ecb6800760e45e7356d4e98333014f0 /src
parent0745d656a3631fe4397e8ee50600754bd7466d53 (diff)
parentee23074232801329ff63eba9e9427a809ca9b5ea (diff)
downloadservo-27798980bf7f47fed7edf9fa506af903720612a6.tar.gz
servo-27798980bf7f47fed7edf9fa506af903720612a6.zip
auto merge of #2229 : Ms2ger/servo/getUnionAccessorSignatureType, r=jdm
Diffstat (limited to 'src')
-rw-r--r--src/components/script/dom/bindings/codegen/CodegenRust.py79
1 files changed, 0 insertions, 79 deletions
diff --git a/src/components/script/dom/bindings/codegen/CodegenRust.py b/src/components/script/dom/bindings/codegen/CodegenRust.py
index e8b723d4d98..fd3d6a883e6 100644
--- a/src/components/script/dom/bindings/codegen/CodegenRust.py
+++ b/src/components/script/dom/bindings/codegen/CodegenRust.py
@@ -2804,85 +2804,6 @@ class CGConstant(CGThing):
return CGIndenter(CGList(stringDecl(m) for m in self.constants)).define()
-def getUnionAccessorSignatureType(type, descriptorProvider):
- """
- Returns the types that are used in the getter and setter signatures for
- union types
- """
- if type.isArray():
- raise TypeError("Can't handle array arguments yet")
-
- if type.isSequence():
- nullable = type.nullable();
- if nullable:
- type = type.inner.inner
- else:
- type = type.inner
- (elementTemplate, elementDeclType,
- elementHolderType, dealWithOptional) = getJSToNativeConversionTemplate(
- type, descriptorProvider, isSequenceMember=True)
- typeName = CGWrapper(elementDeclType, pre="Sequence< ", post=" >&")
- if nullable:
- typeName = CGWrapper(typeName, pre="Nullable< ", post=" >&")
-
- return typeName
-
- if type.isUnion():
- typeName = CGGeneric(type.name)
- if type.nullable():
- typeName = CGWrapper(typeName, pre="Nullable< ", post=" >&")
-
- return typeName
-
- if type.isGeckoInterface():
- descriptor = descriptorProvider.getDescriptor(
- type.unroll().inner.identifier.name)
- typeName = CGGeneric(descriptor.nativeType)
- if type.nullable():
- typeName = CGWrapper(typeName, pre="Option<", post=">")
- else:
- typeName = CGWrapper(typeName, pre="&'a ")
- return typeName
-
- if type.isSpiderMonkeyInterface():
- typeName = CGGeneric(type.name)
- if type.nullable():
- typeName = CGWrapper(typeName, pre="Option<", post=">")
- else:
- typeName = CGWrapper(typeName, pre="&")
- return typeName
-
- if type.isString():
- return CGGeneric("const nsAString&")
-
- if type.isEnum():
- if type.nullable():
- raise TypeError("We don't support nullable enumerated arguments or "
- "union members yet")
- return CGGeneric(type.inner.identifier.name)
-
- if type.isCallback():
- return CGGeneric("JSObject*")
-
- if type.isAny():
- return CGGeneric("JS::Value")
-
- if type.isObject():
- typeName = CGGeneric("JSObject")
- if type.nullable():
- typeName = CGWrapper(typeName, post="*")
- else:
- typeName = CGWrapper(typeName, post="&")
- return typeName
-
- if not type.isPrimitive():
- raise TypeError("Need native type for argument type '%s'" % str(type))
-
- typeName = CGGeneric(builtinNames[type.tag()])
- if type.nullable():
- typeName = CGWrapper(typeName, pre="Nullable< ", post=" >&")
- return typeName
-
def getUnionTypeTemplateVars(type, descriptorProvider):
# For dictionaries and sequences we need to pass None as the failureCode
# for getJSToNativeConversionTemplate.