1 /* Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 Use of this source code is governed by a BSD-style license that can be
3 found in the LICENSE file. */
5 /* Test Interface productions
7 Run with --test to generate an AST and verify that all comments accurately
8 reflect the state of the Nodes.
11 This comment signals that a node of type <Type> is created with the
15 This comment signals that a error of <Error String> is generated. The error
16 is not assigned to a node, but are expected in order.
19 This comment signals that a property has been set on the Node such that
28 This comment signals that a tree of nodes matching the BUILD comment
29 symatics should exist. This is an exact match.
36 interface MyIFace
{ };
39 *Interface(MyIFaceInherit)
42 interface MyIFaceInherit
: Foo
{};
45 *Interface(MyIFacePartial)
47 partial
interface MyIFacePartial
{ };
49 /* ERROR Unexpected ":" after identifier "MyIFaceInherit". */
50 partial
interface MyIFaceInherit
: Foo
{};
53 *Interface(MyIFaceBig)
55 * PrimitiveType(DOMString)
58 interface MyIFaceBig
{
59 const DOMString? setString
= null
;
63 *Interface(MyIFaceBig2)
65 * PrimitiveType(DOMString)
71 * PrimitiveType(long long)
75 * PrimitiveType(DOMString)
76 * Attribute(readOnlyString)
78 * PrimitiveType(DOMString)
79 * Operation(myFunction)
85 * PrimitiveType(long long)
87 interface MyIFaceBig2
{
88 const DOMString? nullValue
= null
;
89 const long longValue
= 123;
90 const long long longValue2
= 123;
91 attribute DOMString myString
;
92 readonly attribute DOMString readOnlyString
;
93 void myFunction
(long long myLong
);
98 *Interface(MyIFaceSpecials)
101 * PrimitiveType(void)
105 * PrimitiveType(DOMString)
106 * Operation(_unnamed_)
108 * PrimitiveType(double)
112 * PrimitiveType(DOMString)
113 * Operation(GetFiveSix)
115 * PrimitiveType(long long)
123 interface MyIFaceSpecials
{
124 setter creator
void set
(DOMString property
);
125 getter
double (DOMString property
);
126 long long [5][6] GetFiveSix
(SomeType arg
);