| Index: tools/idl_parser/test_parser/interface.idl
|
| diff --git a/tools/idl_parser/test_parser/interface.idl b/tools/idl_parser/test_parser/interface.idl
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..ce4e3068db84f79bc26afc8155cbd1f65562cb90
|
| --- /dev/null
|
| +++ b/tools/idl_parser/test_parser/interface.idl
|
| @@ -0,0 +1,127 @@
|
| +/* 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(0x123)
|
| + * 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 = 0x123;
|
| + 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);
|
| +};
|
|
|