shaka-packager/tools/idl_parser/test_parser/interface_web.idl

128 lines
2.8 KiB
Plaintext

/* Copyright (c) 2013 The Chromium Authors. All rights reserved.
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file. */
/* Test Interface productions
Run with --test to generate an AST and verify that all comments accurately
reflect the state of the Nodes.
BUILD Type(Name)
This comment signals that a node of type <Type> is created with the
name <Name>.
ERROR Error String
This comment signals that a error of <Error String> is generated. The error
is not assigned to a node, but are expected in order.
PROP Key=Value
This comment signals that a property has been set on the Node such that
<Key> = <Value>.
TREE
Type(Name)
Type(Name)
Type(Name)
Type(Name)
...
This comment signals that a tree of nodes matching the BUILD comment
symatics should exist. This is an exact match.
*/
/* TREE
*Interface(MyIFace)
*/
interface MyIFace { };
/* TREE
*Interface(MyIFaceInherit)
* Inherit(Foo)
*/
interface MyIFaceInherit : Foo {};
/* TREE
*Interface(MyIFacePartial)
*/
partial interface MyIFacePartial { };
/* ERROR Unexpected ":" after identifier "MyIFaceInherit". */
partial interface MyIFaceInherit : Foo {};
/* TREE
*Interface(MyIFaceBig)
* Const(setString)
* PrimitiveType(DOMString)
* Value(NULL)
*/
interface MyIFaceBig {
const DOMString? setString = null;
};
/* TREE
*Interface(MyIFaceBig2)
* Const(nullValue)
* PrimitiveType(DOMString)
* Value(NULL)
* Const(longValue)
* PrimitiveType(long)
* Value(123)
* Const(longValue2)
* PrimitiveType(long long)
* Value(123)
* Attribute(myString)
* Type()
* PrimitiveType(DOMString)
* Attribute(readOnlyString)
* Type()
* PrimitiveType(DOMString)
* Operation(myFunction)
* Type()
* PrimitiveType(void)
* Arguments()
* Argument(myLong)
* Type()
* PrimitiveType(long long)
*/
interface MyIFaceBig2 {
const DOMString? nullValue = null;
const long longValue = 123;
const long long longValue2 = 123;
attribute DOMString myString;
readonly attribute DOMString readOnlyString;
void myFunction(long long myLong);
};
/* TREE
*Interface(MyIFaceSpecials)
* Operation(set)
* Type()
* PrimitiveType(void)
* Arguments()
* Argument(property)
* Type()
* PrimitiveType(DOMString)
* Operation(_unnamed_)
* Type()
* PrimitiveType(double)
* Arguments()
* Argument(property)
* Type()
* PrimitiveType(DOMString)
* Operation(GetFiveSix)
* Type()
* PrimitiveType(long long)
* Array(5)
* Array(6)
* Arguments()
* Argument(arg)
* Type()
* Typeref(SomeType)
*/
interface MyIFaceSpecials {
setter creator void set(DOMString property);
getter double (DOMString property);
long long [5][6] GetFiveSix(SomeType arg);
};