mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 778150 part 2. Default methods to infallible. Allow annotation of fallible methods in WebIDL using [Throws]. r=peterv
[Throws] can either take no value, or can take MainThread or Workers if the throwing behavior is only happening on main thread or in workers.
This commit is contained in:
parent
2b85439c92
commit
a17389cd6f
@ -2978,8 +2978,11 @@ class CGPerSignatureCall(CGThing):
|
||||
isCreator = memberIsCreator(self.idlNode)
|
||||
if isCreator:
|
||||
# We better be returning addrefed things!
|
||||
assert isResultAlreadyAddRefed(self.descriptor,
|
||||
self.extendedAttributes)
|
||||
assert(isResultAlreadyAddRefed(self.descriptor,
|
||||
self.extendedAttributes) or
|
||||
# Workers use raw pointers for new-object return
|
||||
# values or something
|
||||
self.descriptor.workers)
|
||||
|
||||
resultTemplateValues = { 'jsvalRef': '*vp', 'jsvalPtr': 'vp',
|
||||
'isCreator': isCreator}
|
||||
|
@ -290,21 +290,21 @@ class Descriptor(DescriptorProvider):
|
||||
return self.interface.hasInterfaceObject() or self.interface.hasInterfacePrototypeObject()
|
||||
|
||||
def getExtendedAttributes(self, member, getter=False, setter=False):
|
||||
def ensureValidInfallibleExtendedAttribute(attr):
|
||||
def ensureValidInfallibilityExtendedAttribute(name, attr):
|
||||
assert(attr is None or attr is True or len(attr) == 1)
|
||||
if (attr is not None and attr is not True and
|
||||
'Workers' not in attr and 'MainThread' not in attr):
|
||||
raise TypeError("Unknown value for 'infallible': " + attr[0])
|
||||
raise TypeError(("Unknown value for '%s': " % name) + attr[0])
|
||||
|
||||
name = member.identifier.name
|
||||
if member.isMethod():
|
||||
attrs = self.extendedAttributes['all'].get(name, [])
|
||||
infallible = member.getExtendedAttribute("Infallible")
|
||||
ensureValidInfallibleExtendedAttribute(infallible)
|
||||
if (infallible is not None and
|
||||
(infallible is True or
|
||||
('Workers' in infallible and self.workers) or
|
||||
('MainThread' in infallible and not self.workers))):
|
||||
throws = member.getExtendedAttribute("Throws")
|
||||
ensureValidInfallibilityExtendedAttribute("Throws", throws)
|
||||
if (throws is None or
|
||||
(throws is not True and
|
||||
('Workers' not in throws or not self.workers) and
|
||||
('MainThread' not in throws or self.workers))):
|
||||
attrs.append("infallible")
|
||||
return attrs
|
||||
|
||||
@ -317,7 +317,7 @@ class Descriptor(DescriptorProvider):
|
||||
infallibleAttr = "GetterInfallible" if getter else "SetterInfallible"
|
||||
infallible = member.getExtendedAttribute(infallibleAttr)
|
||||
|
||||
ensureValidInfallibleExtendedAttribute(infallible)
|
||||
ensureValidInfallibilityExtendedAttribute("Infallible", infallible)
|
||||
if (infallible is not None and
|
||||
(infallible is True or
|
||||
('Workers' in infallible and self.workers) or
|
||||
|
@ -676,9 +676,11 @@ class IDLInterface(IDLObjectWithScope):
|
||||
allowForbidden=True)
|
||||
|
||||
method = IDLMethod(self.location, identifier, retType, args)
|
||||
# Constructors are always Creators and never have any
|
||||
# other extended attributes.
|
||||
method.addExtendedAttributes(["Creator"])
|
||||
# Constructors are always Creators and are always
|
||||
# assumed to be able to throw (since there's no way to
|
||||
# indicate otherwise) and never have any other
|
||||
# extended attributes.
|
||||
method.addExtendedAttributes([("Creator",), ("Throws",)])
|
||||
method.resolve(self)
|
||||
|
||||
self._extendedAttrDict[identifier] = attrlist if len(attrlist) else True
|
||||
|
@ -52,7 +52,7 @@ public:
|
||||
|
||||
bool GetIndirectlyImplementedProperty(ErrorResult&);
|
||||
void SetIndirectlyImplementedProperty(bool, ErrorResult&);
|
||||
void IndirectlyImplementedMethod(ErrorResult&);
|
||||
void IndirectlyImplementedMethod();
|
||||
};
|
||||
|
||||
// IID for the TestExternalInterface
|
||||
@ -131,254 +131,232 @@ public:
|
||||
int8_t GetReadonlyByte(ErrorResult&);
|
||||
int8_t GetWritableByte(ErrorResult&);
|
||||
void SetWritableByte(int8_t, ErrorResult&);
|
||||
void PassByte(int8_t, ErrorResult&);
|
||||
int8_t ReceiveByte(ErrorResult&);
|
||||
void PassOptionalByte(const Optional<int8_t>&, ErrorResult&);
|
||||
void PassOptionalByteWithDefault(int8_t, ErrorResult&);
|
||||
void PassNullableByte(Nullable<int8_t>&, ErrorResult&);
|
||||
void PassOptionalNullableByte(const Optional< Nullable<int8_t> >&,
|
||||
ErrorResult&);
|
||||
void PassByte(int8_t);
|
||||
int8_t ReceiveByte();
|
||||
void PassOptionalByte(const Optional<int8_t>&);
|
||||
void PassOptionalByteWithDefault(int8_t);
|
||||
void PassNullableByte(Nullable<int8_t>&);
|
||||
void PassOptionalNullableByte(const Optional< Nullable<int8_t> >&);
|
||||
|
||||
int16_t GetReadonlyShort(ErrorResult&);
|
||||
int16_t GetWritableShort(ErrorResult&);
|
||||
void SetWritableShort(int16_t, ErrorResult&);
|
||||
void PassShort(int16_t, ErrorResult&);
|
||||
int16_t ReceiveShort(ErrorResult&);
|
||||
void PassOptionalShort(const Optional<int16_t>&, ErrorResult&);
|
||||
void PassOptionalShortWithDefault(int16_t, ErrorResult&);
|
||||
void PassShort(int16_t);
|
||||
int16_t ReceiveShort();
|
||||
void PassOptionalShort(const Optional<int16_t>&);
|
||||
void PassOptionalShortWithDefault(int16_t);
|
||||
|
||||
int32_t GetReadonlyLong(ErrorResult&);
|
||||
int32_t GetWritableLong(ErrorResult&);
|
||||
void SetWritableLong(int32_t, ErrorResult&);
|
||||
void PassLong(int32_t, ErrorResult&);
|
||||
int16_t ReceiveLong(ErrorResult&);
|
||||
void PassOptionalLong(const Optional<int32_t>&, ErrorResult&);
|
||||
void PassOptionalLongWithDefault(int32_t, ErrorResult&);
|
||||
void PassLong(int32_t);
|
||||
int16_t ReceiveLong();
|
||||
void PassOptionalLong(const Optional<int32_t>&);
|
||||
void PassOptionalLongWithDefault(int32_t);
|
||||
|
||||
int64_t GetReadonlyLongLong(ErrorResult&);
|
||||
int64_t GetWritableLongLong(ErrorResult&);
|
||||
void SetWritableLongLong(int64_t, ErrorResult&);
|
||||
void PassLongLong(int64_t, ErrorResult&);
|
||||
int64_t ReceiveLongLong(ErrorResult&);
|
||||
void PassOptionalLongLong(const Optional<int64_t>&, ErrorResult&);
|
||||
void PassOptionalLongLongWithDefault(int64_t, ErrorResult&);
|
||||
void PassLongLong(int64_t);
|
||||
int64_t ReceiveLongLong();
|
||||
void PassOptionalLongLong(const Optional<int64_t>&);
|
||||
void PassOptionalLongLongWithDefault(int64_t);
|
||||
|
||||
uint8_t GetReadonlyOctet(ErrorResult&);
|
||||
uint8_t GetWritableOctet(ErrorResult&);
|
||||
void SetWritableOctet(uint8_t, ErrorResult&);
|
||||
void PassOctet(uint8_t, ErrorResult&);
|
||||
uint8_t ReceiveOctet(ErrorResult&);
|
||||
void PassOptionalOctet(const Optional<uint8_t>&, ErrorResult&);
|
||||
void PassOptionalOctetWithDefault(uint8_t, ErrorResult&);
|
||||
void PassOctet(uint8_t);
|
||||
uint8_t ReceiveOctet();
|
||||
void PassOptionalOctet(const Optional<uint8_t>&);
|
||||
void PassOptionalOctetWithDefault(uint8_t);
|
||||
|
||||
uint16_t GetReadonlyUnsignedShort(ErrorResult&);
|
||||
uint16_t GetWritableUnsignedShort(ErrorResult&);
|
||||
void SetWritableUnsignedShort(uint16_t, ErrorResult&);
|
||||
void PassUnsignedShort(uint16_t, ErrorResult&);
|
||||
uint16_t ReceiveUnsignedShort(ErrorResult&);
|
||||
void PassOptionalUnsignedShort(const Optional<uint16_t>&, ErrorResult&);
|
||||
void PassOptionalUnsignedShortWithDefault(uint16_t, ErrorResult&);
|
||||
void PassUnsignedShort(uint16_t);
|
||||
uint16_t ReceiveUnsignedShort();
|
||||
void PassOptionalUnsignedShort(const Optional<uint16_t>&);
|
||||
void PassOptionalUnsignedShortWithDefault(uint16_t);
|
||||
|
||||
uint32_t GetReadonlyUnsignedLong(ErrorResult&);
|
||||
uint32_t GetWritableUnsignedLong(ErrorResult&);
|
||||
void SetWritableUnsignedLong(uint32_t, ErrorResult&);
|
||||
void PassUnsignedLong(uint32_t, ErrorResult&);
|
||||
uint32_t ReceiveUnsignedLong(ErrorResult&);
|
||||
void PassOptionalUnsignedLong(const Optional<uint32_t>&, ErrorResult&);
|
||||
void PassOptionalUnsignedLongWithDefault(uint32_t, ErrorResult&);
|
||||
void PassUnsignedLong(uint32_t);
|
||||
uint32_t ReceiveUnsignedLong();
|
||||
void PassOptionalUnsignedLong(const Optional<uint32_t>&);
|
||||
void PassOptionalUnsignedLongWithDefault(uint32_t);
|
||||
|
||||
uint64_t GetReadonlyUnsignedLongLong(ErrorResult&);
|
||||
uint64_t GetWritableUnsignedLongLong(ErrorResult&);
|
||||
void SetWritableUnsignedLongLong(uint64_t, ErrorResult&);
|
||||
void PassUnsignedLongLong(uint64_t, ErrorResult&);
|
||||
uint64_t ReceiveUnsignedLongLong(ErrorResult&);
|
||||
void PassOptionalUnsignedLongLong(const Optional<uint64_t>&, ErrorResult&);
|
||||
void PassOptionalUnsignedLongLongWithDefault(uint64_t, ErrorResult&);
|
||||
void PassUnsignedLongLong(uint64_t);
|
||||
uint64_t ReceiveUnsignedLongLong();
|
||||
void PassOptionalUnsignedLongLong(const Optional<uint64_t>&);
|
||||
void PassOptionalUnsignedLongLongWithDefault(uint64_t);
|
||||
|
||||
// Interface types
|
||||
already_AddRefed<TestInterface> ReceiveSelf(ErrorResult&);
|
||||
already_AddRefed<TestInterface> ReceiveNullableSelf(ErrorResult&);
|
||||
TestInterface* ReceiveWeakSelf(ErrorResult&);
|
||||
TestInterface* ReceiveWeakNullableSelf(ErrorResult&);
|
||||
void PassSelf(TestInterface&, ErrorResult&);
|
||||
void PassSelf2(NonNull<TestInterface>&, ErrorResult&);
|
||||
void PassNullableSelf(TestInterface*, ErrorResult&);
|
||||
already_AddRefed<TestInterface> ReceiveSelf();
|
||||
already_AddRefed<TestInterface> ReceiveNullableSelf();
|
||||
TestInterface* ReceiveWeakSelf();
|
||||
TestInterface* ReceiveWeakNullableSelf();
|
||||
void PassSelf(TestInterface&);
|
||||
void PassSelf2(NonNull<TestInterface>&);
|
||||
void PassNullableSelf(TestInterface*);
|
||||
already_AddRefed<TestInterface> GetNonNullSelf(ErrorResult&);
|
||||
void SetNonNullSelf(TestInterface&, ErrorResult&);
|
||||
already_AddRefed<TestInterface> GetNullableSelf(ErrorResult&);
|
||||
void SetNullableSelf(TestInterface*, ErrorResult&);
|
||||
void PassOptionalSelf(const Optional<TestInterface*> &, ErrorResult&);
|
||||
void PassOptionalNonNullSelf(const Optional<NonNull<TestInterface> >&, ErrorResult&);
|
||||
void PassOptionalSelfWithDefault(TestInterface*, ErrorResult&);
|
||||
void PassOptionalSelf(const Optional<TestInterface*> &);
|
||||
void PassOptionalNonNullSelf(const Optional<NonNull<TestInterface> >&);
|
||||
void PassOptionalSelfWithDefault(TestInterface*);
|
||||
|
||||
already_AddRefed<TestNonWrapperCacheInterface> ReceiveNonWrapperCacheInterface(ErrorResult&);
|
||||
already_AddRefed<TestNonWrapperCacheInterface> ReceiveNullableNonWrapperCacheInterface(ErrorResult&);
|
||||
void ReceiveNonWrapperCacheInterfaceSequence(nsTArray<nsRefPtr<TestNonWrapperCacheInterface> >&, ErrorResult&);
|
||||
void ReceiveNullableNonWrapperCacheInterfaceSequence(nsTArray<nsRefPtr<TestNonWrapperCacheInterface> >&, ErrorResult&);
|
||||
void ReceiveNonWrapperCacheInterfaceNullableSequence(Nullable<nsTArray<nsRefPtr<TestNonWrapperCacheInterface> > >&, ErrorResult&);
|
||||
void ReceiveNullableNonWrapperCacheInterfaceNullableSequence(Nullable<nsTArray<nsRefPtr<TestNonWrapperCacheInterface> > >&, ErrorResult&);
|
||||
already_AddRefed<TestNonWrapperCacheInterface> ReceiveNonWrapperCacheInterface();
|
||||
already_AddRefed<TestNonWrapperCacheInterface> ReceiveNullableNonWrapperCacheInterface();
|
||||
void ReceiveNonWrapperCacheInterfaceSequence(nsTArray<nsRefPtr<TestNonWrapperCacheInterface> >&);
|
||||
void ReceiveNullableNonWrapperCacheInterfaceSequence(nsTArray<nsRefPtr<TestNonWrapperCacheInterface> >&);
|
||||
void ReceiveNonWrapperCacheInterfaceNullableSequence(Nullable<nsTArray<nsRefPtr<TestNonWrapperCacheInterface> > >&);
|
||||
void ReceiveNullableNonWrapperCacheInterfaceNullableSequence(Nullable<nsTArray<nsRefPtr<TestNonWrapperCacheInterface> > >&);
|
||||
|
||||
already_AddRefed<TestNonCastableInterface> ReceiveOther(ErrorResult&);
|
||||
already_AddRefed<TestNonCastableInterface> ReceiveNullableOther(ErrorResult&);
|
||||
TestNonCastableInterface* ReceiveWeakOther(ErrorResult&);
|
||||
TestNonCastableInterface* ReceiveWeakNullableOther(ErrorResult&);
|
||||
void PassOther(TestNonCastableInterface&, ErrorResult&);
|
||||
void PassOther2(NonNull<TestNonCastableInterface>&, ErrorResult&);
|
||||
void PassNullableOther(TestNonCastableInterface*, ErrorResult&);
|
||||
already_AddRefed<TestNonCastableInterface> ReceiveOther();
|
||||
already_AddRefed<TestNonCastableInterface> ReceiveNullableOther();
|
||||
TestNonCastableInterface* ReceiveWeakOther();
|
||||
TestNonCastableInterface* ReceiveWeakNullableOther();
|
||||
void PassOther(TestNonCastableInterface&);
|
||||
void PassOther2(NonNull<TestNonCastableInterface>&);
|
||||
void PassNullableOther(TestNonCastableInterface*);
|
||||
already_AddRefed<TestNonCastableInterface> GetNonNullOther(ErrorResult&);
|
||||
void SetNonNullOther(TestNonCastableInterface&, ErrorResult&);
|
||||
already_AddRefed<TestNonCastableInterface> GetNullableOther(ErrorResult&);
|
||||
void SetNullableOther(TestNonCastableInterface*, ErrorResult&);
|
||||
void PassOptionalOther(const Optional<TestNonCastableInterface*>&, ErrorResult&);
|
||||
void PassOptionalNonNullOther(const Optional<NonNull<TestNonCastableInterface> >&, ErrorResult&);
|
||||
void PassOptionalOtherWithDefault(TestNonCastableInterface*, ErrorResult&);
|
||||
void PassOptionalOther(const Optional<TestNonCastableInterface*>&);
|
||||
void PassOptionalNonNullOther(const Optional<NonNull<TestNonCastableInterface> >&);
|
||||
void PassOptionalOtherWithDefault(TestNonCastableInterface*);
|
||||
|
||||
already_AddRefed<TestExternalInterface> ReceiveExternal(ErrorResult&);
|
||||
already_AddRefed<TestExternalInterface> ReceiveNullableExternal(ErrorResult&);
|
||||
TestExternalInterface* ReceiveWeakExternal(ErrorResult&);
|
||||
TestExternalInterface* ReceiveWeakNullableExternal(ErrorResult&);
|
||||
void PassExternal(TestExternalInterface*, ErrorResult&);
|
||||
void PassExternal2(TestExternalInterface*, ErrorResult&);
|
||||
void PassNullableExternal(TestExternalInterface*, ErrorResult&);
|
||||
already_AddRefed<TestExternalInterface> ReceiveExternal();
|
||||
already_AddRefed<TestExternalInterface> ReceiveNullableExternal();
|
||||
TestExternalInterface* ReceiveWeakExternal();
|
||||
TestExternalInterface* ReceiveWeakNullableExternal();
|
||||
void PassExternal(TestExternalInterface*);
|
||||
void PassExternal2(TestExternalInterface*);
|
||||
void PassNullableExternal(TestExternalInterface*);
|
||||
already_AddRefed<TestExternalInterface> GetNonNullExternal(ErrorResult&);
|
||||
void SetNonNullExternal(TestExternalInterface*, ErrorResult&);
|
||||
already_AddRefed<TestExternalInterface> GetNullableExternal(ErrorResult&);
|
||||
void SetNullableExternal(TestExternalInterface*, ErrorResult&);
|
||||
void PassOptionalExternal(const Optional<TestExternalInterface*>&, ErrorResult&);
|
||||
void PassOptionalNonNullExternal(const Optional<TestExternalInterface*>&, ErrorResult&);
|
||||
void PassOptionalExternalWithDefault(TestExternalInterface*, ErrorResult&);
|
||||
void PassOptionalExternal(const Optional<TestExternalInterface*>&);
|
||||
void PassOptionalNonNullExternal(const Optional<TestExternalInterface*>&);
|
||||
void PassOptionalExternalWithDefault(TestExternalInterface*);
|
||||
|
||||
already_AddRefed<TestCallbackInterface> ReceiveCallbackInterface(ErrorResult&);
|
||||
already_AddRefed<TestCallbackInterface> ReceiveNullableCallbackInterface(ErrorResult&);
|
||||
TestCallbackInterface* ReceiveWeakCallbackInterface(ErrorResult&);
|
||||
TestCallbackInterface* ReceiveWeakNullableCallbackInterface(ErrorResult&);
|
||||
void PassCallbackInterface(TestCallbackInterface&, ErrorResult&);
|
||||
void PassCallbackInterface2(OwningNonNull<TestCallbackInterface>, ErrorResult&);
|
||||
void PassNullableCallbackInterface(TestCallbackInterface*, ErrorResult&);
|
||||
already_AddRefed<TestCallbackInterface> ReceiveCallbackInterface();
|
||||
already_AddRefed<TestCallbackInterface> ReceiveNullableCallbackInterface();
|
||||
TestCallbackInterface* ReceiveWeakCallbackInterface();
|
||||
TestCallbackInterface* ReceiveWeakNullableCallbackInterface();
|
||||
void PassCallbackInterface(TestCallbackInterface&);
|
||||
void PassCallbackInterface2(OwningNonNull<TestCallbackInterface>);
|
||||
void PassNullableCallbackInterface(TestCallbackInterface*);
|
||||
already_AddRefed<TestCallbackInterface> GetNonNullCallbackInterface(ErrorResult&);
|
||||
void SetNonNullCallbackInterface(TestCallbackInterface&, ErrorResult&);
|
||||
already_AddRefed<TestCallbackInterface> GetNullableCallbackInterface(ErrorResult&);
|
||||
void SetNullableCallbackInterface(TestCallbackInterface*, ErrorResult&);
|
||||
void PassOptionalCallbackInterface(const Optional<nsRefPtr<TestCallbackInterface> >&, ErrorResult&);
|
||||
void PassOptionalNonNullCallbackInterface(const Optional<OwningNonNull<TestCallbackInterface> >&, ErrorResult&);
|
||||
void PassOptionalCallbackInterfaceWithDefault(TestCallbackInterface*, ErrorResult&);
|
||||
void PassOptionalCallbackInterface(const Optional<nsRefPtr<TestCallbackInterface> >&);
|
||||
void PassOptionalNonNullCallbackInterface(const Optional<OwningNonNull<TestCallbackInterface> >&);
|
||||
void PassOptionalCallbackInterfaceWithDefault(TestCallbackInterface*);
|
||||
|
||||
already_AddRefed<IndirectlyImplementedInterface> ReceiveConsequentialInterface(ErrorResult&);
|
||||
void PassConsequentialInterface(IndirectlyImplementedInterface&, ErrorResult&);
|
||||
already_AddRefed<IndirectlyImplementedInterface> ReceiveConsequentialInterface();
|
||||
void PassConsequentialInterface(IndirectlyImplementedInterface&);
|
||||
|
||||
// Sequence types
|
||||
void ReceiveSequence(nsTArray<int32_t>&, ErrorResult&);
|
||||
void ReceiveNullableSequence(Nullable< nsTArray<int32_t> >&, ErrorResult&);
|
||||
void ReceiveSequenceOfNullableInts(nsTArray< Nullable<int32_t> >&, ErrorResult&);
|
||||
void ReceiveNullableSequenceOfNullableInts(Nullable< nsTArray< Nullable<int32_t> > >&, ErrorResult&);
|
||||
void PassSequence(const Sequence<int32_t> &, ErrorResult&);
|
||||
void PassNullableSequence(const Nullable< Sequence<int32_t> >&, ErrorResult&);
|
||||
void PassSequenceOfNullableInts(const Sequence<Nullable<int32_t> >&, ErrorResult&);
|
||||
void PassOptionalSequenceOfNullableInts(const Optional<Sequence<Nullable<int32_t> > > &,
|
||||
ErrorResult&);
|
||||
void PassOptionalNullableSequenceOfNullableInts(const Optional<Nullable<Sequence<Nullable<int32_t> > > > &,
|
||||
ErrorResult&);
|
||||
void ReceiveCastableObjectSequence(nsTArray< nsRefPtr<TestInterface> > &,
|
||||
ErrorResult&);
|
||||
void ReceiveNullableCastableObjectSequence(nsTArray< nsRefPtr<TestInterface> > &,
|
||||
ErrorResult&);
|
||||
void ReceiveCastableObjectNullableSequence(Nullable< nsTArray< nsRefPtr<TestInterface> > >&,
|
||||
ErrorResult&);
|
||||
void ReceiveNullableCastableObjectNullableSequence(Nullable< nsTArray< nsRefPtr<TestInterface> > >&,
|
||||
ErrorResult&);
|
||||
void ReceiveWeakCastableObjectSequence(nsTArray<TestInterface*> &,
|
||||
ErrorResult&);
|
||||
void ReceiveWeakNullableCastableObjectSequence(nsTArray<TestInterface*> &,
|
||||
ErrorResult&);
|
||||
void ReceiveWeakCastableObjectNullableSequence(Nullable< nsTArray<TestInterface*> >&,
|
||||
ErrorResult&);
|
||||
void ReceiveWeakNullableCastableObjectNullableSequence(Nullable< nsTArray<TestInterface*> >&,
|
||||
ErrorResult&);
|
||||
void PassCastableObjectSequence(const Sequence< OwningNonNull<TestInterface> >&,
|
||||
ErrorResult&);
|
||||
void PassNullableCastableObjectSequence(const Sequence< nsRefPtr<TestInterface> > &,
|
||||
ErrorResult&);
|
||||
void PassCastableObjectNullableSequence(const Nullable< Sequence< OwningNonNull<TestInterface> > >&,
|
||||
ErrorResult&);
|
||||
void PassNullableCastableObjectNullableSequence(const Nullable< Sequence< nsRefPtr<TestInterface> > >&,
|
||||
ErrorResult&);
|
||||
void PassOptionalSequence(const Optional<Sequence<int32_t> >&,
|
||||
ErrorResult&);
|
||||
void PassOptionalNullableSequence(const Optional<Nullable<Sequence<int32_t> > >&,
|
||||
ErrorResult&);
|
||||
void PassOptionalNullableSequenceWithDefaultValue(const Nullable< Sequence<int32_t> >&,
|
||||
ErrorResult&);
|
||||
void PassOptionalObjectSequence(const Optional<Sequence<OwningNonNull<TestInterface> > >&,
|
||||
ErrorResult&);
|
||||
void ReceiveSequence(nsTArray<int32_t>&);
|
||||
void ReceiveNullableSequence(Nullable< nsTArray<int32_t> >&);
|
||||
void ReceiveSequenceOfNullableInts(nsTArray< Nullable<int32_t> >&);
|
||||
void ReceiveNullableSequenceOfNullableInts(Nullable< nsTArray< Nullable<int32_t> > >&);
|
||||
void PassSequence(const Sequence<int32_t> &);
|
||||
void PassNullableSequence(const Nullable< Sequence<int32_t> >&);
|
||||
void PassSequenceOfNullableInts(const Sequence<Nullable<int32_t> >&);
|
||||
void PassOptionalSequenceOfNullableInts(const Optional<Sequence<Nullable<int32_t> > > &);
|
||||
void PassOptionalNullableSequenceOfNullableInts(const Optional<Nullable<Sequence<Nullable<int32_t> > > > &);
|
||||
void ReceiveCastableObjectSequence(nsTArray< nsRefPtr<TestInterface> > &);
|
||||
void ReceiveNullableCastableObjectSequence(nsTArray< nsRefPtr<TestInterface> > &);
|
||||
void ReceiveCastableObjectNullableSequence(Nullable< nsTArray< nsRefPtr<TestInterface> > >&);
|
||||
void ReceiveNullableCastableObjectNullableSequence(Nullable< nsTArray< nsRefPtr<TestInterface> > >&);
|
||||
void ReceiveWeakCastableObjectSequence(nsTArray<TestInterface*> &);
|
||||
void ReceiveWeakNullableCastableObjectSequence(nsTArray<TestInterface*> &);
|
||||
void ReceiveWeakCastableObjectNullableSequence(Nullable< nsTArray<TestInterface*> >&);
|
||||
void ReceiveWeakNullableCastableObjectNullableSequence(Nullable< nsTArray<TestInterface*> >&);
|
||||
void PassCastableObjectSequence(const Sequence< OwningNonNull<TestInterface> >&);
|
||||
void PassNullableCastableObjectSequence(const Sequence< nsRefPtr<TestInterface> > &);
|
||||
void PassCastableObjectNullableSequence(const Nullable< Sequence< OwningNonNull<TestInterface> > >&);
|
||||
void PassNullableCastableObjectNullableSequence(const Nullable< Sequence< nsRefPtr<TestInterface> > >&);
|
||||
void PassOptionalSequence(const Optional<Sequence<int32_t> >&);
|
||||
void PassOptionalNullableSequence(const Optional<Nullable<Sequence<int32_t> > >&);
|
||||
void PassOptionalNullableSequenceWithDefaultValue(const Nullable< Sequence<int32_t> >&);
|
||||
void PassOptionalObjectSequence(const Optional<Sequence<OwningNonNull<TestInterface> > >&);
|
||||
|
||||
void ReceiveStringSequence(nsTArray<nsString>&, ErrorResult&);
|
||||
void PassStringSequence(const Sequence<nsString>&, ErrorResult&);
|
||||
void ReceiveStringSequence(nsTArray<nsString>&);
|
||||
void PassStringSequence(const Sequence<nsString>&);
|
||||
|
||||
// Typed array types
|
||||
void PassArrayBuffer(ArrayBuffer&, ErrorResult&);
|
||||
void PassNullableArrayBuffer(ArrayBuffer*, ErrorResult&);
|
||||
void PassOptionalArrayBuffer(const Optional<ArrayBuffer>&, ErrorResult&);
|
||||
void PassOptionalNullableArrayBuffer(const Optional<ArrayBuffer*>&, ErrorResult&);
|
||||
void PassOptionalNullableArrayBufferWithDefaultValue(ArrayBuffer*, ErrorResult&);
|
||||
void PassArrayBufferView(ArrayBufferView&, ErrorResult&);
|
||||
void PassInt8Array(Int8Array&, ErrorResult&);
|
||||
void PassInt16Array(Int16Array&, ErrorResult&);
|
||||
void PassInt32Array(Int32Array&, ErrorResult&);
|
||||
void PassUint8Array(Uint8Array&, ErrorResult&);
|
||||
void PassUint16Array(Uint16Array&, ErrorResult&);
|
||||
void PassUint32Array(Uint32Array&, ErrorResult&);
|
||||
void PassUint8ClampedArray(Uint8ClampedArray&, ErrorResult&);
|
||||
void PassFloat32Array(Float32Array&, ErrorResult&);
|
||||
void PassFloat64Array(Float64Array&, ErrorResult&);
|
||||
JSObject* ReceiveUint8Array(ErrorResult&);
|
||||
void PassArrayBuffer(ArrayBuffer&);
|
||||
void PassNullableArrayBuffer(ArrayBuffer*);
|
||||
void PassOptionalArrayBuffer(const Optional<ArrayBuffer>&);
|
||||
void PassOptionalNullableArrayBuffer(const Optional<ArrayBuffer*>&);
|
||||
void PassOptionalNullableArrayBufferWithDefaultValue(ArrayBuffer*);
|
||||
void PassArrayBufferView(ArrayBufferView&);
|
||||
void PassInt8Array(Int8Array&);
|
||||
void PassInt16Array(Int16Array&);
|
||||
void PassInt32Array(Int32Array&);
|
||||
void PassUint8Array(Uint8Array&);
|
||||
void PassUint16Array(Uint16Array&);
|
||||
void PassUint32Array(Uint32Array&);
|
||||
void PassUint8ClampedArray(Uint8ClampedArray&);
|
||||
void PassFloat32Array(Float32Array&);
|
||||
void PassFloat64Array(Float64Array&);
|
||||
JSObject* ReceiveUint8Array();
|
||||
|
||||
// String types
|
||||
void PassString(const nsAString&, ErrorResult&);
|
||||
void PassNullableString(const nsAString&, ErrorResult&);
|
||||
void PassOptionalString(const Optional<nsAString>&, ErrorResult&);
|
||||
void PassOptionalStringWithDefaultValue(const nsAString&, ErrorResult&);
|
||||
void PassOptionalNullableString(const Optional<nsAString>&, ErrorResult&);
|
||||
void PassOptionalNullableStringWithDefaultValue(const nsAString&, ErrorResult&);
|
||||
void PassString(const nsAString&);
|
||||
void PassNullableString(const nsAString&);
|
||||
void PassOptionalString(const Optional<nsAString>&);
|
||||
void PassOptionalStringWithDefaultValue(const nsAString&);
|
||||
void PassOptionalNullableString(const Optional<nsAString>&);
|
||||
void PassOptionalNullableStringWithDefaultValue(const nsAString&);
|
||||
|
||||
// Enumarated types
|
||||
void PassEnum(TestEnum, ErrorResult&);
|
||||
void PassOptionalEnum(const Optional<TestEnum>&, ErrorResult&);
|
||||
void PassEnumWithDefault(TestEnum, ErrorResult&);
|
||||
TestEnum ReceiveEnum(ErrorResult&);
|
||||
void PassEnum(TestEnum);
|
||||
void PassOptionalEnum(const Optional<TestEnum>&);
|
||||
void PassEnumWithDefault(TestEnum);
|
||||
TestEnum ReceiveEnum();
|
||||
TestEnum GetEnumAttribute(ErrorResult&);
|
||||
TestEnum GetReadonlyEnumAttribute(ErrorResult&);
|
||||
void SetEnumAttribute(TestEnum, ErrorResult&);
|
||||
|
||||
// Callback types
|
||||
void PassCallback(JSContext*, JSObject*, ErrorResult&);
|
||||
void PassNullableCallback(JSContext*, JSObject*, ErrorResult&);
|
||||
void PassOptionalCallback(JSContext*, const Optional<JSObject*>&,
|
||||
ErrorResult&);
|
||||
void PassOptionalNullableCallback(JSContext*, const Optional<JSObject*>&,
|
||||
ErrorResult&);
|
||||
void PassOptionalNullableCallbackWithDefaultValue(JSContext*, JSObject*,
|
||||
ErrorResult&);
|
||||
JSObject* ReceiveCallback(JSContext*, ErrorResult&);
|
||||
JSObject* ReceiveNullableCallback(JSContext*, ErrorResult&);
|
||||
void PassCallback(JSContext*, JSObject*);
|
||||
void PassNullableCallback(JSContext*, JSObject*);
|
||||
void PassOptionalCallback(JSContext*, const Optional<JSObject*>&);
|
||||
void PassOptionalNullableCallback(JSContext*, const Optional<JSObject*>&);
|
||||
void PassOptionalNullableCallbackWithDefaultValue(JSContext*, JSObject*);
|
||||
JSObject* ReceiveCallback(JSContext*);
|
||||
JSObject* ReceiveNullableCallback(JSContext*);
|
||||
|
||||
// Any types
|
||||
void PassAny(JSContext*, JS::Value, ErrorResult&);
|
||||
void PassOptionalAny(JSContext*, const Optional<JS::Value>&, ErrorResult&);
|
||||
void PassAnyDefaultNull(JSContext*, JS::Value, ErrorResult&);
|
||||
JS::Value ReceiveAny(JSContext*, ErrorResult&);
|
||||
void PassAny(JSContext*, JS::Value);
|
||||
void PassOptionalAny(JSContext*, const Optional<JS::Value>&);
|
||||
void PassAnyDefaultNull(JSContext*, JS::Value);
|
||||
JS::Value ReceiveAny(JSContext*);
|
||||
|
||||
// object types
|
||||
void PassObject(JSContext*, JSObject&, ErrorResult&);
|
||||
void PassNullableObject(JSContext*, JSObject*, ErrorResult&);
|
||||
void PassOptionalObject(JSContext*, const Optional<NonNull<JSObject> >&, ErrorResult&);
|
||||
void PassOptionalNullableObject(JSContext*, const Optional<JSObject*>&, ErrorResult&);
|
||||
void PassOptionalNullableObjectWithDefaultValue(JSContext*, JSObject*, ErrorResult&);
|
||||
JSObject* ReceiveObject(JSContext*, ErrorResult&);
|
||||
JSObject* ReceiveNullableObject(JSContext*, ErrorResult&);
|
||||
void PassObject(JSContext*, JSObject&);
|
||||
void PassNullableObject(JSContext*, JSObject*);
|
||||
void PassOptionalObject(JSContext*, const Optional<NonNull<JSObject> >&);
|
||||
void PassOptionalNullableObject(JSContext*, const Optional<JSObject*>&);
|
||||
void PassOptionalNullableObjectWithDefaultValue(JSContext*, JSObject*);
|
||||
JSObject* ReceiveObject(JSContext*);
|
||||
JSObject* ReceiveNullableObject(JSContext*);
|
||||
|
||||
// Union types
|
||||
void PassUnion(JSContext*, const ObjectOrLong& arg, ErrorResult&);
|
||||
void PassUnionWithNullable(JSContext*, const ObjectOrNullOrLong& arg, ErrorResult&)
|
||||
void PassUnion(JSContext*, const ObjectOrLong& arg);
|
||||
void PassUnionWithNullable(JSContext*, const ObjectOrNullOrLong& arg)
|
||||
{
|
||||
ObjectOrLong returnValue;
|
||||
if (arg.IsNull()) {
|
||||
@ -391,43 +369,43 @@ public:
|
||||
i += 1;
|
||||
}
|
||||
}
|
||||
void PassNullableUnion(JSContext*, const Nullable<ObjectOrLong>&, ErrorResult&);
|
||||
void PassOptionalUnion(JSContext*, const Optional<ObjectOrLong>&, ErrorResult&);
|
||||
void PassOptionalNullableUnion(JSContext*, const Optional<Nullable<ObjectOrLong> >&, ErrorResult&);
|
||||
void PassOptionalNullableUnionWithDefaultValue(JSContext*, const Nullable<ObjectOrLong>&, ErrorResult&);
|
||||
//void PassUnionWithInterfaces(const TestInterfaceOrTestExternalInterface& arg, ErrorResult&);
|
||||
//void PassUnionWithInterfacesAndNullable(const TestInterfaceOrNullOrTestExternalInterface& arg, ErrorResult&);
|
||||
void PassUnionWithArrayBuffer(const ArrayBufferOrLong&, ErrorResult&);
|
||||
void PassUnionWithString(JSContext*, const StringOrObject&, ErrorResult&);
|
||||
//void PassUnionWithEnum(JSContext*, const TestEnumOrObject&, ErrorResult&);
|
||||
void PassUnionWithCallback(JSContext*, const TestCallbackOrLong&, ErrorResult&);
|
||||
void PassUnionWithObject(JSContext*, const ObjectOrLong&, ErrorResult&);
|
||||
void PassNullableUnion(JSContext*, const Nullable<ObjectOrLong>&);
|
||||
void PassOptionalUnion(JSContext*, const Optional<ObjectOrLong>&);
|
||||
void PassOptionalNullableUnion(JSContext*, const Optional<Nullable<ObjectOrLong> >&);
|
||||
void PassOptionalNullableUnionWithDefaultValue(JSContext*, const Nullable<ObjectOrLong>&);
|
||||
//void PassUnionWithInterfaces(const TestInterfaceOrTestExternalInterface& arg);
|
||||
//void PassUnionWithInterfacesAndNullable(const TestInterfaceOrNullOrTestExternalInterface& arg);
|
||||
void PassUnionWithArrayBuffer(const ArrayBufferOrLong&);
|
||||
void PassUnionWithString(JSContext*, const StringOrObject&);
|
||||
//void PassUnionWithEnum(JSContext*, const TestEnumOrObject&);
|
||||
void PassUnionWithCallback(JSContext*, const TestCallbackOrLong&);
|
||||
void PassUnionWithObject(JSContext*, const ObjectOrLong&);
|
||||
|
||||
// binaryNames tests
|
||||
void MethodRenamedTo(ErrorResult&);
|
||||
void MethodRenamedTo(int8_t, ErrorResult&);
|
||||
void MethodRenamedTo();
|
||||
void MethodRenamedTo(int8_t);
|
||||
int8_t GetAttributeGetterRenamedTo(ErrorResult&);
|
||||
int8_t GetAttributeRenamedTo(ErrorResult&);
|
||||
void SetAttributeRenamedTo(int8_t, ErrorResult&);
|
||||
|
||||
// Dictionary tests
|
||||
void PassDictionary(const Dict&, ErrorResult&);
|
||||
void PassOtherDictionary(const GrandparentDict&, ErrorResult&);
|
||||
void PassSequenceOfDictionaries(const Sequence<Dict>&, ErrorResult&);
|
||||
void PassDictionaryOrLong(const Dict&, ErrorResult&);
|
||||
void PassDictionaryOrLong(int32_t, ErrorResult&);
|
||||
void PassDictContainingDict(const DictContainingDict&, ErrorResult&);
|
||||
void PassDictionary(const Dict&);
|
||||
void PassOtherDictionary(const GrandparentDict&);
|
||||
void PassSequenceOfDictionaries(const Sequence<Dict>&);
|
||||
void PassDictionaryOrLong(const Dict&);
|
||||
void PassDictionaryOrLong(int32_t);
|
||||
void PassDictContainingDict(const DictContainingDict&);
|
||||
|
||||
// Methods and properties imported via "implements"
|
||||
bool GetImplementedProperty(ErrorResult&);
|
||||
void SetImplementedProperty(bool, ErrorResult&);
|
||||
void ImplementedMethod(ErrorResult&);
|
||||
void ImplementedMethod();
|
||||
bool GetImplementedParentProperty(ErrorResult&);
|
||||
void SetImplementedParentProperty(bool, ErrorResult&);
|
||||
void ImplementedParentMethod(ErrorResult&);
|
||||
void ImplementedParentMethod();
|
||||
bool GetIndirectlyImplementedProperty(ErrorResult&);
|
||||
void SetIndirectlyImplementedProperty(bool, ErrorResult&);
|
||||
void IndirectlyImplementedMethod(ErrorResult&);
|
||||
void IndirectlyImplementedMethod();
|
||||
uint32_t GetDiamondImplementedProperty(ErrorResult&);
|
||||
|
||||
private:
|
||||
@ -438,124 +416,120 @@ private:
|
||||
template<typename T>
|
||||
void SetWritableByte(T, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassByte(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassByte(T) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalByte(const Optional<T>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalByte(const Optional<T>&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalByteWithDefault(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalByteWithDefault(T) MOZ_DELETE;
|
||||
|
||||
void SetReadonlyShort(int16_t, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void SetWritableShort(T, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassShort(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassShort(T) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalShort(const Optional<T>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalShort(const Optional<T>&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalShortWithDefault(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalShortWithDefault(T) MOZ_DELETE;
|
||||
|
||||
void SetReadonlyLong(int32_t, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void SetWritableLong(T, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassLong(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassLong(T) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalLong(const Optional<T>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalLong(const Optional<T>&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalLongWithDefault(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalLongWithDefault(T) MOZ_DELETE;
|
||||
|
||||
void SetReadonlyLongLong(int64_t, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void SetWritableLongLong(T, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassLongLong(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassLongLong(T) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalLongLong(const Optional<T>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalLongLong(const Optional<T>&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalLongLongWithDefault(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalLongLongWithDefault(T) MOZ_DELETE;
|
||||
|
||||
void SetReadonlyOctet(uint8_t, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void SetWritableOctet(T, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOctet(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassOctet(T) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalOctet(const Optional<T>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalOctet(const Optional<T>&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalOctetWithDefault(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalOctetWithDefault(T) MOZ_DELETE;
|
||||
|
||||
void SetReadonlyUnsignedShort(uint16_t, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void SetWritableUnsignedShort(T, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassUnsignedShort(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassUnsignedShort(T) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalUnsignedShort(const Optional<T>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedShort(const Optional<T>&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalUnsignedShortWithDefault(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedShortWithDefault(T) MOZ_DELETE;
|
||||
|
||||
void SetReadonlyUnsignedLong(uint32_t, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void SetWritableUnsignedLong(T, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassUnsignedLong(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassUnsignedLong(T) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalUnsignedLong(const Optional<T>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedLong(const Optional<T>&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalUnsignedLongWithDefault(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedLongWithDefault(T) MOZ_DELETE;
|
||||
|
||||
void SetReadonlyUnsignedLongLong(uint64_t, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void SetWritableUnsignedLongLong(T, ErrorResult&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassUnsignedLongLong(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassUnsignedLongLong(T) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalUnsignedLongLong(const Optional<T>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedLongLong(const Optional<T>&) MOZ_DELETE;
|
||||
template<typename T>
|
||||
void PassOptionalUnsignedLongLongWithDefault(T, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedLongLongWithDefault(T) MOZ_DELETE;
|
||||
|
||||
// Enforce that only const things are passed for sequences
|
||||
void PassSequence(Sequence<int32_t> &, ErrorResult&) MOZ_DELETE;
|
||||
void PassNullableSequence(Nullable< Sequence<int32_t> >&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalNullableSequenceWithDefaultValue(Nullable< Sequence<int32_t> >&,
|
||||
ErrorResult&) MOZ_DELETE;
|
||||
void PassSequence(Sequence<int32_t> &) MOZ_DELETE;
|
||||
void PassNullableSequence(Nullable< Sequence<int32_t> >&) MOZ_DELETE;
|
||||
void PassOptionalNullableSequenceWithDefaultValue(Nullable< Sequence<int32_t> >&) MOZ_DELETE;
|
||||
|
||||
// Enforce that only const things are passed for optional
|
||||
void PassOptionalByte(Optional<int8_t>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalNullableByte(Optional<Nullable<int8_t> >&,
|
||||
ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalShort(Optional<int16_t>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalLong(Optional<int32_t>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalLongLong(Optional<int64_t>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalOctet(Optional<uint8_t>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedShort(Optional<uint16_t>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedLong(Optional<uint32_t>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedLongLong(Optional<uint64_t>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalSelf(Optional<TestInterface*> &, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalNonNullSelf(Optional<NonNull<TestInterface> >&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalOther(Optional<TestNonCastableInterface*>&, ErrorResult&);
|
||||
void PassOptionalNonNullOther(Optional<NonNull<TestNonCastableInterface> >&, ErrorResult&);
|
||||
void PassOptionalExternal(Optional<TestExternalInterface*>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalNonNullExternal(Optional<TestExternalInterface*>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalSequence(Optional<Sequence<int32_t> >&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalNullableSequence(Optional<Nullable<Sequence<int32_t> > >&,
|
||||
ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalObjectSequence(Optional<Sequence<OwningNonNull<TestInterface> > >&,
|
||||
ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalArrayBuffer(Optional<ArrayBuffer>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalNullableArrayBuffer(Optional<ArrayBuffer*>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalEnum(Optional<TestEnum>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalCallback(JSContext*, Optional<JSObject*>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalNullableCallback(JSContext*, Optional<JSObject*>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalAny(Optional<JS::Value>&, ErrorResult) MOZ_DELETE;
|
||||
void PassOptionalByte(Optional<int8_t>&) MOZ_DELETE;
|
||||
void PassOptionalNullableByte(Optional<Nullable<int8_t> >&) MOZ_DELETE;
|
||||
void PassOptionalShort(Optional<int16_t>&) MOZ_DELETE;
|
||||
void PassOptionalLong(Optional<int32_t>&) MOZ_DELETE;
|
||||
void PassOptionalLongLong(Optional<int64_t>&) MOZ_DELETE;
|
||||
void PassOptionalOctet(Optional<uint8_t>&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedShort(Optional<uint16_t>&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedLong(Optional<uint32_t>&) MOZ_DELETE;
|
||||
void PassOptionalUnsignedLongLong(Optional<uint64_t>&) MOZ_DELETE;
|
||||
void PassOptionalSelf(Optional<TestInterface*> &) MOZ_DELETE;
|
||||
void PassOptionalNonNullSelf(Optional<NonNull<TestInterface> >&) MOZ_DELETE;
|
||||
void PassOptionalOther(Optional<TestNonCastableInterface*>&);
|
||||
void PassOptionalNonNullOther(Optional<NonNull<TestNonCastableInterface> >&);
|
||||
void PassOptionalExternal(Optional<TestExternalInterface*>&) MOZ_DELETE;
|
||||
void PassOptionalNonNullExternal(Optional<TestExternalInterface*>&) MOZ_DELETE;
|
||||
void PassOptionalSequence(Optional<Sequence<int32_t> >&) MOZ_DELETE;
|
||||
void PassOptionalNullableSequence(Optional<Nullable<Sequence<int32_t> > >&) MOZ_DELETE;
|
||||
void PassOptionalObjectSequence(Optional<Sequence<OwningNonNull<TestInterface> > >&) MOZ_DELETE;
|
||||
void PassOptionalArrayBuffer(Optional<ArrayBuffer>&) MOZ_DELETE;
|
||||
void PassOptionalNullableArrayBuffer(Optional<ArrayBuffer*>&) MOZ_DELETE;
|
||||
void PassOptionalEnum(Optional<TestEnum>&) MOZ_DELETE;
|
||||
void PassOptionalCallback(JSContext*, Optional<JSObject*>&) MOZ_DELETE;
|
||||
void PassOptionalNullableCallback(JSContext*, Optional<JSObject*>&) MOZ_DELETE;
|
||||
void PassOptionalAny(Optional<JS::Value>&) MOZ_DELETE;
|
||||
|
||||
// And test that string stuff is always const
|
||||
void PassString(nsAString&, ErrorResult&) MOZ_DELETE;
|
||||
void PassNullableString(nsAString&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalString(Optional<nsAString>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalStringWithDefaultValue(nsAString&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalNullableString(Optional<nsAString>&, ErrorResult&) MOZ_DELETE;
|
||||
void PassOptionalNullableStringWithDefaultValue(nsAString&, ErrorResult&) MOZ_DELETE;
|
||||
void PassString(nsAString&) MOZ_DELETE;
|
||||
void PassNullableString(nsAString&) MOZ_DELETE;
|
||||
void PassOptionalString(Optional<nsAString>&) MOZ_DELETE;
|
||||
void PassOptionalStringWithDefaultValue(nsAString&) MOZ_DELETE;
|
||||
void PassOptionalNullableString(Optional<nsAString>&) MOZ_DELETE;
|
||||
void PassOptionalNullableStringWithDefaultValue(nsAString&) MOZ_DELETE;
|
||||
|
||||
};
|
||||
|
||||
@ -568,10 +542,10 @@ public:
|
||||
// We need a GetParentObject to make binding codegen happy
|
||||
virtual nsISupports* GetParentObject();
|
||||
|
||||
uint32_t IndexedGetter(uint32_t, bool&, ErrorResult&);
|
||||
uint32_t IndexedGetter(uint32_t, ErrorResult&) MOZ_DELETE;
|
||||
uint32_t Item(uint32_t, ErrorResult&);
|
||||
uint32_t Item(uint32_t, bool&, ErrorResult&) MOZ_DELETE;
|
||||
uint32_t IndexedGetter(uint32_t, bool&);
|
||||
uint32_t IndexedGetter(uint32_t&) MOZ_DELETE;
|
||||
uint32_t Item(uint32_t&);
|
||||
uint32_t Item(uint32_t, bool&) MOZ_DELETE;
|
||||
uint32_t GetLength();
|
||||
};
|
||||
|
||||
@ -584,7 +558,7 @@ public:
|
||||
// We need a GetParentObject to make binding codegen happy
|
||||
virtual nsISupports* GetParentObject();
|
||||
|
||||
void NamedGetter(const nsAString&, bool&, nsAString&, ErrorResult&);
|
||||
void NamedGetter(const nsAString&, bool&, nsAString&);
|
||||
};
|
||||
|
||||
class TestIndexedAndNamedGetterInterface : public nsISupports,
|
||||
@ -596,9 +570,9 @@ public:
|
||||
// We need a GetParentObject to make binding codegen happy
|
||||
virtual nsISupports* GetParentObject();
|
||||
|
||||
uint32_t IndexedGetter(uint32_t, bool&, ErrorResult&);
|
||||
void NamedGetter(const nsAString&, bool&, nsAString&, ErrorResult&);
|
||||
void NamedItem(const nsAString&, nsAString&, ErrorResult&);
|
||||
uint32_t IndexedGetter(uint32_t, bool&);
|
||||
void NamedGetter(const nsAString&, bool&, nsAString&);
|
||||
void NamedItem(const nsAString&, nsAString&);
|
||||
uint32_t GetLength();
|
||||
};
|
||||
|
||||
@ -611,8 +585,8 @@ public:
|
||||
// We need a GetParentObject to make binding codegen happy
|
||||
virtual nsISupports* GetParentObject();
|
||||
|
||||
void IndexedSetter(uint32_t, const nsAString&, ErrorResult&);
|
||||
void SetItem(uint32_t, const nsAString&, ErrorResult&);
|
||||
void IndexedSetter(uint32_t, const nsAString&);
|
||||
void SetItem(uint32_t, const nsAString&);
|
||||
};
|
||||
|
||||
class TestNamedSetterInterface : public nsISupports,
|
||||
@ -624,7 +598,7 @@ public:
|
||||
// We need a GetParentObject to make binding codegen happy
|
||||
virtual nsISupports* GetParentObject();
|
||||
|
||||
void NamedSetter(const nsAString&, TestIndexedSetterInterface&, ErrorResult&);
|
||||
void NamedSetter(const nsAString&, TestIndexedSetterInterface&);
|
||||
};
|
||||
|
||||
class TestIndexedAndNamedSetterInterface : public nsISupports,
|
||||
@ -636,21 +610,21 @@ public:
|
||||
// We need a GetParentObject to make binding codegen happy
|
||||
virtual nsISupports* GetParentObject();
|
||||
|
||||
void IndexedSetter(uint32_t, TestIndexedSetterInterface&, ErrorResult&);
|
||||
void NamedSetter(const nsAString&, TestIndexedSetterInterface&, ErrorResult&);
|
||||
void SetNamedItem(const nsAString&, TestIndexedSetterInterface&, ErrorResult&);
|
||||
void IndexedSetter(uint32_t, TestIndexedSetterInterface&);
|
||||
void NamedSetter(const nsAString&, TestIndexedSetterInterface&);
|
||||
void SetNamedItem(const nsAString&, TestIndexedSetterInterface&);
|
||||
};
|
||||
|
||||
class TestIndexedAndNamedGetterAndSetterInterface : public TestIndexedSetterInterface
|
||||
{
|
||||
public:
|
||||
uint32_t IndexedGetter(uint32_t, bool&, ErrorResult&);
|
||||
uint32_t Item(uint32_t, ErrorResult&);
|
||||
void NamedGetter(const nsAString&, bool&, nsAString&, ErrorResult&);
|
||||
void NamedItem(const nsAString&, nsAString&, ErrorResult&);
|
||||
void IndexedSetter(uint32_t, int32_t&, ErrorResult&);
|
||||
void IndexedSetter(uint32_t, const nsAString&, ErrorResult&) MOZ_DELETE;
|
||||
void NamedSetter(const nsAString&, const nsAString&, ErrorResult&);
|
||||
uint32_t IndexedGetter(uint32_t, bool&);
|
||||
uint32_t Item(uint32_t);
|
||||
void NamedGetter(const nsAString&, bool&, nsAString&);
|
||||
void NamedItem(const nsAString&, nsAString&);
|
||||
void IndexedSetter(uint32_t, int32_t&);
|
||||
void IndexedSetter(uint32_t, const nsAString&) MOZ_DELETE;
|
||||
void NamedSetter(const nsAString&, const nsAString&);
|
||||
void Stringify(nsAString&);
|
||||
uint32_t GetLength();
|
||||
};
|
||||
|
@ -36,7 +36,7 @@ interface OnlyForUseInConstructor {
|
||||
]
|
||||
interface TestInterface {
|
||||
// Integer types
|
||||
// XXXbz add tests for infallible versions of all the integer stuff
|
||||
// XXXbz add tests for throwing versions of all the integer stuff
|
||||
readonly attribute byte readonlyByte;
|
||||
attribute byte writableByte;
|
||||
void passByte(byte arg);
|
||||
@ -96,7 +96,7 @@ interface TestInterface {
|
||||
void passOptionalUnsignedLongLongWithDefault(optional unsigned long long arg = 17);
|
||||
|
||||
// Castable interface types
|
||||
// XXXbz add tests for infallible versions of all the castable interface stuff
|
||||
// XXXbz add tests for throwing versions of all the castable interface stuff
|
||||
TestInterface receiveSelf();
|
||||
TestInterface? receiveNullableSelf();
|
||||
TestInterface receiveWeakSelf();
|
||||
|
@ -16,17 +16,19 @@ interface CSSStyleDeclaration {
|
||||
|
||||
[Infallible]
|
||||
readonly attribute unsigned long length;
|
||||
[Infallible]
|
||||
getter DOMString item(unsigned long index);
|
||||
|
||||
[Throws]
|
||||
DOMString getPropertyValue(DOMString property);
|
||||
// Mozilla extension, sort of
|
||||
[Throws]
|
||||
CSSValue getPropertyCSSValue(DOMString property);
|
||||
[Infallible]
|
||||
DOMString getPropertyPriority(DOMString property);
|
||||
// This would be nicer if it used a string default value of "".
|
||||
// See bug 759622.
|
||||
[Throws]
|
||||
void setProperty(DOMString property, DOMString value, [TreatNullAs=EmptyString] optional DOMString priority);
|
||||
[Throws]
|
||||
DOMString removeProperty(DOMString property);
|
||||
|
||||
[Infallible]
|
||||
|
@ -29,17 +29,20 @@ interface CanvasRenderingContext2D {
|
||||
readonly attribute HTMLCanvasElement canvas;
|
||||
|
||||
// state
|
||||
[Infallible]
|
||||
void save(); // push state on state stack
|
||||
[Infallible]
|
||||
void restore(); // pop state stack and restore state
|
||||
|
||||
// transformations (default transform is the identity matrix)
|
||||
// NOT IMPLEMENTED attribute SVGMatrix currentTransform;
|
||||
[Throws]
|
||||
void scale(double x, double y);
|
||||
[Throws]
|
||||
void rotate(double angle);
|
||||
[Throws]
|
||||
void translate(double x, double y);
|
||||
[Throws]
|
||||
void transform(double a, double b, double c, double d, double e, double f);
|
||||
[Throws]
|
||||
void setTransform(double a, double b, double c, double d, double e, double f);
|
||||
// NOT IMPLEMENTED void resetTransform();
|
||||
|
||||
@ -53,8 +56,11 @@ interface CanvasRenderingContext2D {
|
||||
attribute any strokeStyle; // (default black)
|
||||
[SetterInfallible]
|
||||
attribute any fillStyle; // (default black)
|
||||
[Throws]
|
||||
CanvasGradient createLinearGradient(double x0, double y0, double x1, double y1);
|
||||
[Throws]
|
||||
CanvasGradient createRadialGradient(double x0, double y0, double r0, double x1, double y1, double r1);
|
||||
[Throws]
|
||||
CanvasPattern createPattern((HTMLImageElement or HTMLCanvasElement or HTMLVideoElement) image, [TreatNullAs=EmptyString] DOMString repetition);
|
||||
|
||||
// shadows
|
||||
@ -68,20 +74,14 @@ interface CanvasRenderingContext2D {
|
||||
attribute DOMString shadowColor; // (default transparent black)
|
||||
|
||||
// rects
|
||||
[Infallible]
|
||||
void clearRect(double x, double y, double w, double h);
|
||||
[Infallible]
|
||||
void fillRect(double x, double y, double w, double h);
|
||||
[Infallible]
|
||||
void strokeRect(double x, double y, double w, double h);
|
||||
|
||||
// path API (see also CanvasPathMethods)
|
||||
[Infallible]
|
||||
void beginPath();
|
||||
[Infallible]
|
||||
void fill();
|
||||
// NOT IMPLEMENTED void fill(Path path);
|
||||
[Infallible]
|
||||
void stroke();
|
||||
// NOT IMPLEMENTED void stroke(Path path);
|
||||
// NOT IMPLEMENTED void drawSystemFocusRing(Element element);
|
||||
@ -90,33 +90,42 @@ interface CanvasRenderingContext2D {
|
||||
// NOT IMPLEMENTED boolean drawCustomFocusRing(Path path, Element element);
|
||||
// NOT IMPLEMENTED void scrollPathIntoView();
|
||||
// NOT IMPLEMENTED void scrollPathIntoView(Path path);
|
||||
[Infallible]
|
||||
void clip();
|
||||
// NOT IMPLEMENTED void clip(Path path);
|
||||
// NOT IMPLEMENTED void resetClip();
|
||||
[Infallible]
|
||||
boolean isPointInPath(double x, double y);
|
||||
// NOT IMPLEMENTED boolean isPointInPath(Path path, double x, double y);
|
||||
|
||||
// text (see also the CanvasDrawingStyles interface)
|
||||
[Throws]
|
||||
void fillText(DOMString text, double x, double y, optional double maxWidth);
|
||||
[Throws]
|
||||
void strokeText(DOMString text, double x, double y, optional double maxWidth);
|
||||
[Throws]
|
||||
TextMetrics measureText(DOMString text);
|
||||
|
||||
// drawing images
|
||||
// NOT IMPLEMENTED attribute boolean imageSmoothingEnabled; // (default true)
|
||||
[Throws]
|
||||
void drawImage((HTMLImageElement or HTMLCanvasElement or HTMLVideoElement) image, double dx, double dy);
|
||||
[Throws]
|
||||
void drawImage((HTMLImageElement or HTMLCanvasElement or HTMLVideoElement) image, double dx, double dy, double dw, double dh);
|
||||
[Throws]
|
||||
void drawImage((HTMLImageElement or HTMLCanvasElement or HTMLVideoElement) image, double sx, double sy, double sw, double sh, double dx, double dy, double dw, double dh);
|
||||
|
||||
// hit regions
|
||||
// NOT IMPLEMENTED void addHitRegion(HitRegionOptions options);
|
||||
|
||||
// pixel manipulation
|
||||
[Creator] ImageData createImageData(double sw, double sh);
|
||||
[Creator] ImageData createImageData(ImageData imagedata);
|
||||
[Creator] ImageData getImageData(double sx, double sy, double sw, double sh);
|
||||
[Creator, Throws]
|
||||
ImageData createImageData(double sw, double sh);
|
||||
[Creator, Throws]
|
||||
ImageData createImageData(ImageData imagedata);
|
||||
[Creator, Throws]
|
||||
ImageData getImageData(double sx, double sy, double sw, double sh);
|
||||
[Throws]
|
||||
void putImageData(ImageData imagedata, double dx, double dy);
|
||||
[Throws]
|
||||
void putImageData(ImageData imagedata, double dx, double dy, double dirtyX, double dirtyY, double dirtyWidth, double dirtyHeight);
|
||||
|
||||
// Mozilla-specific stuff
|
||||
@ -192,8 +201,10 @@ interface CanvasRenderingContext2D {
|
||||
* FIXME Bug 767931 - Mark drawWindow and asyncDrawXULElement as ChromeOnly
|
||||
* in WebIDL
|
||||
*/
|
||||
[Throws]
|
||||
void drawWindow(Window window, double x, double y, double w, double h,
|
||||
DOMString bgColor, optional unsigned long flags = 0);
|
||||
[Throws]
|
||||
void asyncDrawXULElement(XULElement elem, double x, double y, double w,
|
||||
double h, DOMString bgColor,
|
||||
optional unsigned long flags = 0);
|
||||
@ -230,27 +241,20 @@ interface CanvasDrawingStyles {
|
||||
[NoInterfaceObject]
|
||||
interface CanvasPathMethods {
|
||||
// shared path API methods
|
||||
[Infallible]
|
||||
void closePath();
|
||||
|
||||
[Infallible]
|
||||
void moveTo(double x, double y);
|
||||
|
||||
[Infallible]
|
||||
void lineTo(double x, double y);
|
||||
|
||||
[Infallible]
|
||||
void quadraticCurveTo(double cpx, double cpy, double x, double y);
|
||||
|
||||
[Infallible]
|
||||
void bezierCurveTo(double cp1x, double cp1y, double cp2x, double cp2y, double x, double y);
|
||||
|
||||
[Throws]
|
||||
void arcTo(double x1, double y1, double x2, double y2, double radius);
|
||||
// NOT IMPLEMENTED void arcTo(double x1, double y1, double x2, double y2, double radiusX, double radiusY, double rotation);
|
||||
|
||||
[Infallible]
|
||||
void rect(double x, double y, double w, double h);
|
||||
|
||||
[Throws]
|
||||
void arc(double x, double y, double radius, double startAngle, double endAngle, optional boolean anticlockwise = false);
|
||||
// NOT IMPLEMENTED void ellipse(double x, double y, double radiusX, double radiusY, double rotation, double startAngle, double endAngle, boolean anticlockwise);
|
||||
};
|
||||
|
@ -17,12 +17,15 @@ interface EventTarget {
|
||||
differs in content and chrome. In content that default boolean
|
||||
value is true, while in chrome the default boolean value is
|
||||
false. */
|
||||
[Throws]
|
||||
void addEventListener(DOMString type,
|
||||
EventListener? listener,
|
||||
optional boolean capture = false,
|
||||
optional boolean? wantsUntrusted = null);
|
||||
[Throws]
|
||||
void removeEventListener(DOMString type,
|
||||
EventListener? listener,
|
||||
optional boolean capture = false);
|
||||
[Throws]
|
||||
boolean dispatchEvent(Event event);
|
||||
};
|
||||
|
@ -14,7 +14,6 @@
|
||||
|
||||
interface Performance {
|
||||
// DOMHighResTimeStamp now();
|
||||
[Infallible]
|
||||
double now();
|
||||
|
||||
[Infallible]
|
||||
|
@ -481,426 +481,308 @@ interface WebGLRenderingContext {
|
||||
[Infallible]
|
||||
readonly attribute long drawingBufferHeight;
|
||||
|
||||
[WebGLHandlesContextLoss] WebGLContextAttributes getContextAttributes();
|
||||
[WebGLHandlesContextLoss, Infallible] boolean isContextLost();
|
||||
[WebGLHandlesContextLoss, Throws] WebGLContextAttributes getContextAttributes();
|
||||
[WebGLHandlesContextLoss] boolean isContextLost();
|
||||
|
||||
[Infallible]
|
||||
sequence<DOMString>? getSupportedExtensions();
|
||||
|
||||
// XXXbz In the spec, this is "object?"; I'm making it
|
||||
// WebGLExtension? just for ease of implementation.
|
||||
[Infallible]
|
||||
WebGLExtension? getExtension(DOMString name);
|
||||
|
||||
[Infallible]
|
||||
void activeTexture(unsigned long texture);
|
||||
|
||||
[Infallible]
|
||||
void attachShader(WebGLProgram? program, WebGLShader? shader);
|
||||
|
||||
[Infallible]
|
||||
void bindAttribLocation(WebGLProgram? program, unsigned long index, DOMString name);
|
||||
|
||||
[Infallible]
|
||||
void bindBuffer(unsigned long target, WebGLBuffer? buffer);
|
||||
|
||||
[Infallible]
|
||||
void bindFramebuffer(unsigned long target, WebGLFramebuffer? framebuffer);
|
||||
|
||||
[Infallible]
|
||||
void bindRenderbuffer(unsigned long target, WebGLRenderbuffer? renderbuffer);
|
||||
|
||||
[Infallible]
|
||||
void bindTexture(unsigned long target, WebGLTexture? texture);
|
||||
|
||||
[Infallible]
|
||||
void blendColor(float red, float green, float blue, float alpha);
|
||||
|
||||
[Infallible]
|
||||
void blendEquation(unsigned long mode);
|
||||
|
||||
[Infallible]
|
||||
void blendEquationSeparate(unsigned long modeRGB, unsigned long modeAlpha);
|
||||
|
||||
[Infallible]
|
||||
void blendFunc(unsigned long sfactor, unsigned long dfactor);
|
||||
|
||||
[Infallible]
|
||||
void blendFuncSeparate(unsigned long srcRGB, unsigned long dstRGB,
|
||||
unsigned long srcAlpha, unsigned long dstAlpha);
|
||||
|
||||
[Infallible]
|
||||
void bufferData(unsigned long target, long long size, unsigned long usage);
|
||||
[Infallible]
|
||||
void bufferData(unsigned long target, ArrayBufferView data, unsigned long usage);
|
||||
[Infallible]
|
||||
void bufferData(unsigned long target, ArrayBuffer? data, unsigned long usage);
|
||||
[Infallible]
|
||||
void bufferSubData(unsigned long target, long long offset, ArrayBufferView data);
|
||||
[Infallible]
|
||||
void bufferSubData(unsigned long target, long long offset, ArrayBuffer? data);
|
||||
|
||||
[WebGLHandlesContextLoss, Infallible]
|
||||
[WebGLHandlesContextLoss]
|
||||
unsigned long checkFramebufferStatus(unsigned long target);
|
||||
|
||||
[Infallible]
|
||||
void clear(unsigned long mask);
|
||||
|
||||
[Infallible]
|
||||
void clearColor(float red, float green, float blue, float alpha);
|
||||
|
||||
[Infallible]
|
||||
void clearDepth(float depth);
|
||||
|
||||
[Infallible]
|
||||
void clearStencil(long s);
|
||||
|
||||
[Infallible]
|
||||
void colorMask(boolean red, boolean green, boolean blue, boolean alpha);
|
||||
|
||||
[Infallible]
|
||||
void compileShader(WebGLShader? shader);
|
||||
|
||||
[Infallible]
|
||||
void compressedTexImage2D(unsigned long target, long level, unsigned long internalformat,
|
||||
long width, long height, long border,
|
||||
ArrayBufferView data);
|
||||
[Infallible]
|
||||
void compressedTexSubImage2D(unsigned long target, long level,
|
||||
long xoffset, long yoffset,
|
||||
long width, long height, unsigned long format,
|
||||
ArrayBufferView data);
|
||||
|
||||
[Infallible]
|
||||
void copyTexImage2D(unsigned long target, long level, unsigned long internalformat,
|
||||
long x, long y, long width, long height,
|
||||
long border);
|
||||
[Infallible]
|
||||
void copyTexSubImage2D(unsigned long target, long level, long xoffset, long yoffset,
|
||||
long x, long y, long width, long height);
|
||||
|
||||
[Infallible]
|
||||
WebGLBuffer? createBuffer();
|
||||
|
||||
[Infallible]
|
||||
WebGLFramebuffer? createFramebuffer();
|
||||
|
||||
[Infallible]
|
||||
WebGLProgram? createProgram();
|
||||
|
||||
[Infallible]
|
||||
WebGLRenderbuffer? createRenderbuffer();
|
||||
|
||||
[Infallible]
|
||||
WebGLShader? createShader(unsigned long type);
|
||||
|
||||
[Infallible]
|
||||
WebGLTexture? createTexture();
|
||||
|
||||
[Infallible]
|
||||
void cullFace(unsigned long mode);
|
||||
|
||||
[Infallible]
|
||||
void deleteBuffer(WebGLBuffer? buffer);
|
||||
[Infallible]
|
||||
void deleteFramebuffer(WebGLFramebuffer? framebuffer);
|
||||
[Infallible]
|
||||
void deleteProgram(WebGLProgram? program);
|
||||
[Infallible]
|
||||
void deleteRenderbuffer(WebGLRenderbuffer? renderbuffer);
|
||||
[Infallible]
|
||||
void deleteShader(WebGLShader? shader);
|
||||
[Infallible]
|
||||
void deleteTexture(WebGLTexture? texture);
|
||||
|
||||
[Infallible]
|
||||
void depthFunc(unsigned long func);
|
||||
[Infallible]
|
||||
void depthMask(boolean flag);
|
||||
[Infallible]
|
||||
void depthRange(float zNear, float zFar);
|
||||
[Infallible]
|
||||
void detachShader(WebGLProgram? program, WebGLShader? shader);
|
||||
[Infallible]
|
||||
void disable(unsigned long cap);
|
||||
[Infallible]
|
||||
void disableVertexAttribArray(unsigned long index);
|
||||
[Infallible]
|
||||
void drawArrays(unsigned long mode, long first, long count);
|
||||
[Infallible]
|
||||
void drawElements(unsigned long mode, long count, unsigned long type, long long offset);
|
||||
|
||||
[Infallible]
|
||||
void enable(unsigned long cap);
|
||||
[Infallible]
|
||||
void enableVertexAttribArray(unsigned long index);
|
||||
[Infallible]
|
||||
void finish();
|
||||
[Infallible]
|
||||
void flush();
|
||||
|
||||
[Infallible]
|
||||
void framebufferRenderbuffer(unsigned long target, unsigned long attachment,
|
||||
unsigned long renderbuffertarget,
|
||||
WebGLRenderbuffer? renderbuffer);
|
||||
[Infallible]
|
||||
void framebufferTexture2D(unsigned long target, unsigned long attachment, unsigned long textarget,
|
||||
WebGLTexture? texture, long level);
|
||||
[Infallible]
|
||||
void frontFace(unsigned long mode);
|
||||
|
||||
[Infallible]
|
||||
void generateMipmap(unsigned long target);
|
||||
|
||||
[Infallible]
|
||||
WebGLActiveInfo? getActiveAttrib(WebGLProgram? program, unsigned long index);
|
||||
[Infallible]
|
||||
WebGLActiveInfo? getActiveUniform(WebGLProgram? program, unsigned long index);
|
||||
[Infallible]
|
||||
sequence<WebGLShader>? getAttachedShaders(WebGLProgram? program);
|
||||
|
||||
[WebGLHandlesContextLoss, Infallible]
|
||||
[WebGLHandlesContextLoss]
|
||||
long getAttribLocation(WebGLProgram? program, DOMString name);
|
||||
|
||||
[Infallible]
|
||||
any getBufferParameter(unsigned long target, unsigned long pname);
|
||||
[Throws]
|
||||
any getParameter(unsigned long pname);
|
||||
|
||||
[WebGLHandlesContextLoss, Infallible] unsigned long getError();
|
||||
[WebGLHandlesContextLoss] unsigned long getError();
|
||||
|
||||
[Throws]
|
||||
any getFramebufferAttachmentParameter(unsigned long target, unsigned long attachment,
|
||||
unsigned long pname);
|
||||
[Infallible]
|
||||
any getProgramParameter(WebGLProgram? program, unsigned long pname);
|
||||
[Infallible]
|
||||
DOMString? getProgramInfoLog(WebGLProgram? program);
|
||||
[Infallible]
|
||||
any getRenderbufferParameter(unsigned long target, unsigned long pname);
|
||||
[Infallible]
|
||||
any getShaderParameter(WebGLShader? shader, unsigned long pname);
|
||||
[Infallible]
|
||||
WebGLShaderPrecisionFormat? getShaderPrecisionFormat(unsigned long shadertype, unsigned long precisiontype);
|
||||
[Infallible]
|
||||
DOMString? getShaderInfoLog(WebGLShader? shader);
|
||||
|
||||
[Infallible]
|
||||
DOMString? getShaderSource(WebGLShader? shader);
|
||||
|
||||
[Infallible]
|
||||
any getTexParameter(unsigned long target, unsigned long pname);
|
||||
|
||||
[Throws]
|
||||
any getUniform(WebGLProgram? program, WebGLUniformLocation? location);
|
||||
|
||||
[Creator, Infallible]
|
||||
[Creator]
|
||||
WebGLUniformLocation? getUniformLocation(WebGLProgram? program, DOMString name);
|
||||
|
||||
[Throws]
|
||||
any getVertexAttrib(unsigned long index, unsigned long pname);
|
||||
|
||||
[WebGLHandlesContextLoss, Infallible]
|
||||
[WebGLHandlesContextLoss]
|
||||
long long getVertexAttribOffset(unsigned long index, unsigned long pname);
|
||||
|
||||
[Infallible]
|
||||
void hint(unsigned long target, unsigned long mode);
|
||||
|
||||
[WebGLHandlesContextLoss, Infallible]
|
||||
[WebGLHandlesContextLoss]
|
||||
boolean isBuffer(WebGLBuffer? buffer);
|
||||
|
||||
[WebGLHandlesContextLoss, Infallible]
|
||||
[WebGLHandlesContextLoss]
|
||||
boolean isEnabled(unsigned long cap);
|
||||
|
||||
[WebGLHandlesContextLoss, Infallible]
|
||||
[WebGLHandlesContextLoss]
|
||||
boolean isFramebuffer(WebGLFramebuffer? framebuffer);
|
||||
|
||||
[WebGLHandlesContextLoss, Infallible]
|
||||
[WebGLHandlesContextLoss]
|
||||
boolean isProgram(WebGLProgram? program);
|
||||
|
||||
[WebGLHandlesContextLoss, Infallible]
|
||||
[WebGLHandlesContextLoss]
|
||||
boolean isRenderbuffer(WebGLRenderbuffer? renderbuffer);
|
||||
|
||||
[WebGLHandlesContextLoss, Infallible]
|
||||
[WebGLHandlesContextLoss]
|
||||
boolean isShader(WebGLShader? shader);
|
||||
|
||||
[WebGLHandlesContextLoss, Infallible]
|
||||
[WebGLHandlesContextLoss]
|
||||
boolean isTexture(WebGLTexture? texture);
|
||||
|
||||
[Infallible]
|
||||
void lineWidth(float width);
|
||||
|
||||
[Infallible]
|
||||
void linkProgram(WebGLProgram? program);
|
||||
|
||||
[Infallible]
|
||||
void pixelStorei(unsigned long pname, long param);
|
||||
|
||||
[Infallible]
|
||||
void polygonOffset(float factor, float units);
|
||||
|
||||
[Throws]
|
||||
void readPixels(long x, long y, long width, long height,
|
||||
unsigned long format, unsigned long type, ArrayBufferView? pixels);
|
||||
|
||||
[Infallible]
|
||||
void renderbufferStorage(unsigned long target, unsigned long internalformat,
|
||||
long width, long height);
|
||||
|
||||
[Infallible]
|
||||
void sampleCoverage(float value, boolean invert);
|
||||
|
||||
[Infallible]
|
||||
void scissor(long x, long y, long width, long height);
|
||||
|
||||
[Infallible]
|
||||
void shaderSource(WebGLShader? shader, DOMString source);
|
||||
|
||||
[Infallible]
|
||||
void stencilFunc(unsigned long func, long ref, unsigned long mask);
|
||||
|
||||
[Infallible]
|
||||
void stencilFuncSeparate(unsigned long face, unsigned long func, long ref, unsigned long mask);
|
||||
|
||||
[Infallible]
|
||||
void stencilMask(unsigned long mask);
|
||||
|
||||
[Infallible]
|
||||
void stencilMaskSeparate(unsigned long face, unsigned long mask);
|
||||
|
||||
[Infallible]
|
||||
void stencilOp(unsigned long fail, unsigned long zfail, unsigned long zpass);
|
||||
|
||||
[Infallible]
|
||||
void stencilOpSeparate(unsigned long face, unsigned long fail, unsigned long zfail, unsigned long zpass);
|
||||
|
||||
|
||||
[Throws]
|
||||
void texImage2D(unsigned long target, long level, unsigned long internalformat,
|
||||
long width, long height, long border, unsigned long format,
|
||||
unsigned long type, ArrayBufferView? pixels);
|
||||
[Throws]
|
||||
void texImage2D(unsigned long target, long level, unsigned long internalformat,
|
||||
unsigned long format, unsigned long type, ImageData? pixels);
|
||||
[Throws]
|
||||
void texImage2D(unsigned long target, long level, unsigned long internalformat,
|
||||
unsigned long format, unsigned long type, HTMLImageElement image); // May throw DOMException
|
||||
[Throws]
|
||||
void texImage2D(unsigned long target, long level, unsigned long internalformat,
|
||||
unsigned long format, unsigned long type, HTMLCanvasElement canvas); // May throw DOMException
|
||||
[Throws]
|
||||
void texImage2D(unsigned long target, long level, unsigned long internalformat,
|
||||
unsigned long format, unsigned long type, HTMLVideoElement video); // May throw DOMException
|
||||
|
||||
[Infallible]
|
||||
void texParameterf(unsigned long target, unsigned long pname, float param);
|
||||
[Infallible]
|
||||
void texParameteri(unsigned long target, unsigned long pname, long param);
|
||||
|
||||
[Throws]
|
||||
void texSubImage2D(unsigned long target, long level, long xoffset, long yoffset,
|
||||
long width, long height,
|
||||
unsigned long format, unsigned long type, ArrayBufferView? pixels);
|
||||
[Throws]
|
||||
void texSubImage2D(unsigned long target, long level, long xoffset, long yoffset,
|
||||
unsigned long format, unsigned long type, ImageData? pixels);
|
||||
[Throws]
|
||||
void texSubImage2D(unsigned long target, long level, long xoffset, long yoffset,
|
||||
unsigned long format, unsigned long type, HTMLImageElement image); // May throw DOMException
|
||||
[Throws]
|
||||
void texSubImage2D(unsigned long target, long level, long xoffset, long yoffset,
|
||||
unsigned long format, unsigned long type, HTMLCanvasElement canvas); // May throw DOMException
|
||||
[Throws]
|
||||
void texSubImage2D(unsigned long target, long level, long xoffset, long yoffset,
|
||||
unsigned long format, unsigned long type, HTMLVideoElement video); // May throw DOMException
|
||||
|
||||
[Infallible]
|
||||
void uniform1f(WebGLUniformLocation? location, float x);
|
||||
[Infallible]
|
||||
void uniform1fv(WebGLUniformLocation? location, Float32Array v);
|
||||
[Infallible]
|
||||
void uniform1fv(WebGLUniformLocation? location, sequence<float> v);
|
||||
[Infallible]
|
||||
void uniform1i(WebGLUniformLocation? location, long x);
|
||||
[Infallible]
|
||||
void uniform1iv(WebGLUniformLocation? location, Int32Array v);
|
||||
[Infallible]
|
||||
void uniform1iv(WebGLUniformLocation? location, sequence<long> v);
|
||||
[Infallible]
|
||||
void uniform2f(WebGLUniformLocation? location, float x, float y);
|
||||
[Infallible]
|
||||
void uniform2fv(WebGLUniformLocation? location, Float32Array v);
|
||||
[Infallible]
|
||||
void uniform2fv(WebGLUniformLocation? location, sequence<float> v);
|
||||
[Infallible]
|
||||
void uniform2i(WebGLUniformLocation? location, long x, long y);
|
||||
[Infallible]
|
||||
void uniform2iv(WebGLUniformLocation? location, Int32Array v);
|
||||
[Infallible]
|
||||
void uniform2iv(WebGLUniformLocation? location, sequence<long> v);
|
||||
[Infallible]
|
||||
void uniform3f(WebGLUniformLocation? location, float x, float y, float z);
|
||||
[Infallible]
|
||||
void uniform3fv(WebGLUniformLocation? location, Float32Array v);
|
||||
[Infallible]
|
||||
void uniform3fv(WebGLUniformLocation? location, sequence<float> v);
|
||||
[Infallible]
|
||||
void uniform3i(WebGLUniformLocation? location, long x, long y, long z);
|
||||
[Infallible]
|
||||
void uniform3iv(WebGLUniformLocation? location, Int32Array v);
|
||||
[Infallible]
|
||||
void uniform3iv(WebGLUniformLocation? location, sequence<long> v);
|
||||
[Infallible]
|
||||
void uniform4f(WebGLUniformLocation? location, float x, float y, float z, float w);
|
||||
[Infallible]
|
||||
void uniform4fv(WebGLUniformLocation? location, Float32Array v);
|
||||
[Infallible]
|
||||
void uniform4fv(WebGLUniformLocation? location, sequence<float> v);
|
||||
[Infallible]
|
||||
void uniform4i(WebGLUniformLocation? location, long x, long y, long z, long w);
|
||||
[Infallible]
|
||||
void uniform4iv(WebGLUniformLocation? location, Int32Array v);
|
||||
[Infallible]
|
||||
void uniform4iv(WebGLUniformLocation? location, sequence<long> v);
|
||||
|
||||
[Infallible]
|
||||
void uniformMatrix2fv(WebGLUniformLocation? location, boolean transpose,
|
||||
Float32Array value);
|
||||
[Infallible]
|
||||
void uniformMatrix2fv(WebGLUniformLocation? location, boolean transpose,
|
||||
sequence<float> value);
|
||||
[Infallible]
|
||||
void uniformMatrix3fv(WebGLUniformLocation? location, boolean transpose,
|
||||
Float32Array value);
|
||||
[Infallible]
|
||||
void uniformMatrix3fv(WebGLUniformLocation? location, boolean transpose,
|
||||
sequence<float> value);
|
||||
[Infallible]
|
||||
void uniformMatrix4fv(WebGLUniformLocation? location, boolean transpose,
|
||||
Float32Array value);
|
||||
[Infallible]
|
||||
void uniformMatrix4fv(WebGLUniformLocation? location, boolean transpose,
|
||||
sequence<float> value);
|
||||
|
||||
[Infallible]
|
||||
void useProgram(WebGLProgram? program);
|
||||
[Infallible]
|
||||
void validateProgram(WebGLProgram? program);
|
||||
|
||||
[Infallible]
|
||||
void vertexAttrib1f(unsigned long indx, float x);
|
||||
[Infallible]
|
||||
void vertexAttrib1fv(unsigned long indx, Float32Array values);
|
||||
[Infallible]
|
||||
void vertexAttrib1fv(unsigned long indx, sequence<float> values);
|
||||
[Infallible]
|
||||
void vertexAttrib2f(unsigned long indx, float x, float y);
|
||||
[Infallible]
|
||||
void vertexAttrib2fv(unsigned long indx, Float32Array values);
|
||||
[Infallible]
|
||||
void vertexAttrib2fv(unsigned long indx, sequence<float> values);
|
||||
[Infallible]
|
||||
void vertexAttrib3f(unsigned long indx, float x, float y, float z);
|
||||
[Infallible]
|
||||
void vertexAttrib3fv(unsigned long indx, Float32Array values);
|
||||
[Infallible]
|
||||
void vertexAttrib3fv(unsigned long indx, sequence<float> values);
|
||||
[Infallible]
|
||||
void vertexAttrib4f(unsigned long indx, float x, float y, float z, float w);
|
||||
[Infallible]
|
||||
void vertexAttrib4fv(unsigned long indx, Float32Array values);
|
||||
[Infallible]
|
||||
void vertexAttrib4fv(unsigned long indx, sequence<float> values);
|
||||
[Infallible]
|
||||
void vertexAttribPointer(unsigned long indx, long size, unsigned long type,
|
||||
boolean normalized, long stride, long long offset);
|
||||
|
||||
[Infallible]
|
||||
void viewport(long x, long y, long width, long height);
|
||||
};
|
||||
|
||||
|
@ -68,8 +68,10 @@ interface XMLHttpRequest : XMLHttpRequestEventTarget {
|
||||
readonly attribute unsigned short readyState;
|
||||
|
||||
// request
|
||||
[Throws]
|
||||
void open(DOMString method, DOMString url, optional boolean async = true,
|
||||
optional DOMString? user, optional DOMString? password);
|
||||
[Throws]
|
||||
void setRequestHeader(DOMString header, DOMString value);
|
||||
|
||||
[GetterInfallible]
|
||||
@ -81,15 +83,22 @@ interface XMLHttpRequest : XMLHttpRequestEventTarget {
|
||||
[Infallible=MainThread]
|
||||
readonly attribute XMLHttpRequestUpload upload;
|
||||
|
||||
[Throws]
|
||||
void send();
|
||||
[Throws]
|
||||
void send(ArrayBuffer data);
|
||||
[Throws]
|
||||
void send(Blob data);
|
||||
[Throws]
|
||||
void send(Document data);
|
||||
[Throws]
|
||||
void send(DOMString? data);
|
||||
[Throws]
|
||||
void send(FormData data);
|
||||
[Throws]
|
||||
void send(InputStream data);
|
||||
|
||||
[Infallible=MainThread]
|
||||
[Throws=Workers]
|
||||
void abort();
|
||||
|
||||
// response
|
||||
@ -98,12 +107,13 @@ interface XMLHttpRequest : XMLHttpRequestEventTarget {
|
||||
|
||||
[Infallible]
|
||||
readonly attribute DOMString statusText;
|
||||
[Throws]
|
||||
DOMString? getResponseHeader(DOMString header);
|
||||
|
||||
[Infallible=MainThread]
|
||||
[Throws=Workers]
|
||||
DOMString getAllResponseHeaders();
|
||||
|
||||
[Infallible=MainThread]
|
||||
[Throws=Workers]
|
||||
void overrideMimeType(DOMString mime);
|
||||
|
||||
[GetterInfallible]
|
||||
@ -124,7 +134,9 @@ interface XMLHttpRequest : XMLHttpRequestEventTarget {
|
||||
[ChromeOnly, GetterInfallible]
|
||||
readonly attribute MozChannel channel;
|
||||
|
||||
[Throws]
|
||||
void sendAsBinary(DOMString body);
|
||||
[Throws]
|
||||
any getInterface(IID iid);
|
||||
|
||||
[Infallible]
|
||||
|
Loading…
Reference in New Issue
Block a user