'/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */' Comment.Multiline '\n' Text '/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this file,\n * You can obtain one at http://mozilla.org/MPL/2.0/.\n */' Comment.Multiline '\n\n' Text 'typedef' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'myLong' Name.Class ';' Punctuation '\n' Text 'typedef' Keyword ' ' Text 'TestInterface' Name.Class ' ' Text 'AnotherNameForTestInterface' Name.Class ';' Punctuation '\n' Text 'typedef' Keyword ' ' Text 'TestInterface' Name.Class '?' Punctuation ' ' Text 'NullableTestInterface' Name.Class ';' Punctuation '\n' Text 'typedef' Keyword ' ' Text 'CustomEventInit' Name.Class ' ' Text 'TestDictionaryTypedef' Name.Class ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestExternalInterface' Name.Class ';' Punctuation '\n\n' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"xyz"' Literal.String ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'TestRenamedInterface' Name.Class ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'callback' Keyword ' ' Text 'interface' Keyword ' ' Text 'TestCallbackInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'foo' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text 'bar' Name.Variable ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'doSomething' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'doSomethingElse' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'arg' Name.Variable ',' Punctuation ' ' Text 'TestInterface' Name.Class ' ' Text 'otherArg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'doSequenceLongArg' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'doSequenceStringArg' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'doMozMapLongArg' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'getSequenceOfLong' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation ' ' Text 'getSequenceOfInterfaces' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation '?' Punctuation ' ' Text 'getNullableSequenceOfInterfaces' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'getSequenceOfNullableInterfaces' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'getNullableSequenceOfNullableInterfaces' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestCallbackInterface' Name.Class '>' Punctuation ' ' Text 'getSequenceOfCallbackInterfaces' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestCallbackInterface' Name.Class '>' Punctuation '?' Punctuation ' ' Text 'getNullableSequenceOfCallbackInterfaces' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestCallbackInterface' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'getSequenceOfNullableCallbackInterfaces' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestCallbackInterface' Name.Class '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'getNullableSequenceOfNullableCallbackInterfaces' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'getMozMapOfLong' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'Dict' Name.Class '?' Punctuation ' ' Text 'getDictionary' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passArrayBuffer' Name.Function '(' Punctuation 'ArrayBuffer' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableArrayBuffer' Name.Function '(' Punctuation 'ArrayBuffer' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalArrayBuffer' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'ArrayBuffer' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableArrayBuffer' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'ArrayBuffer' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableArrayBufferWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'ArrayBuffer' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passArrayBufferView' Name.Function '(' Punctuation 'ArrayBufferView' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passInt8Array' Name.Function '(' Punctuation 'Int8Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passInt16Array' Name.Function '(' Punctuation 'Int16Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passInt32Array' Name.Function '(' Punctuation 'Int32Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUint8Array' Name.Function '(' Punctuation 'Uint8Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUint16Array' Name.Function '(' Punctuation 'Uint16Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUint32Array' Name.Function '(' Punctuation 'Uint32Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUint8ClampedArray' Name.Function '(' Punctuation 'Uint8ClampedArray' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passFloat32Array' Name.Function '(' Punctuation 'Float32Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passFloat64Array' Name.Function '(' Punctuation 'Float64Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfArrayBuffers' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'ArrayBuffer' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfNullableArrayBuffers' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'ArrayBuffer' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicTypedArray' Name.Function '(' Punctuation 'Float32Array' Keyword.Type '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicNullableTypedArray' Name.Function '(' Punctuation 'Float32Array' Keyword.Type '?' Punctuation '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'Uint8Array' Keyword.Type ' ' Text 'receiveUint8Array' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'Uint8Array' Keyword.Type ' ' Text 'uint8ArrayAttr' Name.Variable ';' Punctuation '\n ' Text 'Promise' Keyword.Type '<' Punctuation 'void' Keyword.Type '>' Punctuation ' ' Text 'receivePromise' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'callback' Keyword ' ' Text 'interface' Keyword ' ' Text 'TestSingleOperationCallbackInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'TestInterface' Name.Class ' ' Text 'doSomething' Name.Function '(' Punctuation 'short' Keyword.Type ' ' Text 'arg' Name.Variable ',' Punctuation ' ' Text 'sequence' Keyword.Type '<' Punctuation 'double' Keyword.Type '>' Punctuation ' ' Text 'anotherArg' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'enum' Keyword ' ' Text 'TestEnum' Name.Class ' ' Text '{' Punctuation '\n ' Text '"1"' Literal.String ',' Punctuation '\n ' Text '"a"' Literal.String ',' Punctuation '\n ' Text '"b"' Literal.String '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'callback' Keyword ' ' Text 'TestCallback' Name.Class ' ' Text '=' Punctuation ' ' Text 'void' Keyword.Type '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '[' Punctuation 'TreatNonCallableAsNull' Name.Decorator ']' Punctuation ' ' Text 'callback' Keyword ' ' Text 'TestTreatAsNullCallback' Name.Class ' ' Text '=' Punctuation ' ' Text 'void' Keyword.Type '(' Punctuation ')' Punctuation ';' Punctuation '\n\n' Text '// Callback return value tests' Comment.Single '\n' Text 'callback' Keyword ' ' Text 'TestIntegerReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'long' Keyword.Type '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestNullableIntegerReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'long' Keyword.Type '?' Punctuation '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestBooleanReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'boolean' Keyword.Type '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestFloatReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'float' Keyword.Type '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestStringReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'DOMString' Keyword.Type '(' Punctuation 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestEnumReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'TestEnum' Name.Class '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestInterfaceReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'TestInterface' Name.Class '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestNullableInterfaceReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'TestInterface' Name.Class '?' Punctuation '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestExternalInterfaceReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'TestExternalInterface' Name.Class '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestNullableExternalInterfaceReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'TestExternalInterface' Name.Class '?' Punctuation '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestCallbackInterfaceReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'TestCallbackInterface' Name.Class '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestNullableCallbackInterfaceReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'TestCallbackInterface' Name.Class '?' Punctuation '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestCallbackReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'TestCallback' Name.Class '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestNullableCallbackReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'TestCallback' Name.Class '?' Punctuation '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestObjectReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'object' Keyword.Type '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestNullableObjectReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'object' Keyword.Type '?' Punctuation '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestTypedArrayReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'ArrayBuffer' Keyword.Type '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestNullableTypedArrayReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'ArrayBuffer' Keyword.Type '?' Punctuation '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestSequenceReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'sequence' Keyword.Type '<' Punctuation 'boolean' Keyword.Type '>' Punctuation '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestNullableSequenceReturn' Name.Class ' ' Text '=' Punctuation ' ' Text 'sequence' Keyword.Type '<' Punctuation 'boolean' Keyword.Type '>' Punctuation '?' Punctuation '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '// Callback argument tests' Comment.Single '\n' Text 'callback' Keyword ' ' Text 'TestIntegerArguments' Name.Class ' ' Text '=' Punctuation ' ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '(' Punctuation 'long' Keyword.Type ' ' Text 'arg1' Name.Variable ',' Punctuation ' ' Text 'long' Keyword.Type '?' Punctuation ' ' Text 'arg2' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg3' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg4' Name.Variable ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestInterfaceArguments' Name.Class ' ' Text '=' Punctuation ' ' Text 'void' Keyword.Type '(' Punctuation 'TestInterface' Name.Class ' ' Text 'arg1' Name.Variable ',' Punctuation ' ' Text 'TestInterface' Name.Class '?' Punctuation ' ' Text 'arg2' Name.Variable ',' Punctuation '\n ' Text 'TestExternalInterface' Name.Class ' ' Text 'arg3' Name.Variable ',' Punctuation '\n ' Text 'TestExternalInterface' Name.Class '?' Punctuation ' ' Text 'arg4' Name.Variable ',' Punctuation '\n ' Text 'TestCallbackInterface' Name.Class ' ' Text 'arg5' Name.Variable ',' Punctuation '\n ' Text 'TestCallbackInterface' Name.Class '?' Punctuation ' ' Text 'arg6' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation ' ' Text 'arg7' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg8' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestExternalInterface' Name.Class '>' Punctuation ' ' Text 'arg9' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestExternalInterface' Name.Class '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg10' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestCallbackInterface' Name.Class '>' Punctuation ' ' Text 'arg11' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestCallbackInterface' Name.Class '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg12' Name.Variable ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestStringEnumArguments' Name.Class ' ' Text '=' Punctuation ' ' Text 'void' Keyword.Type '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'myString' Name.Variable ',' Punctuation ' ' Text 'DOMString' Keyword.Type '?' Punctuation ' ' Text 'nullString' Name.Variable ',' Punctuation '\n ' Text 'TestEnum' Name.Class ' ' Text 'myEnum' Name.Variable ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestObjectArguments' Name.Class ' ' Text '=' Punctuation ' ' Text 'void' Keyword.Type '(' Punctuation 'object' Keyword.Type ' ' Text 'anObj' Name.Variable ',' Punctuation ' ' Text 'object' Keyword.Type '?' Punctuation ' ' Text 'anotherObj' Name.Variable ',' Punctuation '\n ' Text 'ArrayBuffer' Keyword.Type ' ' Text 'buf' Name.Variable ',' Punctuation ' ' Text 'ArrayBuffer' Keyword.Type '?' Punctuation ' ' Text 'buf2' Name.Variable ')' Punctuation ';' Punctuation '\n' Text 'callback' Keyword ' ' Text 'TestOptionalArguments' Name.Class ' ' Text '=' Punctuation ' ' Text 'void' Keyword.Type '(' Punctuation 'optional' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text 'aString' Name.Variable ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'object' Keyword.Type ' ' Text 'something' Name.Variable ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation ' ' Text 'aSeq' Name.Variable ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'TestInterface' Name.Class '?' Punctuation ' ' Text 'anInterface' Name.Variable ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'TestInterface' Name.Class ' ' Text 'anotherInterface' Name.Variable ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'aLong' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '// If you add a new test callback, add it to the forceCallbackGeneration' Comment.Single '\n' Text '// method on TestInterface so it actually gets tested.' Comment.Single '\n\n' Text 'TestInterface' Name.Class ' ' Text 'implements' Keyword ' ' Text 'ImplementedInterface' Name.Class ';' Punctuation '\n\n' Text '// This interface is only for use in the constructor below' Comment.Single '\n' Text 'interface' Keyword ' ' Text 'OnlyForUseInConstructor' Name.Class ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text '[' Punctuation 'Constructor' Name.Decorator ',' Punctuation '\n ' Text 'Constructor' Name.Decorator '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'str' Name.Variable ')' Punctuation ',' Punctuation '\n ' Text 'Constructor' Name.Decorator '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'num' Name.Variable ',' Punctuation ' ' Text 'boolean' Keyword.Type '?' Punctuation ' ' Text 'boolArg' Name.Variable ')' Punctuation ',' Punctuation '\n ' Text 'Constructor' Name.Decorator '(' Punctuation 'TestInterface' Name.Class '?' Punctuation ' ' Text 'iface' Name.Variable ')' Punctuation ',' Punctuation '\n ' Text 'Constructor' Name.Decorator '(' Punctuation 'long' Keyword.Type ' ' Text 'arg1' Name.Variable ',' Punctuation ' ' Text 'IndirectlyImplementedInterface' Name.Class ' ' Text 'iface' Name.Variable ')' Punctuation ',' Punctuation '\n ' Text 'Constructor' Name.Decorator '(' Punctuation 'Date' Name.Class ' ' Text 'arg1' Name.Variable ')' Punctuation ',' Punctuation '\n ' Text 'Constructor' Name.Decorator '(' Punctuation 'ArrayBuffer' Keyword.Type ' ' Text 'arrayBuf' Name.Variable ')' Punctuation ',' Punctuation '\n ' Text 'Constructor' Name.Decorator '(' Punctuation 'Uint8Array' Keyword.Type ' ' Text 'typedArr' Name.Variable ')' Punctuation ',' Punctuation '\n ' Text '// Constructor(long arg1, long arg2, (TestInterface or OnlyForUseInConstructor) arg3),' Comment.Single '\n ' Text 'NamedConstructor' Name.Decorator '=' Punctuation 'Test' Name ',' Punctuation '\n ' Text 'NamedConstructor' Name.Decorator '=' Punctuation 'Test' Name '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'str' Name.Variable ')' Punctuation ',' Punctuation '\n ' Text 'NamedConstructor' Name.Decorator '=' Punctuation 'Test2' Name '(' Punctuation 'DictForConstructor' Name.Class ' ' Text 'dict' Name.Variable ',' Punctuation ' ' Text 'any' Keyword.Type ' ' Text 'any1' Name.Variable ',' Punctuation ' ' Text 'object' Keyword.Type ' ' Text 'obj1' Name.Variable ',' Punctuation '\n ' Text 'object' Keyword.Type '?' Punctuation ' ' Text 'obj2' Name.Variable ',' Punctuation ' ' Text 'sequence' Keyword.Type '<' Punctuation 'Dict' Name.Class '>' Punctuation ' ' Text 'seq' Name.Variable ',' Punctuation ' ' Text 'optional' Keyword ' ' Text 'any' Keyword.Type ' ' Text 'any2' Name.Variable ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'object' Keyword.Type ' ' Text 'obj3' Name.Variable ',' Punctuation ' ' Text 'optional' Keyword ' ' Text 'object' Keyword.Type '?' Punctuation ' ' Text 'obj4' Name.Variable ')' Punctuation ',' Punctuation '\n ' Text 'NamedConstructor' Name.Decorator '=' Punctuation 'Test3' Name '(' Punctuation '(' Punctuation 'long' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation ')' Punctuation ' ' Text 'arg1' Name.Variable ')' Punctuation '\n ' Text ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'TestInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text '// Integer types' Comment.Single '\n ' Text '// XXXbz add tests for throwing versions of all the integer stuff' Comment.Single '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'readonlyByte' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'writableByte' Name.Variable ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passByte' Name.Function '(' Punctuation 'byte' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'byte' Keyword.Type ' ' Text 'receiveByte' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalByte' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalByteBeforeRequired' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'arg1' Name.Variable ',' Punctuation ' ' Text 'byte' Keyword.Type ' ' Text 'arg2' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalByteWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '0' Literal.Number.Oct ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalByteWithDefaultBeforeRequired' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'arg1' Name.Variable ' ' Text '=' Punctuation ' ' Text '0' Literal.Number.Oct ',' Punctuation ' ' Text 'byte' Keyword.Type ' ' Text 'arg2' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableByte' Name.Function '(' Punctuation 'byte' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableByte' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'byte' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicByte' Name.Function '(' Punctuation 'byte' Keyword.Type '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'StoreInSlot' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'cachedByte' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'StoreInSlot' Name.Decorator ',' Punctuation ' ' Text 'Constant' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'cachedConstantByte' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'StoreInSlot' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ']' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'cachedWritableByte' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Affects' Name.Decorator '=' Punctuation 'Nothing' Name ']' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'sideEffectFreeByte' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Affects' Name.Decorator '=' Punctuation 'Nothing' Name ',' Punctuation ' ' Text 'DependsOn' Name.Decorator '=' Punctuation 'DOMState' Name ']' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'domDependentByte' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Affects' Name.Decorator '=' Punctuation 'Nothing' Name ',' Punctuation ' ' Text 'DependsOn' Name.Decorator '=' Punctuation 'Nothing' Name ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'constantByte' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'DependsOn' Name.Decorator '=' Punctuation 'DeviceState' Name ',' Punctuation ' ' Text 'Affects' Name.Decorator '=' Punctuation 'Nothing' Name ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'deviceStateDependentByte' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Affects' Name.Decorator '=' Punctuation 'Nothing' Name ']' Punctuation '\n ' Text 'byte' Keyword.Type ' ' Text 'returnByteSideEffectFree' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Affects' Name.Decorator '=' Punctuation 'Nothing' Name ',' Punctuation ' ' Text 'DependsOn' Name.Decorator '=' Punctuation 'DOMState' Name ']' Punctuation '\n ' Text 'byte' Keyword.Type ' ' Text 'returnDOMDependentByte' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Affects' Name.Decorator '=' Punctuation 'Nothing' Name ',' Punctuation ' ' Text 'DependsOn' Name.Decorator '=' Punctuation 'Nothing' Name ']' Punctuation '\n ' Text 'byte' Keyword.Type ' ' Text 'returnConstantByte' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'DependsOn' Name.Decorator '=' Punctuation 'DeviceState' Name ',' Punctuation ' ' Text 'Affects' Name.Decorator '=' Punctuation 'Nothing' Name ']' Punctuation '\n ' Text 'byte' Keyword.Type ' ' Text 'returnDeviceStateDependentByte' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '[' Punctuation 'UnsafeInPrerendering' Name.Decorator ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'unsafePrerenderMethod' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'UnsafeInPrerendering' Name.Decorator ']' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'unsafePrerenderWritable' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'UnsafeInPrerendering' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'unsafePrerenderReadonly' Name.Variable ';' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'short' Keyword.Type ' ' Text 'readonlyShort' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'short' Keyword.Type ' ' Text 'writableShort' Name.Variable ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passShort' Name.Function '(' Punctuation 'short' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'short' Keyword.Type ' ' Text 'receiveShort' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalShort' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'short' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalShortWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'short' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '5' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'readonlyLong' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'writableLong' Name.Variable ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passLong' Name.Function '(' Punctuation 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'receiveLong' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalLong' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalLongWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '7' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'long long' Keyword.Type ' ' Text 'readonlyLongLong' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'long long' Keyword.Type ' ' Text 'writableLongLong' Name.Variable ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passLongLong' Name.Function '(' Punctuation 'long long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'long long' Keyword.Type ' ' Text 'receiveLongLong' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalLongLong' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'long long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalLongLongWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'long long' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '-12' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'octet' Keyword.Type ' ' Text 'readonlyOctet' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'octet' Keyword.Type ' ' Text 'writableOctet' Name.Variable ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOctet' Name.Function '(' Punctuation 'octet' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'octet' Keyword.Type ' ' Text 'receiveOctet' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalOctet' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'octet' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalOctetWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'octet' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '19' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'unsigned short' Keyword.Type ' ' Text 'readonlyUnsignedShort' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'unsigned short' Keyword.Type ' ' Text 'writableUnsignedShort' Name.Variable ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnsignedShort' Name.Function '(' Punctuation 'unsigned short' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'unsigned short' Keyword.Type ' ' Text 'receiveUnsignedShort' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalUnsignedShort' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'unsigned short' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalUnsignedShortWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'unsigned short' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '2' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'unsigned long' Keyword.Type ' ' Text 'readonlyUnsignedLong' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'unsigned long' Keyword.Type ' ' Text 'writableUnsignedLong' Name.Variable ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnsignedLong' Name.Function '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'unsigned long' Keyword.Type ' ' Text 'receiveUnsignedLong' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalUnsignedLong' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'unsigned long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalUnsignedLongWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'unsigned long' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '6' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'unsigned long long' Keyword.Type ' ' Text 'readonlyUnsignedLongLong' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'unsigned long long' Keyword.Type ' ' Text 'writableUnsignedLongLong' Name.Variable ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnsignedLongLong' Name.Function '(' Punctuation 'unsigned long long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'unsigned long long' Keyword.Type ' ' Text 'receiveUnsignedLongLong' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalUnsignedLongLong' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'unsigned long long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalUnsignedLongLongWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'unsigned long long' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '17' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n\n ' Text 'attribute' Keyword ' ' Text 'float' Keyword.Type ' ' Text 'writableFloat' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'unrestricted float' Keyword.Type ' ' Text 'writableUnrestrictedFloat' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'float' Keyword.Type '?' Punctuation ' ' Text 'writableNullableFloat' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'unrestricted float' Keyword.Type '?' Punctuation ' ' Text 'writableNullableUnrestrictedFloat' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'double' Keyword.Type ' ' Text 'writableDouble' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'unrestricted double' Keyword.Type ' ' Text 'writableUnrestrictedDouble' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'double' Keyword.Type '?' Punctuation ' ' Text 'writableNullableDouble' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'unrestricted double' Keyword.Type '?' Punctuation ' ' Text 'writableNullableUnrestrictedDouble' Name.Variable ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passFloat' Name.Function '(' Punctuation 'float' Keyword.Type ' ' Text 'arg1' Name.Variable ',' Punctuation ' ' Text 'unrestricted float' Keyword.Type ' ' Text 'arg2' Name.Variable ',' Punctuation '\n ' Text 'float' Keyword.Type '?' Punctuation ' ' Text 'arg3' Name.Variable ',' Punctuation ' ' Text 'unrestricted float' Keyword.Type '?' Punctuation ' ' Text 'arg4' Name.Variable ',' Punctuation '\n ' Text 'double' Keyword.Type ' ' Text 'arg5' Name.Variable ',' Punctuation ' ' Text 'unrestricted double' Keyword.Type ' ' Text 'arg6' Name.Variable ',' Punctuation '\n ' Text 'double' Keyword.Type '?' Punctuation ' ' Text 'arg7' Name.Variable ',' Punctuation ' ' Text 'unrestricted double' Keyword.Type '?' Punctuation ' ' Text 'arg8' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'float' Keyword.Type '>' Punctuation ' ' Text 'arg9' Name.Variable ',' Punctuation ' ' Text 'sequence' Keyword.Type '<' Punctuation 'unrestricted float' Keyword.Type '>' Punctuation ' ' Text 'arg10' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'float' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg11' Name.Variable ',' Punctuation ' ' Text 'sequence' Keyword.Type '<' Punctuation 'unrestricted float' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg12' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'double' Keyword.Type '>' Punctuation ' ' Text 'arg13' Name.Variable ',' Punctuation ' ' Text 'sequence' Keyword.Type '<' Punctuation 'unrestricted double' Keyword.Type '>' Punctuation ' ' Text 'arg14' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'double' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg15' Name.Variable ',' Punctuation ' ' Text 'sequence' Keyword.Type '<' Punctuation 'unrestricted double' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg16' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'LenientFloat' Name.Decorator ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passLenientFloat' Name.Function '(' Punctuation 'float' Keyword.Type ' ' Text 'arg1' Name.Variable ',' Punctuation ' ' Text 'unrestricted float' Keyword.Type ' ' Text 'arg2' Name.Variable ',' Punctuation '\n ' Text 'float' Keyword.Type '?' Punctuation ' ' Text 'arg3' Name.Variable ',' Punctuation ' ' Text 'unrestricted float' Keyword.Type '?' Punctuation ' ' Text 'arg4' Name.Variable ',' Punctuation '\n ' Text 'double' Keyword.Type ' ' Text 'arg5' Name.Variable ',' Punctuation ' ' Text 'unrestricted double' Keyword.Type ' ' Text 'arg6' Name.Variable ',' Punctuation '\n ' Text 'double' Keyword.Type '?' Punctuation ' ' Text 'arg7' Name.Variable ',' Punctuation ' ' Text 'unrestricted double' Keyword.Type '?' Punctuation ' ' Text 'arg8' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'float' Keyword.Type '>' Punctuation ' ' Text 'arg9' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'unrestricted float' Keyword.Type '>' Punctuation ' ' Text 'arg10' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'float' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg11' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'unrestricted float' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg12' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'double' Keyword.Type '>' Punctuation ' ' Text 'arg13' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'unrestricted double' Keyword.Type '>' Punctuation ' ' Text 'arg14' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'double' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg15' Name.Variable ',' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'unrestricted double' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg16' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'LenientFloat' Name.Decorator ']' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'float' Keyword.Type ' ' Text 'lenientFloatAttr' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'LenientFloat' Name.Decorator ']' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'double' Keyword.Type ' ' Text 'lenientDoubleAttr' Name.Variable ';' Punctuation '\n\n ' Text 'void' Keyword.Type ' ' Text 'passUnrestricted' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'unrestricted float' Keyword.Type ' ' Text 'arg1' Name.Variable ' ' Text '=' Punctuation ' ' Text '0' Literal.Number.Oct ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'unrestricted float' Keyword.Type ' ' Text 'arg2' Name.Variable ' ' Text '=' Punctuation ' ' Text 'Infinity' Keyword.Constant ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'unrestricted float' Keyword.Type ' ' Text 'arg3' Name.Variable ' ' Text '=' Punctuation ' ' Text '-Infinity' Keyword.Constant ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'unrestricted float' Keyword.Type ' ' Text 'arg4' Name.Variable ' ' Text '=' Punctuation ' ' Text 'NaN' Keyword.Constant ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'unrestricted double' Keyword.Type ' ' Text 'arg5' Name.Variable ' ' Text '=' Punctuation ' ' Text '0' Literal.Number.Oct ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'unrestricted double' Keyword.Type ' ' Text 'arg6' Name.Variable ' ' Text '=' Punctuation ' ' Text 'Infinity' Keyword.Constant ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'unrestricted double' Keyword.Type ' ' Text 'arg7' Name.Variable ' ' Text '=' Punctuation ' ' Text '-Infinity' Keyword.Constant ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'unrestricted double' Keyword.Type ' ' Text 'arg8' Name.Variable ' ' Text '=' Punctuation ' ' Text 'NaN' Keyword.Constant ')' Punctuation ';' Punctuation '\n\n ' Text '// Castable interface types' Comment.Single '\n ' Text '// XXXbz add tests for throwing versions of all the castable interface stuff' Comment.Single '\n ' Text 'TestInterface' Name.Class ' ' Text 'receiveSelf' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'TestInterface' Name.Class '?' Punctuation ' ' Text 'receiveNullableSelf' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'TestInterface' Name.Class ' ' Text 'receiveWeakSelf' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'TestInterface' Name.Class '?' Punctuation ' ' Text 'receiveWeakNullableSelf' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSelf' Name.Function '(' Punctuation 'TestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableSelf' Name.Function '(' Punctuation 'TestInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'TestInterface' Name.Class ' ' Text 'nonNullSelf' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'TestInterface' Name.Class '?' Punctuation ' ' Text 'nullableSelf' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'TestInterface' Name.Class ' ' Text 'cachedSelf' Name.Variable ';' Punctuation '\n ' Text '// Optional arguments' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalSelf' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNonNullSelf' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalSelfWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n\n ' Text '// Non-wrapper-cache interface types' Comment.Single '\n ' Text '[' Punctuation 'NewObject' Name.Decorator ']' Punctuation '\n ' Text 'TestNonWrapperCacheInterface' Name.Class ' ' Text 'receiveNonWrapperCacheInterface' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'NewObject' Name.Decorator ']' Punctuation '\n ' Text 'TestNonWrapperCacheInterface' Name.Class '?' Punctuation ' ' Text 'receiveNullableNonWrapperCacheInterface' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'NewObject' Name.Decorator ']' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestNonWrapperCacheInterface' Name.Class '>' Punctuation ' ' Text 'receiveNonWrapperCacheInterfaceSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'NewObject' Name.Decorator ']' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestNonWrapperCacheInterface' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'receiveNullableNonWrapperCacheInterfaceSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'NewObject' Name.Decorator ']' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestNonWrapperCacheInterface' Name.Class '>' Punctuation '?' Punctuation ' ' Text 'receiveNonWrapperCacheInterfaceNullableSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'NewObject' Name.Decorator ']' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestNonWrapperCacheInterface' Name.Class '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'receiveNullableNonWrapperCacheInterfaceNullableSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// Non-castable interface types' Comment.Single '\n ' Text 'IndirectlyImplementedInterface' Name.Class ' ' Text 'receiveOther' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'IndirectlyImplementedInterface' Name.Class '?' Punctuation ' ' Text 'receiveNullableOther' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'IndirectlyImplementedInterface' Name.Class ' ' Text 'receiveWeakOther' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'IndirectlyImplementedInterface' Name.Class '?' Punctuation ' ' Text 'receiveWeakNullableOther' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOther' Name.Function '(' Punctuation 'IndirectlyImplementedInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableOther' Name.Function '(' Punctuation 'IndirectlyImplementedInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'IndirectlyImplementedInterface' Name.Class ' ' Text 'nonNullOther' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'IndirectlyImplementedInterface' Name.Class '?' Punctuation ' ' Text 'nullableOther' Name.Variable ';' Punctuation '\n ' Text '// Optional arguments' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalOther' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'IndirectlyImplementedInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNonNullOther' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'IndirectlyImplementedInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalOtherWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'IndirectlyImplementedInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n\n ' Text '// External interface types' Comment.Single '\n ' Text 'TestExternalInterface' Name.Class ' ' Text 'receiveExternal' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'TestExternalInterface' Name.Class '?' Punctuation ' ' Text 'receiveNullableExternal' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'TestExternalInterface' Name.Class ' ' Text 'receiveWeakExternal' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'TestExternalInterface' Name.Class '?' Punctuation ' ' Text 'receiveWeakNullableExternal' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passExternal' Name.Function '(' Punctuation 'TestExternalInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableExternal' Name.Function '(' Punctuation 'TestExternalInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'TestExternalInterface' Name.Class ' ' Text 'nonNullExternal' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'TestExternalInterface' Name.Class '?' Punctuation ' ' Text 'nullableExternal' Name.Variable ';' Punctuation '\n ' Text '// Optional arguments' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalExternal' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestExternalInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNonNullExternal' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestExternalInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalExternalWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestExternalInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n\n ' Text '// Callback interface types' Comment.Single '\n ' Text 'TestCallbackInterface' Name.Class ' ' Text 'receiveCallbackInterface' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'TestCallbackInterface' Name.Class '?' Punctuation ' ' Text 'receiveNullableCallbackInterface' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'TestCallbackInterface' Name.Class ' ' Text 'receiveWeakCallbackInterface' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'TestCallbackInterface' Name.Class '?' Punctuation ' ' Text 'receiveWeakNullableCallbackInterface' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passCallbackInterface' Name.Function '(' Punctuation 'TestCallbackInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableCallbackInterface' Name.Function '(' Punctuation 'TestCallbackInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'TestCallbackInterface' Name.Class ' ' Text 'nonNullCallbackInterface' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'TestCallbackInterface' Name.Class '?' Punctuation ' ' Text 'nullableCallbackInterface' Name.Variable ';' Punctuation '\n ' Text '// Optional arguments' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalCallbackInterface' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestCallbackInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNonNullCallbackInterface' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestCallbackInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalCallbackInterfaceWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestCallbackInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n\n ' Text '// Miscellaneous interface tests' Comment.Single '\n ' Text 'IndirectlyImplementedInterface' Name.Class ' ' Text 'receiveConsequentialInterface' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passConsequentialInterface' Name.Function '(' Punctuation 'IndirectlyImplementedInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text '// Sequence types' Comment.Single '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'readonlySequence' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'Dict' Name.Class '>' Punctuation ' ' Text 'readonlySequenceOfDictionaries' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'Dict' Name.Class '>' Punctuation '?' Punctuation ' ' Text 'readonlyNullableSequenceOfDictionaries' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ',' Punctuation ' ' Text 'Frozen' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'Dict' Name.Class '>' Punctuation ' ' Text 'readonlyFrozenSequence' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ',' Punctuation ' ' Text 'Frozen' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'Dict' Name.Class '>' Punctuation '?' Punctuation ' ' Text 'readonlyFrozenNullableSequence' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'receiveSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'receiveNullableSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'receiveSequenceOfNullableInts' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'receiveNullableSequenceOfNullableInts' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfNullableInts' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalSequenceOfNullableInts' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableSequenceOfNullableInts' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation ' ' Text 'receiveCastableObjectSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestCallbackInterface' Name.Class '>' Punctuation ' ' Text 'receiveCallbackObjectSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'receiveNullableCastableObjectSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestCallbackInterface' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'receiveNullableCallbackObjectSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation '?' Punctuation ' ' Text 'receiveCastableObjectNullableSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'receiveNullableCastableObjectNullableSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation ' ' Text 'receiveWeakCastableObjectSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'receiveWeakNullableCastableObjectSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation '?' Punctuation ' ' Text 'receiveWeakCastableObjectNullableSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'receiveWeakNullableCastableObjectNullableSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passCastableObjectSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableCastableObjectSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passCastableObjectNullableSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableCastableObjectNullableSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalSequence' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalSequenceWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '[]' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableSequence' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableSequenceWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableSequenceWithDefaultValue2' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '[]' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalObjectSequence' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passExternalInterfaceSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'TestExternalInterface' Name.Class '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableExternalInterfaceSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'TestExternalInterface' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text 'sequence' Keyword.Type '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ' ' Text 'receiveStringSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passStringSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text 'sequence' Keyword.Type '<' Punctuation 'ByteString' Keyword.Type '>' Punctuation ' ' Text 'receiveByteStringSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passByteStringSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'ByteString' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'receiveAnySequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'receiveNullableAnySequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '>' Punctuation ' ' Text 'receiveAnySequenceSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'receiveObjectSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'receiveNullableObjectSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfSequences' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfSequencesOfSequences' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '>' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '>' Punctuation ' ' Text 'receiveSequenceOfSequences' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '>' Punctuation '>' Punctuation ' ' Text 'receiveSequenceOfSequencesOfSequences' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// MozMap types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passMozMap' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableMozMap' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passMozMapOfNullableInts' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalMozMapOfNullableInts' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableMozMapOfNullableInts' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passCastableObjectMozMap' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'TestInterface' Name.Class '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableCastableObjectMozMap' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'TestInterface' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passCastableObjectNullableMozMap' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'TestInterface' Name.Class '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableCastableObjectNullableMozMap' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'TestInterface' Name.Class '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalMozMap' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableMozMap' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableMozMapWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalObjectMozMap' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'TestInterface' Name.Class '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passExternalInterfaceMozMap' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'TestExternalInterface' Name.Class '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableExternalInterfaceMozMap' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'TestExternalInterface' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passStringMozMap' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passByteStringMozMap' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'ByteString' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passMozMapOfMozMaps' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'receiveMozMap' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'receiveNullableMozMap' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'receiveMozMapOfNullableInts' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'receiveNullableMozMapOfNullableInts' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'MozMap' Name.Class '<' Punctuation 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation '>' Punctuation ' ' Text 'receiveMozMapOfMozMaps' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'receiveAnyMozMap' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// Typed array types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passArrayBuffer' Name.Function '(' Punctuation 'ArrayBuffer' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableArrayBuffer' Name.Function '(' Punctuation 'ArrayBuffer' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalArrayBuffer' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'ArrayBuffer' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableArrayBuffer' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'ArrayBuffer' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableArrayBufferWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'ArrayBuffer' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passArrayBufferView' Name.Function '(' Punctuation 'ArrayBufferView' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passInt8Array' Name.Function '(' Punctuation 'Int8Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passInt16Array' Name.Function '(' Punctuation 'Int16Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passInt32Array' Name.Function '(' Punctuation 'Int32Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUint8Array' Name.Function '(' Punctuation 'Uint8Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUint16Array' Name.Function '(' Punctuation 'Uint16Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUint32Array' Name.Function '(' Punctuation 'Uint32Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUint8ClampedArray' Name.Function '(' Punctuation 'Uint8ClampedArray' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passFloat32Array' Name.Function '(' Punctuation 'Float32Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passFloat64Array' Name.Function '(' Punctuation 'Float64Array' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfArrayBuffers' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'ArrayBuffer' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfNullableArrayBuffers' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'ArrayBuffer' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passMozMapOfArrayBuffers' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'ArrayBuffer' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passMozMapOfNullableArrayBuffers' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'ArrayBuffer' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicTypedArray' Name.Function '(' Punctuation 'Float32Array' Keyword.Type '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicNullableTypedArray' Name.Function '(' Punctuation 'Float32Array' Keyword.Type '?' Punctuation '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'Uint8Array' Keyword.Type ' ' Text 'receiveUint8Array' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'Uint8Array' Keyword.Type ' ' Text 'uint8ArrayAttr' Name.Variable ';' Punctuation '\n\n ' Text '// DOMString types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passString' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableString' Name.Function '(' Punctuation 'DOMString' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalString' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalStringWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '"abc"' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableString' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'DOMString' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableStringWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'DOMString' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicString' Name.Function '(' Punctuation 'DOMString' Keyword.Type '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'DOMString' Keyword.Type ' ' Text 'receiveString' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// ByteString types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passByteString' Name.Function '(' Punctuation 'ByteString' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableByteString' Name.Function '(' Punctuation 'ByteString' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalByteString' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'ByteString' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalByteStringWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'ByteString' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '"abc"' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableByteString' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'ByteString' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableByteStringWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'ByteString' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicByteString' Name.Function '(' Punctuation 'ByteString' Keyword.Type '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalUnionByteString' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'ByteString' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalUnionByteStringWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'ByteString' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '"abc"' Literal.String ')' Punctuation ';' Punctuation '\n\n ' Text '// USVString types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passUSVS' Name.Function '(' Punctuation 'USVString' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUSVS' Name.Function '(' Punctuation 'USVString' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalUSVS' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'USVString' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalUSVSWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'USVString' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '"abc"' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableUSVS' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'USVString' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableUSVSWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'USVString' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicUSVS' Name.Function '(' Punctuation 'USVString' Keyword.Type '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'USVString' Keyword.Type ' ' Text 'receiveUSVS' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// Enumerated types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passEnum' Name.Function '(' Punctuation 'TestEnum' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableEnum' Name.Function '(' Punctuation 'TestEnum' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalEnum' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestEnum' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passEnumWithDefault' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestEnum' Name.Class ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '"a"' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableEnum' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestEnum' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableEnumWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestEnum' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableEnumWithDefaultValue2' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestEnum' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '"a"' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'TestEnum' Name.Class ' ' Text 'receiveEnum' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'TestEnum' Name.Class '?' Punctuation ' ' Text 'receiveNullableEnum' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'TestEnum' Name.Class ' ' Text 'enumAttribute' Name.Variable ';' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'TestEnum' Name.Class ' ' Text 'readonlyEnumAttribute' Name.Variable ';' Punctuation '\n\n ' Text '// Callback types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passCallback' Name.Function '(' Punctuation 'TestCallback' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableCallback' Name.Function '(' Punctuation 'TestCallback' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalCallback' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestCallback' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableCallback' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestCallback' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableCallbackWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestCallback' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'TestCallback' Name.Class ' ' Text 'receiveCallback' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'TestCallback' Name.Class '?' Punctuation ' ' Text 'receiveNullableCallback' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableTreatAsNullCallback' Name.Function '(' Punctuation 'TestTreatAsNullCallback' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableTreatAsNullCallback' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestTreatAsNullCallback' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableTreatAsNullCallbackWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestTreatAsNullCallback' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'TestTreatAsNullCallback' Name.Class ' ' Text 'treatAsNullCallback' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'TestTreatAsNullCallback' Name.Class '?' Punctuation ' ' Text 'nullableTreatAsNullCallback' Name.Variable ';' Punctuation '\n\n ' Text '// Force code generation of the various test callbacks we have.' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'forceCallbackGeneration' Name.Function '(' Punctuation 'TestIntegerReturn' Name.Class ' ' Text 'arg1' Name.Variable ',' Punctuation '\n ' Text 'TestNullableIntegerReturn' Name.Class ' ' Text 'arg2' Name.Variable ',' Punctuation '\n ' Text 'TestBooleanReturn' Name.Class ' ' Text 'arg3' Name.Variable ',' Punctuation '\n ' Text 'TestFloatReturn' Name.Class ' ' Text 'arg4' Name.Variable ',' Punctuation '\n ' Text 'TestStringReturn' Name.Class ' ' Text 'arg5' Name.Variable ',' Punctuation '\n ' Text 'TestEnumReturn' Name.Class ' ' Text 'arg6' Name.Variable ',' Punctuation '\n ' Text 'TestInterfaceReturn' Name.Class ' ' Text 'arg7' Name.Variable ',' Punctuation '\n ' Text 'TestNullableInterfaceReturn' Name.Class ' ' Text 'arg8' Name.Variable ',' Punctuation '\n ' Text 'TestExternalInterfaceReturn' Name.Class ' ' Text 'arg9' Name.Variable ',' Punctuation '\n ' Text 'TestNullableExternalInterfaceReturn' Name.Class ' ' Text 'arg10' Name.Variable ',' Punctuation '\n ' Text 'TestCallbackInterfaceReturn' Name.Class ' ' Text 'arg11' Name.Variable ',' Punctuation '\n ' Text 'TestNullableCallbackInterfaceReturn' Name.Class ' ' Text 'arg12' Name.Variable ',' Punctuation '\n ' Text 'TestCallbackReturn' Name.Class ' ' Text 'arg13' Name.Variable ',' Punctuation '\n ' Text 'TestNullableCallbackReturn' Name.Class ' ' Text 'arg14' Name.Variable ',' Punctuation '\n ' Text 'TestObjectReturn' Name.Class ' ' Text 'arg15' Name.Variable ',' Punctuation '\n ' Text 'TestNullableObjectReturn' Name.Class ' ' Text 'arg16' Name.Variable ',' Punctuation '\n ' Text 'TestTypedArrayReturn' Name.Class ' ' Text 'arg17' Name.Variable ',' Punctuation '\n ' Text 'TestNullableTypedArrayReturn' Name.Class ' ' Text 'arg18' Name.Variable ',' Punctuation '\n ' Text 'TestSequenceReturn' Name.Class ' ' Text 'arg19' Name.Variable ',' Punctuation '\n ' Text 'TestNullableSequenceReturn' Name.Class ' ' Text 'arg20' Name.Variable ',' Punctuation '\n ' Text 'TestIntegerArguments' Name.Class ' ' Text 'arg21' Name.Variable ',' Punctuation '\n ' Text 'TestInterfaceArguments' Name.Class ' ' Text 'arg22' Name.Variable ',' Punctuation '\n ' Text 'TestStringEnumArguments' Name.Class ' ' Text 'arg23' Name.Variable ',' Punctuation '\n ' Text 'TestObjectArguments' Name.Class ' ' Text 'arg24' Name.Variable ',' Punctuation '\n ' Text 'TestOptionalArguments' Name.Class ' ' Text 'arg25' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text '// Any types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passAny' Name.Function '(' Punctuation 'any' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicAny' Name.Function '(' Punctuation 'any' Keyword.Type '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalAny' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'any' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passAnyDefaultNull' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'any' Keyword.Type ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfAny' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableSequenceOfAny' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalSequenceOfAny' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableSequenceOfAny' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalSequenceOfAnyWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfSequenceOfAny' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfNullableSequenceOfAny' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableSequenceOfNullableSequenceOfAny' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableSequenceOfNullableSequenceOfAny' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passMozMapOfAny' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableMozMapOfAny' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalMozMapOfAny' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableMozMapOfAny' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalMozMapOfAnyWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passMozMapOfMozMapOfAny' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passMozMapOfNullableMozMapOfAny' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableMozMapOfNullableMozMapOfAny' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableMozMapOfNullableMozMapOfAny' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableMozMapOfNullableSequenceOfAny' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableSequenceOfNullableMozMapOfAny' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'MozMap' Name.Class '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'any' Keyword.Type ' ' Text 'receiveAny' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// object types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passObject' Name.Function '(' Punctuation 'object' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicObject' Name.Function '(' Punctuation 'object' Keyword.Type '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableObject' Name.Function '(' Punctuation 'object' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicNullableObject' Name.Function '(' Punctuation 'object' Keyword.Type '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalObject' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'object' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableObject' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'object' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableObjectWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'object' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfObject' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfNullableObject' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableSequenceOfObject' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableSequenceOfNullableSequenceOfObject' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableSequenceOfNullableSequenceOfNullableObject' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '?' Punctuation '>' Punctuation '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passMozMapOfObject' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'object' Keyword.Type ' ' Text 'receiveObject' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'object' Keyword.Type '?' Punctuation ' ' Text 'receiveNullableObject' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// Union types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion' Name.Function '(' Punctuation '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text '// Some union tests are debug-only to avoid creating all those' Comment.Single '\n ' Text '// unused union types in opt builds.' Comment.Single '\n' Text '#ifdef DEBUG' Comment.Preproc '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion2' Name.Function '(' Punctuation '(' Punctuation 'long' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'boolean' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion3' Name.Function '(' Punctuation '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'boolean' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion4' Name.Function '(' Punctuation '(' Punctuation 'Node' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'boolean' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion5' Name.Function '(' Punctuation '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'boolean' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion6' Name.Function '(' Punctuation '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion7' Name.Function '(' Punctuation '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion8' Name.Function '(' Punctuation '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'boolean' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion9' Name.Function '(' Punctuation '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'boolean' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion10' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'EventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion11' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'CustomEventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion12' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'EventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '5' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion13' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type '?' Punctuation ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion14' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type '?' Punctuation ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '5' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion15' Name.Function '(' Punctuation '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion16' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion17' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '5' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion18' Name.Function '(' Punctuation '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion19' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion20' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '[]' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion21' Name.Function '(' Punctuation '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion22' Name.Function '(' Punctuation '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion23' Name.Function '(' Punctuation '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'ImageData' Name.Class '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion24' Name.Function '(' Punctuation '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'ImageData' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion25' Name.Function '(' Punctuation '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'ImageData' Name.Class '>' Punctuation '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion26' Name.Function '(' Punctuation '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'ImageData' Name.Class '?' Punctuation '>' Punctuation '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion27' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'EventInit' Name.Class ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnion28' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'EventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithCallback' Name.Function '(' Punctuation '(' Punctuation 'EventHandler' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithByteString' Name.Function '(' Punctuation '(' Punctuation 'ByteString' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithMozMap' Name.Function '(' Punctuation '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithMozMapAndSequence' Name.Function '(' Punctuation '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'sequence' Keyword.Type '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithSequenceAndMozMap' Name.Function '(' Punctuation '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'MozMap' Name.Class '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithUSVS' Name.Function '(' Punctuation '(' Punctuation 'USVString' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '#endif' Comment.Preproc '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithNullable' Name.Function '(' Punctuation '(' Punctuation 'object' Keyword.Type '?' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnion' Name.Function '(' Punctuation '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalUnion' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableUnion' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableUnionWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text '//void passUnionWithInterfaces((TestInterface or TestExternalInterface) arg);' Comment.Single '\n ' Text '//void passUnionWithInterfacesAndNullable((TestInterface? or TestExternalInterface) arg);' Comment.Single '\n ' Text '//void passUnionWithSequence((sequence or long) arg);' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithArrayBuffer' Name.Function '(' Punctuation '(' Punctuation 'ArrayBuffer' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithString' Name.Function '(' Punctuation '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'object' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text '// Using an enum in a union. Note that we use some enum not declared in our' Comment.Single '\n ' Text '// binding file, because UnionTypes.h will need to include the binding header' Comment.Single '\n ' Text "// for this enum. Pick an enum from an interface that won't drag in too much" Comment.Single '\n ' Text '// stuff.' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithEnum' Name.Function '(' Punctuation '(' Punctuation 'SupportedType' Name.Class ' ' Text 'or' Keyword ' ' Text 'object' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text "// Trying to use a callback in a union won't include the test" Comment.Single '\n ' Text "// headers, unfortunately, so won't compile." Comment.Single '\n ' Text '//void passUnionWithCallback((TestCallback or long) arg);' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithObject' Name.Function '(' Punctuation '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text '//void passUnionWithDict((Dict or long) arg);' Comment.Single '\n\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue1' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue2' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue3' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1.5' Literal.Number.Float ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue4' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue5' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue6' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1.5' Literal.Number.Float ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue7' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue8' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue9' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1.5' Literal.Number.Float ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue10' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'Infinity' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue11' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue12' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue13' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'Infinity' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue14' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'ByteString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue15' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'ByteString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue16' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'ByteString' Keyword.Type ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1.5' Literal.Number.Float ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue17' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'SupportedType' Name.Class ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '"text/html"' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue18' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'SupportedType' Name.Class ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passUnionWithDefaultValue19' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'SupportedType' Name.Class ')' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1.5' Literal.Number.Float ')' Punctuation ';' Punctuation '\n\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue1' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue2' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue3' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue4' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue5' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue6' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue7' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue8' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue9' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue10' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue11' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue12' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'unrestricted float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue13' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'ByteString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue14' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'ByteString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue15' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'ByteString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1.5' Literal.Number.Float ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue16' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'ByteString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue17' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'SupportedType' Name.Class ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '"text/html"' Literal.String ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue18' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'SupportedType' Name.Class ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue19' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'SupportedType' Name.Class ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text '1.5' Literal.Number.Float ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableUnionWithDefaultValue20' Name.Function '(' Punctuation 'optional' Keyword ' ' Text '(' Punctuation 'double' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'SupportedType' Name.Class ')' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfUnions' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation '(' Punctuation 'CanvasPattern' Name.Class ' ' Text 'or' Keyword ' ' Text 'CanvasGradient' Name.Class ')' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfUnions2' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicUnion' Name.Function '(' Punctuation '(' Punctuation 'CanvasPattern' Name.Class ' ' Text 'or' Keyword ' ' Text 'CanvasGradient' Name.Class ')' Punctuation '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfNullableUnions' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation '(' Punctuation 'CanvasPattern' Name.Class ' ' Text 'or' Keyword ' ' Text 'CanvasGradient' Name.Class ')' Punctuation '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicNullableUnion' Name.Function '(' Punctuation '(' Punctuation 'CanvasPattern' Name.Class ' ' Text 'or' Keyword ' ' Text 'CanvasGradient' Name.Class ')' Punctuation '?' Punctuation '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passMozMapOfUnions' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation '(' Punctuation 'CanvasPattern' Name.Class ' ' Text 'or' Keyword ' ' Text 'CanvasGradient' Name.Class ')' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text '// XXXbz no move constructor on some unions' Comment.Single '\n ' Text '// void passMozMapOfUnions2(MozMap<(object or long)> arg);' Comment.Single '\n\n ' Text '(' Punctuation 'CanvasPattern' Name.Class ' ' Text 'or' Keyword ' ' Text 'CanvasGradient' Name.Class ')' Punctuation ' ' Text 'receiveUnion' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'receiveUnion2' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '(' Punctuation 'CanvasPattern' Name.Class '?' Punctuation ' ' Text 'or' Keyword ' ' Text 'CanvasGradient' Name.Class ')' Punctuation ' ' Text 'receiveUnionContainingNull' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '(' Punctuation 'CanvasPattern' Name.Class ' ' Text 'or' Keyword ' ' Text 'CanvasGradient' Name.Class ')' Punctuation '?' Punctuation ' ' Text 'receiveNullableUnion' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'receiveNullableUnion2' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text 'attribute' Keyword ' ' Text '(' Punctuation 'CanvasPattern' Name.Class ' ' Text 'or' Keyword ' ' Text 'CanvasGradient' Name.Class ')' Punctuation ' ' Text 'writableUnion' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text '(' Punctuation 'CanvasPattern' Name.Class '?' Punctuation ' ' Text 'or' Keyword ' ' Text 'CanvasGradient' Name.Class ')' Punctuation ' ' Text 'writableUnionContainingNull' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text '(' Punctuation 'CanvasPattern' Name.Class ' ' Text 'or' Keyword ' ' Text 'CanvasGradient' Name.Class ')' Punctuation '?' Punctuation ' ' Text 'writableNullableUnion' Name.Variable ';' Punctuation '\n\n ' Text '// Date types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passDate' Name.Function '(' Punctuation 'Date' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableDate' Name.Function '(' Punctuation 'Date' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalDate' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'Date' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableDate' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'Date' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullableDateWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'Date' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passDateSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'Date' Name.Class '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullableDateSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'Date' Name.Class '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passDateMozMap' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'Date' Name.Class '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'Date' Name.Class ' ' Text 'receiveDate' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'Date' Name.Class '?' Punctuation ' ' Text 'receiveNullableDate' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// Promise types' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passPromise' Name.Function '(' Punctuation 'Promise' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullablePromise' Name.Function '(' Punctuation 'Promise' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalPromise' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'Promise' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullablePromise' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'Promise' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOptionalNullablePromiseWithDefaultValue' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'Promise' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'arg' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passPromiseSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'Promise' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passNullablePromiseSequence' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'Promise' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation '?' Punctuation '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'Promise' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'receivePromise' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'Promise' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'receiveAddrefedPromise' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// binaryNames tests' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'methodRenamedFrom' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'BinaryName' Name.Decorator '=' Punctuation '"otherMethodRenamedTo"' Literal.String ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'otherMethodRenamedFrom' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'methodRenamedFrom' Name.Function '(' Punctuation 'byte' Keyword.Type ' ' Text 'argument' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'attributeGetterRenamedFrom' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'attributeRenamedFrom' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'BinaryName' Name.Decorator '=' Punctuation '"otherAttributeRenamedTo"' Literal.String ']' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'otherAttributeRenamedFrom' Name.Variable ';' Punctuation '\n\n ' Text 'void' Keyword.Type ' ' Text 'passDictionary' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'Dict' Name.Class ' ' Text 'x' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passDictionary2' Name.Function '(' Punctuation 'Dict' Name.Class ' ' Text 'x' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'Dict' Name.Class ' ' Text 'readonlyDictionary' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'Dict' Name.Class '?' Punctuation ' ' Text 'readonlyNullableDictionary' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ']' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'Dict' Name.Class ' ' Text 'writableDictionary' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ',' Punctuation ' ' Text 'Frozen' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'Dict' Name.Class ' ' Text 'readonlyFrozenDictionary' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ',' Punctuation ' ' Text 'Frozen' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'Dict' Name.Class '?' Punctuation ' ' Text 'readonlyFrozenNullableDictionary' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Cached' Name.Decorator ',' Punctuation ' ' Text 'Pure' Name.Decorator ',' Punctuation ' ' Text 'Frozen' Name.Decorator ']' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'Dict' Name.Class ' ' Text 'writableFrozenDictionary' Name.Variable ';' Punctuation '\n ' Text 'Dict' Name.Class ' ' Text 'receiveDictionary' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'Dict' Name.Class '?' Punctuation ' ' Text 'receiveNullableDictionary' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passOtherDictionary' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'GrandparentDict' Name.Class ' ' Text 'x' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passSequenceOfDictionaries' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'Dict' Name.Class '>' Punctuation ' ' Text 'x' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passMozMapOfDictionaries' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'GrandparentDict' Name.Class '>' Punctuation ' ' Text 'x' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text '// No support for nullable dictionaries inside a sequence (nor should there be)' Comment.Single '\n ' Text '// void passSequenceOfNullableDictionaries(sequence x);' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passDictionaryOrLong' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'Dict' Name.Class ' ' Text 'x' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passDictionaryOrLong' Name.Function '(' Punctuation 'long' Keyword.Type ' ' Text 'x' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text 'void' Keyword.Type ' ' Text 'passDictContainingDict' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'DictContainingDict' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passDictContainingSequence' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'DictContainingSequence' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'DictContainingSequence' Name.Class ' ' Text 'receiveDictContainingSequence' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicDictionary' Name.Function '(' Punctuation 'Dict' Name.Class '...' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text '// EnforceRange/Clamp tests' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'dontEnforceRangeOrClamp' Name.Function '(' Punctuation 'byte' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'doEnforceRange' Name.Function '(' Punctuation '[' Punctuation 'EnforceRange' Name.Decorator ']' Punctuation ' ' Text 'byte' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'doClamp' Name.Function '(' Punctuation '[' Punctuation 'Clamp' Name.Decorator ']' Punctuation ' ' Text 'byte' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'EnforceRange' Name.Decorator ']' Punctuation ' ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'enforcedByte' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Clamp' Name.Decorator ']' Punctuation ' ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'clampedByte' Name.Variable ';' Punctuation '\n\n ' Text '// Typedefs' Comment.Single '\n ' Text 'const' Keyword ' ' Text 'myLong' Name.Class ' ' Text 'myLongConstant' Name.Constant ' ' Text '=' Punctuation ' ' Text '5' Literal.Number.Integer ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'exerciseTypedefInterfaces1' Name.Function '(' Punctuation 'AnotherNameForTestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'AnotherNameForTestInterface' Name.Class ' ' Text 'exerciseTypedefInterfaces2' Name.Function '(' Punctuation 'NullableTestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'exerciseTypedefInterfaces3' Name.Function '(' Punctuation 'YetAnotherNameForTestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text '// Deprecated methods and attributes' Comment.Single '\n ' Text '[' Punctuation 'Deprecated' Name.Decorator '=' Punctuation '"GetAttributeNode"' Literal.String ']' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'deprecatedAttribute' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Deprecated' Name.Decorator '=' Punctuation '"GetAttributeNode"' Literal.String ']' Punctuation '\n ' Text 'byte' Keyword.Type ' ' Text 'deprecatedMethod' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Deprecated' Name.Decorator '=' Punctuation '"GetAttributeNode"' Literal.String ']' Punctuation '\n ' Text 'byte' Keyword.Type ' ' Text 'deprecatedMethodWithContext' Name.Function '(' Punctuation 'any' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text '// Static methods and attributes' Comment.Single '\n ' Text 'static' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'staticAttribute' Name.Variable ';' Punctuation '\n ' Text 'static' Keyword ' ' Text 'void' Keyword.Type ' ' Text 'staticMethod' Name.Function '(' Punctuation 'boolean' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'static' Keyword ' ' Text 'void' Keyword.Type ' ' Text 'staticMethodWithContext' Name.Function '(' Punctuation 'any' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text '// Testing static method with a reserved C++ keyword as the name' Comment.Single '\n ' Text 'static' Keyword ' ' Text 'void' Keyword.Type ' ' Text 'assert' Name.Function '(' Punctuation 'boolean' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text '// Deprecated static methods and attributes' Comment.Single '\n ' Text '[' Punctuation 'Deprecated' Name.Decorator '=' Punctuation '"GetAttributeNode"' Literal.String ']' Punctuation '\n ' Text 'static' Keyword ' ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'staticDeprecatedAttribute' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Deprecated' Name.Decorator '=' Punctuation '"GetAttributeNode"' Literal.String ']' Punctuation '\n ' Text 'static' Keyword ' ' Text 'void' Keyword.Type ' ' Text 'staticDeprecatedMethod' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Deprecated' Name.Decorator '=' Punctuation '"GetAttributeNode"' Literal.String ']' Punctuation '\n ' Text 'static' Keyword ' ' Text 'void' Keyword.Type ' ' Text 'staticDeprecatedMethodWithContext' Name.Function '(' Punctuation 'any' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text '// Overload resolution tests' Comment.Single '\n ' Text '//void overload1(DOMString... strs);' Comment.Single '\n ' Text 'boolean' Keyword.Type ' ' Text 'overload1' Name.Function '(' Punctuation 'TestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'TestInterface' Name.Class ' ' Text 'overload1' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'strs' Name.Variable ',' Punctuation ' ' Text 'TestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload2' Name.Function '(' Punctuation 'TestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload2' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'Dict' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload2' Name.Function '(' Punctuation 'boolean' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload2' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload2' Name.Function '(' Punctuation 'Date' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload3' Name.Function '(' Punctuation 'TestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload3' Name.Function '(' Punctuation 'TestCallback' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload3' Name.Function '(' Punctuation 'boolean' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload4' Name.Function '(' Punctuation 'TestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload4' Name.Function '(' Punctuation 'TestCallbackInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload4' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload5' Name.Function '(' Punctuation 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload5' Name.Function '(' Punctuation 'TestEnum' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload6' Name.Function '(' Punctuation 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload6' Name.Function '(' Punctuation 'boolean' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload7' Name.Function '(' Punctuation 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload7' Name.Function '(' Punctuation 'boolean' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload7' Name.Function '(' Punctuation 'ByteString' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload8' Name.Function '(' Punctuation 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload8' Name.Function '(' Punctuation 'TestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload9' Name.Function '(' Punctuation 'long' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload9' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload10' Name.Function '(' Punctuation 'long' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload10' Name.Function '(' Punctuation 'object' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload11' Name.Function '(' Punctuation 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload11' Name.Function '(' Punctuation 'DOMString' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload12' Name.Function '(' Punctuation 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload12' Name.Function '(' Punctuation 'boolean' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload13' Name.Function '(' Punctuation 'long' Keyword.Type '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload13' Name.Function '(' Punctuation 'boolean' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload14' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload14' Name.Function '(' Punctuation 'TestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload15' Name.Function '(' Punctuation 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload15' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload16' Name.Function '(' Punctuation 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload16' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'TestInterface' Name.Class '?' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload17' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload17' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload18' Name.Function '(' Punctuation 'MozMap' Name.Class '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload18' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'DOMString' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload19' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload19' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'Dict' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload20' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'Dict' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'overload20' Name.Function '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text '// Variadic handling' Comment.Single '\n ' Text 'void' Keyword.Type ' ' Text 'passVariadicThirdArg' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'arg1' Name.Variable ',' Punctuation ' ' Text 'long' Keyword.Type ' ' Text 'arg2' Name.Variable ',' Punctuation ' ' Text 'TestInterface' Name.Class '...' Punctuation ' ' Text 'arg3' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text '// Conditionally exposed methods/attributes' Comment.Single '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable1' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable2' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"ghi.jkl"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable3' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"ghi.jkl"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable4' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable5' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"nsGenericHTMLElement::TouchEventsEnabled"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable6' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"nsGenericHTMLElement::TouchEventsEnabled"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable7' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"ghi.jkl"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"nsGenericHTMLElement::TouchEventsEnabled"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable8' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"nsGenericHTMLElement::TouchEventsEnabled"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable9' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'prefable10' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"nsGenericHTMLElement::TouchEventsEnabled"' Literal.String ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'prefable11' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"TestFuncControlledMember"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable12' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"nsGenericHTMLElement::TouchEventsEnabled"' Literal.String ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'prefable13' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"TestFuncControlledMember"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable14' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Func' Name.Decorator '=' Punctuation '"TestFuncControlledMember"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable15' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Func' Name.Decorator '=' Punctuation '"TestFuncControlledMember"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'prefable16' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"TestFuncControlledMember"' Literal.String ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'prefable17' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Func' Name.Decorator '=' Punctuation '"TestFuncControlledMember"' Literal.String ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'prefable18' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Func' Name.Decorator '=' Punctuation '"TestFuncControlledMember"' Literal.String ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'prefable19' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"TestFuncControlledMember"' Literal.String ',' Punctuation ' ' Text 'ChromeOnly' Name.Decorator ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'prefable20' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// Conditionally exposed methods/attributes involving [SecureContext]' Comment.Single '\n ' Text '[' Punctuation 'SecureContext' Name.Decorator ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'conditionalOnSecureContext1' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'SecureContext' Name.Decorator ',' Punctuation ' ' Text 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'conditionalOnSecureContext2' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'SecureContext' Name.Decorator ',' Punctuation ' ' Text 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"nsGenericHTMLElement::TouchEventsEnabled"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'conditionalOnSecureContext3' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'SecureContext' Name.Decorator ',' Punctuation ' ' Text 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"TestFuncControlledMember"' Literal.String ']' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'conditionalOnSecureContext4' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'SecureContext' Name.Decorator ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'conditionalOnSecureContext5' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'SecureContext' Name.Decorator ',' Punctuation ' ' Text 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'conditionalOnSecureContext6' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'SecureContext' Name.Decorator ',' Punctuation ' ' Text 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"nsGenericHTMLElement::TouchEventsEnabled"' Literal.String ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'conditionalOnSecureContext7' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'SecureContext' Name.Decorator ',' Punctuation ' ' Text 'Pref' Name.Decorator '=' Punctuation '"abc.def"' Literal.String ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"TestFuncControlledMember"' Literal.String ']' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'conditionalOnSecureContext8' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// Miscellania' Comment.Single '\n ' Text '[' Punctuation 'LenientThis' Name.Decorator ']' Punctuation ' ' Text 'attribute' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'attrWithLenientThis' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Unforgeable' Name.Decorator ']' Punctuation ' ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'unforgeableAttr' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Unforgeable' Name.Decorator ',' Punctuation ' ' Text 'ChromeOnly' Name.Decorator ']' Punctuation ' ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'unforgeableAttr2' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Unforgeable' Name.Decorator ']' Punctuation ' ' Text 'long' Keyword.Type ' ' Text 'unforgeableMethod' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Unforgeable' Name.Decorator ',' Punctuation ' ' Text 'ChromeOnly' Name.Decorator ']' Punctuation ' ' Text 'long' Keyword.Type ' ' Text 'unforgeableMethod2' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'stringifier' Keyword ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passRenamedInterface' Name.Function '(' Punctuation 'TestRenamedInterface' Name.Class ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'PutForwards' Name.Decorator '=' Punctuation 'writableByte' Name ']' Punctuation ' ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'TestInterface' Name.Class ' ' Text 'putForwardsAttr' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'PutForwards' Name.Decorator '=' Punctuation 'writableByte' Name ',' Punctuation ' ' Text 'LenientThis' Name.Decorator ']' Punctuation ' ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'TestInterface' Name.Class ' ' Text 'putForwardsAttr2' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'PutForwards' Name.Decorator '=' Punctuation 'writableByte' Name ',' Punctuation ' ' Text 'ChromeOnly' Name.Decorator ']' Punctuation ' ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'TestInterface' Name.Class ' ' Text 'putForwardsAttr3' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Throws' Name.Decorator ']' Punctuation ' ' Text 'void' Keyword.Type ' ' Text 'throwingMethod' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text '[' Punctuation 'Throws' Name.Decorator ']' Punctuation ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'throwingAttr' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'GetterThrows' Name.Decorator ']' Punctuation ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'throwingGetterAttr' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'SetterThrows' Name.Decorator ']' Punctuation ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'throwingSetterAttr' Name.Variable ';' Punctuation '\n ' Text 'legacycaller' Keyword ' ' Text 'short' Keyword.Type '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'arg1' Name.Variable ',' Punctuation ' ' Text 'TestInterface' Name.Class ' ' Text 'arg2' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'passArgsWithDefaults' Name.Function '(' Punctuation 'optional' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'arg1' Name.Variable ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'TestInterface' Name.Class '?' Punctuation ' ' Text 'arg2' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'Dict' Name.Class ' ' Text 'arg3' Name.Variable ',' Punctuation ' ' Text 'optional' Keyword ' ' Text 'double' Keyword.Type ' ' Text 'arg4' Name.Variable ' ' Text '=' Punctuation ' ' Text '5.0' Literal.Number.Float ',' Punctuation '\n ' Text 'optional' Keyword ' ' Text 'float' Keyword.Type ' ' Text 'arg5' Name.Variable ')' Punctuation ';' Punctuation '\n\n ' Text 'attribute' Keyword ' ' Text 'any' Keyword.Type ' ' Text 'jsonifierShouldSkipThis' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'TestParentInterface' Name.Class ' ' Text 'jsonifierShouldSkipThis2' Name.Variable ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'TestCallbackInterface' Name.Class ' ' Text 'jsonifierShouldSkipThis3' Name.Variable ';' Punctuation '\n ' Text 'jsonifier' Keyword ';' Punctuation '\n\n ' Text 'attribute' Keyword ' ' Text 'byte' Keyword.Type ' ' Text 'dashed-attribute' Name.Variable ';' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'dashed-method' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n\n ' Text '// If you add things here, add them to TestExampleGen and TestJSImplGen as well' Comment.Single '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestParentInterface' Name.Class ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestChildInterface' Name.Class ' ' Text ':' Punctuation ' ' Text 'TestParentInterface' Name.Class ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestNonWrapperCacheInterface' Name.Class ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text '[' Punctuation 'NoInterfaceObject' Name.Decorator ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'ImplementedInterfaceParent' Name.Class ' ' Text '{' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'implementedParentMethod' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'implementedParentProperty' Name.Variable ';' Punctuation '\n\n ' Text 'const' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'implementedParentConstant' Name.Constant ' ' Text '=' Punctuation ' ' Text '8' Literal.Number.Integer ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'ImplementedInterfaceParent' Name.Class ' ' Text 'implements' Keyword ' ' Text 'IndirectlyImplementedInterface' Name.Class ';' Punctuation '\n\n' Text '[' Punctuation 'NoInterfaceObject' Name.Decorator ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'IndirectlyImplementedInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'indirectlyImplementedMethod' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'indirectlyImplementedProperty' Name.Variable ';' Punctuation '\n\n ' Text 'const' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'indirectlyImplementedConstant' Name.Constant ' ' Text '=' Punctuation ' ' Text '9' Literal.Number.Integer ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text '[' Punctuation 'NoInterfaceObject' Name.Decorator ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'ImplementedInterface' Name.Class ' ' Text ':' Punctuation ' ' Text 'ImplementedInterfaceParent' Name.Class ' ' Text '{' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'implementedMethod' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'implementedProperty' Name.Variable ';' Punctuation '\n\n ' Text 'const' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'implementedConstant' Name.Constant ' ' Text '=' Punctuation ' ' Text '5' Literal.Number.Integer ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text '[' Punctuation 'NoInterfaceObject' Name.Decorator ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'DiamondImplements' Name.Class ' ' Text '{' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'diamondImplementedProperty' Name.Variable ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n' Text '[' Punctuation 'NoInterfaceObject' Name.Decorator ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'DiamondBranch1A' Name.Class ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n' Text '[' Punctuation 'NoInterfaceObject' Name.Decorator ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'DiamondBranch1B' Name.Class ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n' Text '[' Punctuation 'NoInterfaceObject' Name.Decorator ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'DiamondBranch2A' Name.Class ' ' Text ':' Punctuation ' ' Text 'DiamondImplements' Name.Class ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n' Text '[' Punctuation 'NoInterfaceObject' Name.Decorator ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'DiamondBranch2B' Name.Class ' ' Text ':' Punctuation ' ' Text 'DiamondImplements' Name.Class ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n' Text 'TestInterface' Name.Class ' ' Text 'implements' Keyword ' ' Text 'DiamondBranch1A' Name.Class ';' Punctuation '\n' Text 'TestInterface' Name.Class ' ' Text 'implements' Keyword ' ' Text 'DiamondBranch1B' Name.Class ';' Punctuation '\n' Text 'TestInterface' Name.Class ' ' Text 'implements' Keyword ' ' Text 'DiamondBranch2A' Name.Class ';' Punctuation '\n' Text 'TestInterface' Name.Class ' ' Text 'implements' Keyword ' ' Text 'DiamondBranch2B' Name.Class ';' Punctuation '\n' Text 'DiamondBranch1A' Name.Class ' ' Text 'implements' Keyword ' ' Text 'DiamondImplements' Name.Class ';' Punctuation '\n' Text 'DiamondBranch1B' Name.Class ' ' Text 'implements' Keyword ' ' Text 'DiamondImplements' Name.Class ';' Punctuation '\n\n' Text 'dictionary' Keyword ' ' Text 'Dict' Name.Class ' ' Text ':' Punctuation ' ' Text 'ParentDict' Name.Class ' ' Text '{' Punctuation '\n ' Text 'TestEnum' Name.Class ' ' Text 'someEnum' Name.Variable ';' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'x' Name.Variable ';' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'a' Name.Variable ';' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'b' Name.Variable ' ' Text '=' Punctuation ' ' Text '8' Literal.Number.Integer ';' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'z' Name.Variable ' ' Text '=' Punctuation ' ' Text '9' Literal.Number.Integer ';' Punctuation '\n ' Text '[' Punctuation 'EnforceRange' Name.Decorator ']' Punctuation ' ' Text 'unsigned long' Keyword.Type ' ' Text 'enforcedUnsignedLong' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Clamp' Name.Decorator ']' Punctuation ' ' Text 'unsigned long' Keyword.Type ' ' Text 'clampedUnsignedLong' Name.Variable ';' Punctuation '\n ' Text 'DOMString' Keyword.Type ' ' Text 'str' Name.Variable ';' Punctuation '\n ' Text 'DOMString' Keyword.Type ' ' Text 'empty' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ';' Punctuation '\n ' Text 'TestEnum' Name.Class ' ' Text 'otherEnum' Name.Variable ' ' Text '=' Punctuation ' ' Text '"b"' Literal.String ';' Punctuation '\n ' Text 'DOMString' Keyword.Type ' ' Text 'otherStr' Name.Variable ' ' Text '=' Punctuation ' ' Text '"def"' Literal.String ';' Punctuation '\n ' Text 'DOMString' Keyword.Type '?' Punctuation ' ' Text 'yetAnotherStr' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text 'DOMString' Keyword.Type ' ' Text 'template' Name.Variable ';' Punctuation '\n ' Text 'ByteString' Keyword.Type ' ' Text 'byteStr' Name.Variable ';' Punctuation '\n ' Text 'ByteString' Keyword.Type ' ' Text 'emptyByteStr' Name.Variable ' ' Text '=' Punctuation ' ' Text '""' Literal.String ';' Punctuation '\n ' Text 'ByteString' Keyword.Type ' ' Text 'otherByteStr' Name.Variable ' ' Text '=' Punctuation ' ' Text '"def"' Literal.String ';' Punctuation '\n ' Text 'object' Keyword.Type ' ' Text 'someObj' Name.Variable ';' Punctuation '\n ' Text 'boolean' Keyword.Type ' ' Text 'prototype' Name.Variable ';' Punctuation '\n ' Text 'object' Keyword.Type '?' Punctuation ' ' Text 'anotherObj' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text 'TestCallback' Name.Class '?' Punctuation ' ' Text 'someCallback' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text 'any' Keyword.Type ' ' Text 'someAny' Name.Variable ';' Punctuation '\n ' Text 'any' Keyword.Type ' ' Text 'anotherAny' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n\n ' Text 'unrestricted float' Keyword.Type ' ' Text 'urFloat' Name.Variable ' ' Text '=' Punctuation ' ' Text '0' Literal.Number.Oct ';' Punctuation '\n ' Text 'unrestricted float' Keyword.Type ' ' Text 'urFloat2' Name.Variable ' ' Text '=' Punctuation ' ' Text '1.1' Literal.Number.Float ';' Punctuation '\n ' Text 'unrestricted float' Keyword.Type ' ' Text 'urFloat3' Name.Variable ' ' Text '=' Punctuation ' ' Text '-1.1' Literal.Number.Float ';' Punctuation '\n ' Text 'unrestricted float' Keyword.Type '?' Punctuation ' ' Text 'urFloat4' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text 'unrestricted float' Keyword.Type ' ' Text 'infUrFloat' Name.Variable ' ' Text '=' Punctuation ' ' Text 'Infinity' Keyword.Constant ';' Punctuation '\n ' Text 'unrestricted float' Keyword.Type ' ' Text 'negativeInfUrFloat' Name.Variable ' ' Text '=' Punctuation ' ' Text '-Infinity' Keyword.Constant ';' Punctuation '\n ' Text 'unrestricted float' Keyword.Type ' ' Text 'nanUrFloat' Name.Variable ' ' Text '=' Punctuation ' ' Text 'NaN' Keyword.Constant ';' Punctuation '\n\n ' Text 'unrestricted double' Keyword.Type ' ' Text 'urDouble' Name.Variable ' ' Text '=' Punctuation ' ' Text '0' Literal.Number.Oct ';' Punctuation '\n ' Text 'unrestricted double' Keyword.Type ' ' Text 'urDouble2' Name.Variable ' ' Text '=' Punctuation ' ' Text '1.1' Literal.Number.Float ';' Punctuation '\n ' Text 'unrestricted double' Keyword.Type ' ' Text 'urDouble3' Name.Variable ' ' Text '=' Punctuation ' ' Text '-1.1' Literal.Number.Float ';' Punctuation '\n ' Text 'unrestricted double' Keyword.Type '?' Punctuation ' ' Text 'urDouble4' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text 'unrestricted double' Keyword.Type ' ' Text 'infUrDouble' Name.Variable ' ' Text '=' Punctuation ' ' Text 'Infinity' Keyword.Constant ';' Punctuation '\n ' Text 'unrestricted double' Keyword.Type ' ' Text 'negativeInfUrDouble' Name.Variable ' ' Text '=' Punctuation ' ' Text '-Infinity' Keyword.Constant ';' Punctuation '\n ' Text 'unrestricted double' Keyword.Type ' ' Text 'nanUrDouble' Name.Variable ' ' Text '=' Punctuation ' ' Text 'NaN' Keyword.Constant ';' Punctuation '\n\n ' Text '(' Punctuation 'float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation ' ' Text 'floatOrString' Name.Variable ' ' Text '=' Punctuation ' ' Text '"str"' Literal.String ';' Punctuation '\n ' Text '(' Punctuation 'float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'nullableFloatOrString' Name.Variable ' ' Text '=' Punctuation ' ' Text '"str"' Literal.String ';' Punctuation '\n ' Text '(' Punctuation 'object' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'objectOrLong' Name.Variable ';' Punctuation '\n' Text '#ifdef DEBUG' Comment.Preproc '\n ' Text '(' Punctuation 'EventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'eventInitOrLong' Name.Variable ';' Punctuation '\n ' Text '(' Punctuation 'EventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'nullableEventInitOrLong' Name.Variable ';' Punctuation '\n ' Text '(' Punctuation 'HTMLElement' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'nullableHTMLElementOrLong' Name.Variable ';' Punctuation '\n ' Text '// CustomEventInit is useful to test because it needs rooting.' Comment.Single '\n ' Text '(' Punctuation 'CustomEventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'eventInitOrLong2' Name.Variable ';' Punctuation '\n ' Text '(' Punctuation 'CustomEventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'nullableEventInitOrLong2' Name.Variable ';' Punctuation '\n ' Text '(' Punctuation 'EventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'eventInitOrLongWithDefaultValue' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text '(' Punctuation 'CustomEventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'eventInitOrLongWithDefaultValue2' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text '(' Punctuation 'EventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'eventInitOrLongWithDefaultValue3' Name.Variable ' ' Text '=' Punctuation ' ' Text '5' Literal.Number.Integer ';' Punctuation '\n ' Text '(' Punctuation 'CustomEventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'eventInitOrLongWithDefaultValue4' Name.Variable ' ' Text '=' Punctuation ' ' Text '5' Literal.Number.Integer ';' Punctuation '\n ' Text '(' Punctuation 'EventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'nullableEventInitOrLongWithDefaultValue' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text '(' Punctuation 'CustomEventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'nullableEventInitOrLongWithDefaultValue2' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text '(' Punctuation 'EventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'nullableEventInitOrLongWithDefaultValue3' Name.Variable ' ' Text '=' Punctuation ' ' Text '5' Literal.Number.Integer ';' Punctuation '\n ' Text '(' Punctuation 'CustomEventInit' Name.Class ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'nullableEventInitOrLongWithDefaultValue4' Name.Variable ' ' Text '=' Punctuation ' ' Text '5' Literal.Number.Integer ';' Punctuation '\n ' Text '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'objectSequenceOrLong' Name.Variable ';' Punctuation '\n ' Text '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'objectSequenceOrLongWithDefaultValue1' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n ' Text '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation ' ' Text 'objectSequenceOrLongWithDefaultValue2' Name.Variable ' ' Text '=' Punctuation ' ' Text '[]' Punctuation ';' Punctuation '\n ' Text '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'nullableObjectSequenceOrLong' Name.Variable ';' Punctuation '\n ' Text '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'nullableObjectSequenceOrLongWithDefaultValue1' Name.Variable ' ' Text '=' Punctuation ' ' Text '1' Literal.Number.Integer ';' Punctuation '\n ' Text '(' Punctuation 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'or' Keyword ' ' Text 'long' Keyword.Type ')' Punctuation '?' Punctuation ' ' Text 'nullableObjectSequenceOrLongWithDefaultValue2' Name.Variable ' ' Text '=' Punctuation ' ' Text '[]' Punctuation ';' Punctuation '\n' Text '#endif' Comment.Preproc '\n\n ' Text 'ArrayBuffer' Keyword.Type ' ' Text 'arrayBuffer' Name.Variable ';' Punctuation '\n ' Text 'ArrayBuffer' Keyword.Type '?' Punctuation ' ' Text 'nullableArrayBuffer' Name.Variable ';' Punctuation '\n ' Text 'Uint8Array' Keyword.Type ' ' Text 'uint8Array' Name.Variable ';' Punctuation '\n ' Text 'Float64Array' Keyword.Type '?' Punctuation ' ' Text 'float64Array' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'seq1' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'seq2' Name.Variable ' ' Text '=' Punctuation ' ' Text '[]' Punctuation ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'seq3' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'seq4' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'seq5' Name.Variable ' ' Text '=' Punctuation ' ' Text '[]' Punctuation ';' Punctuation '\n\n ' Text 'long' Keyword.Type ' ' Text 'dashed-name' Name.Variable ';' Punctuation '\n\n ' Text 'required' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'requiredLong' Name.Variable ';' Punctuation '\n ' Text 'required' Keyword ' ' Text 'object' Keyword.Type ' ' Text 'requiredObject' Name.Variable ';' Punctuation '\n\n ' Text 'CustomEventInit' Name.Class ' ' Text 'customEventInit' Name.Variable ';' Punctuation '\n ' Text 'TestDictionaryTypedef' Name.Class ' ' Text 'dictionaryTypedef' Name.Variable ';' Punctuation '\n\n ' Text 'Promise' Keyword.Type '<' Punctuation 'void' Keyword.Type '>' Punctuation ' ' Text 'promise' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'Promise' Keyword.Type '<' Punctuation 'void' Keyword.Type '>' Punctuation '>' Punctuation ' ' Text 'promiseSequence' Name.Variable ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'dictionary' Keyword ' ' Text 'ParentDict' Name.Class ' ' Text ':' Punctuation ' ' Text 'GrandparentDict' Name.Class ' ' Text '{' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'c' Name.Variable ' ' Text '=' Punctuation ' ' Text '5' Literal.Number.Integer ';' Punctuation '\n ' Text 'TestInterface' Name.Class ' ' Text 'someInterface' Name.Variable ';' Punctuation '\n ' Text 'TestInterface' Name.Class '?' Punctuation ' ' Text 'someNullableInterface' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text 'TestExternalInterface' Name.Class ' ' Text 'someExternalInterface' Name.Variable ';' Punctuation '\n ' Text 'any' Keyword.Type ' ' Text 'parentAny' Name.Variable ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'dictionary' Keyword ' ' Text 'DictContainingDict' Name.Class ' ' Text '{' Punctuation '\n ' Text 'Dict' Name.Class ' ' Text 'memberDict' Name.Variable ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'dictionary' Keyword ' ' Text 'DictContainingSequence' Name.Class ' ' Text '{' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'long' Keyword.Type '>' Punctuation ' ' Text 'ourSequence' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'TestInterface' Name.Class '>' Punctuation ' ' Text 'ourSequence2' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'ourSequence3' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation ' ' Text 'ourSequence4' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '?' Punctuation '>' Punctuation ' ' Text 'ourSequence5' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'ourSequence6' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'ourSequence7' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '>' Punctuation '?' Punctuation ' ' Text 'ourSequence8' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'object' Keyword.Type '?' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'ourSequence9' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation '(' Punctuation 'float' Keyword.Type ' ' Text 'or' Keyword ' ' Text 'DOMString' Keyword.Type ')' Punctuation '>' Punctuation ' ' Text 'ourSequence10' Name.Variable ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'dictionary' Keyword ' ' Text 'DictForConstructor' Name.Class ' ' Text '{' Punctuation '\n ' Text 'Dict' Name.Class ' ' Text 'dict' Name.Variable ';' Punctuation '\n ' Text 'DictContainingDict' Name.Class ' ' Text 'dict2' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'Dict' Name.Class '>' Punctuation ' ' Text 'seq1' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'Dict' Name.Class '>' Punctuation '>' Punctuation '?' Punctuation ' ' Text 'seq2' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'sequence' Keyword.Type '<' Punctuation 'Dict' Name.Class '>' Punctuation '?' Punctuation '>' Punctuation ' ' Text 'seq3' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'seq4' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'any' Keyword.Type '>' Punctuation ' ' Text 'seq5' Name.Variable ';' Punctuation '\n ' Text 'sequence' Keyword.Type '<' Punctuation 'DictContainingSequence' Name.Class '>' Punctuation ' ' Text 'seq6' Name.Variable ';' Punctuation '\n ' Text 'object' Keyword.Type ' ' Text 'obj1' Name.Variable ';' Punctuation '\n ' Text 'object' Keyword.Type '?' Punctuation ' ' Text 'obj2' Name.Variable ';' Punctuation '\n ' Text 'any' Keyword.Type ' ' Text 'any1' Name.Variable ' ' Text '=' Punctuation ' ' Text 'null' Keyword.Constant ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'dictionary' Keyword ' ' Text 'DictWithConditionalMembers' Name.Class ' ' Text '{' Punctuation '\n ' Text '[' Punctuation 'ChromeOnly' Name.Decorator ']' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'chromeOnlyMember' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'Func' Name.Decorator '=' Punctuation '"TestFuncControlledMember"' Literal.String ']' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'funcControlledMember' Name.Variable ';' Punctuation '\n ' Text '[' Punctuation 'ChromeOnly' Name.Decorator ',' Punctuation ' ' Text 'Func' Name.Decorator '=' Punctuation '"nsGenericHTMLElement::TouchEventsEnabled"' Literal.String ']' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'chromeOnlyFuncControlledMember' Name.Variable ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestIndexedGetterInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'item' Name.Function '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'idx' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'unsigned long' Keyword.Type ' ' Text 'length' Name.Variable ';' Punctuation '\n ' Text 'legacycaller' Keyword ' ' Text 'void' Keyword.Type '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestNamedGetterInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestIndexedGetterAndSetterAndNamedGetterInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'myName' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'long' Keyword.Type ' ' Text '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'setter' Keyword ' ' Text 'creator' Keyword ' ' Text 'void' Keyword.Type ' ' Text '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ',' Punctuation ' ' Text 'long' Keyword.Type ' ' Text 'arg' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestIndexedAndNamedGetterInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'long' Keyword.Type ' ' Text '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text 'namedItem' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'unsigned long' Keyword.Type ' ' Text 'length' Name.Variable ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestIndexedSetterInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'setter' Keyword ' ' Text 'creator' Keyword ' ' Text 'void' Keyword.Type ' ' Text 'setItem' Name.Function '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'idx' Name.Variable ',' Punctuation ' ' Text 'DOMString' Keyword.Type ' ' Text 'item' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'idx' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestNamedSetterInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'setter' Keyword ' ' Text 'creator' Keyword ' ' Text 'void' Keyword.Type ' ' Text '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'myName' Name.Variable ',' Punctuation ' ' Text 'TestIndexedSetterInterface' Name.Class ' ' Text 'item' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'TestIndexedSetterInterface' Name.Class ' ' Text '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestIndexedAndNamedSetterInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'setter' Keyword ' ' Text 'creator' Keyword ' ' Text 'void' Keyword.Type ' ' Text '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ',' Punctuation ' ' Text 'TestIndexedSetterInterface' Name.Class ' ' Text 'item' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'TestIndexedSetterInterface' Name.Class ' ' Text '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'setter' Keyword ' ' Text 'creator' Keyword ' ' Text 'void' Keyword.Type ' ' Text 'setNamedItem' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ',' Punctuation ' ' Text 'TestIndexedSetterInterface' Name.Class ' ' Text 'item' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'TestIndexedSetterInterface' Name.Class ' ' Text '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestIndexedAndNamedGetterAndSetterInterface' Name.Class ' ' Text ':' Punctuation ' ' Text 'TestIndexedSetterInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'long' Keyword.Type ' ' Text 'item' Name.Function '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text 'namedItem' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'setter' Keyword ' ' Text 'creator' Keyword ' ' Text 'void' Keyword.Type ' ' Text '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ',' Punctuation ' ' Text 'long' Keyword.Type ' ' Text 'item' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'setter' Keyword ' ' Text 'creator' Keyword ' ' Text 'void' Keyword.Type ' ' Text '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ',' Punctuation ' ' Text 'DOMString' Keyword.Type ' ' Text 'item' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'stringifier' Keyword ' ' Text 'DOMString' Keyword.Type ' ' Text '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'unsigned long' Keyword.Type ' ' Text 'length' Name.Variable ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestIndexedDeleterInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'deleter' Keyword ' ' Text 'void' Keyword.Type ' ' Text 'delItem' Name.Function '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'idx' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'long' Keyword.Type ' ' Text '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestIndexedDeleterWithRetvalInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'deleter' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'delItem' Name.Function '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'long' Keyword.Type ' ' Text '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestNamedDeleterInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'deleter' Keyword ' ' Text 'void' Keyword.Type ' ' Text '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'long' Keyword.Type ' ' Text '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestNamedDeleterWithRetvalInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'deleter' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'delNamedItem' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'long' Keyword.Type ' ' Text '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestIndexedAndNamedDeleterInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'deleter' Keyword ' ' Text 'void' Keyword.Type ' ' Text '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'long' Keyword.Type ' ' Text '(' Punctuation 'unsigned long' Keyword.Type ' ' Text 'index' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'deleter' Keyword ' ' Text 'void' Keyword.Type ' ' Text 'delNamedItem' Name.Function '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ')' Punctuation ';' Punctuation '\n ' Text 'getter' Keyword ' ' Text 'long' Keyword.Type ' ' Text '(' Punctuation 'DOMString' Keyword.Type ' ' Text 'name' Name.Variable ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'interface' Keyword ' ' Text 'TestCppKeywordNamedMethodsInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'boolean' Keyword.Type ' ' Text 'continue' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'boolean' Keyword.Type ' ' Text 'delete' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'volatile' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text '[' Punctuation 'Deprecated' Name.Decorator '=' Punctuation '"GetAttributeNode"' Literal.String ',' Punctuation ' ' Text 'Constructor' Name.Decorator '(' Punctuation ')' Punctuation ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'TestDeprecatedInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'static' Keyword ' ' Text 'void' Keyword.Type ' ' Text 'alsoDeprecated' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n\n' Text '[' Punctuation 'Constructor' Name.Decorator '(' Punctuation 'Promise' Keyword.Type '<' Punctuation 'void' Keyword.Type '>' Punctuation ' ' Text 'promise' Name.Variable ')' Punctuation ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'TestInterfaceWithPromiseConstructorArg' Name.Class ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'namespace' Keyword ' ' Text 'TestNamespace' Name.Namespace ' ' Text '{' Punctuation '\n ' Text 'readonly' Keyword ' ' Text 'attribute' Keyword ' ' Text 'boolean' Keyword.Type ' ' Text 'foo' Name.Variable ';' Punctuation '\n ' Text 'long' Keyword.Type ' ' Text 'bar' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text 'partial' Keyword ' ' Text 'namespace' Keyword ' ' Text 'TestNamespace' Name.Namespace ' ' Text '{' Punctuation '\n ' Text 'void' Keyword.Type ' ' Text 'baz' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text '[' Punctuation 'ClassString' Name.Decorator '=' Punctuation '"RenamedNamespaceClassName"' Literal.String ']' Punctuation '\n' Text 'namespace' Keyword ' ' Text 'TestRenamedNamespace' Name.Namespace ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text '[' Punctuation 'ProtoObjectHack' Name.Decorator ']' Punctuation '\n' Text 'namespace' Keyword ' ' Text 'TestProtoObjectHackedNamespace' Name.Namespace ' ' Text '{' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n\n' Text '[' Punctuation 'SecureContext' Name.Decorator ']' Punctuation '\n' Text 'interface' Keyword ' ' Text 'TestSecureContextInterface' Name.Class ' ' Text '{' Punctuation '\n ' Text 'static' Keyword ' ' Text 'void' Keyword.Type ' ' Text 'alsoSecureContext' Name.Function '(' Punctuation ')' Punctuation ';' Punctuation '\n' Text '}' Punctuation ';' Punctuation '\n' Text