| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| dictionary TestDictionary { |
| boolean booleanMember; |
| long longMember = 1; |
| DOMString stringMember; |
| TestInterface testInterfaceMember; |
| [TreatNullAs=EmptyString] DOMString domStringTreatNullAsEmptyStringMember; |
| USVString? usvStringOrNullMember = null; |
| double? doubleOrNullMember = null; |
| double restrictedDoubleMember = 3.14; |
| unrestricted double unrestrictedDoubleMember = 3.14; |
| DOMString? stringOrNullMember = "default string value"; |
| TestInterface? testInterfaceOrNullMember; |
| sequence<DOMString> stringSequenceMember = []; |
| sequence<[TreatNullAs=EmptyString] DOMString> treatNullAsStringSequenceMember = []; |
| sequence<TestInterface> testInterfaceSequenceMember = []; |
| sequence<TestObject> testObjectSequenceMember; |
| TestEnum enumMember = "foo"; |
| TestEnum? enumOrNullMember; |
| sequence<TestEnum> enumSequenceMember; |
| Element? elementOrNullMember; |
| object objectMember; |
| object? objectOrNullMember; |
| sequence<object?> objectOrNullSequenceMember; |
| [ImplementedAs=createMember] boolean create; |
| [DeprecateAs=CreateMember, ImplementedAs=createMember] boolean deprecatedCreateMember; |
| // If done naively, collides with a C++ keyword. |
| [ImplementedAs=isPublic] boolean public; |
| (double or DOMString) doubleOrStringMember = 3.14; |
| sequence<(double or DOMString)> doubleOrStringSequenceMember; |
| (double or DOMString) otherDoubleOrStringMember = "default string value"; |
| (TestInterface2 or Uint8Array) testInterface2OrUint8ArrayMember; |
| sequence<InternalDictionary> internalDictionarySequenceMember; |
| Uint8Array uint8ArrayMember; |
| EventTarget eventTargetMember; |
| any anyMember = null; |
| [RuntimeEnabled=RuntimeFeature] boolean runtimeMember; |
| [RuntimeEnabled=RuntimeFeature] boolean runtimeSecondMember; |
| [RuntimeEnabled=OriginTrialFeature] boolean originTrialMember; |
| [RuntimeEnabled=OriginTrialFeature1] boolean originTrialSecondMember; |
| record<ByteString, byte> recordMember; |
| record<USVString, TestObject> garbageCollectedRecordMember; |
| record<ByteString, (long or boolean)> unionInRecordMember; |
| record<DOMString, any> anyInRecordMember; |
| (Float or BooleanType) unionWithTypedefs; |
| ([TreatNullAs=EmptyString] DOMString or long) unionWithAnnotatedTypeMember; |
| [Clamp] long applicableToTypeLongMember; |
| [TreatNullAs=EmptyString] DOMString applicableToTypeStringMember; |
| (double or sequence<double>) unionMemberWithSequenceDefault = []; |
| (TestEnum or sequence<TestEnum>) testEnumOrTestEnumSequenceMember; |
| (TestEnum? or sequence<TestEnum>) testEnumOrNullOrTestEnumSequenceMember; |
| (TestEnum or sequence<TestEnum?>) testEnumOrTestEnumOrNullSequenceMember; |
| sequence<double?> doubleOrNullSequenceMember; |
| (double? or sequence<double?>) doubleOrNullOrDoubleOrNullSequenceMember; |
| sequence<DOMString?> stringOrNullSequenceMember; |
| sequence<Element?> elementOrNullSequenceMember; |
| sequence<(double or DOMString)?> unionOrNullSequenceMember; |
| record<DOMString, double?> doubleOrNullRecordMember; |
| record<DOMString, DOMString?> stringOrNullRecordMember; |
| record<DOMString, Element?> elementOrNullRecordMember; |
| record<DOMString, (double or DOMString)?> unionOrNullRecordMember; |
| VoidCallbackFunction callbackFunctionMember; |
| required VoidCallbackFunction requiredCallbackFunctionMember; |
| boolean member-with-hyphen-in-name = false; |
| TreatNonObjectAsNullVoidFunction treatNonNullObjMember; |
| }; |