Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(510)

Side by Side Diff: tools/idl_parser/test_parser/dictionary.idl

Issue 13498002: Add WebIDL compliant parser plus tests (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: 'Delay build of Lexer to handler tokens correctly.' Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tools/idl_parser/test_parser/callback.idl ('k') | tools/idl_parser/test_parser/enum.idl » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
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. */
4
5 /* Test Dictionary productions
6
7 Run with --test to generate an AST and verify that all comments accurately
8 reflect the state of the Nodes.
9
10 BUILD Type(Name)
11 This comment signals that a node of type <Type> is created with the
12 name <Name>.
13
14 ERROR Error String
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.
17
18 PROP Key=Value
19 This comment signals that a property has been set on the Node such that
20 <Key> = <Value>.
21
22 TREE
23 Type(Name)
24 Type(Name)
25 Type(Name)
26 Type(Name)
27 ...
28 This comment signals that a tree of nodes matching the BUILD comment
29 symatics should exist. This is an exact match.
30 */
31
32
33 /* TREE
34 *Dictionary(MyDict)
35 */
36 dictionary MyDict { };
37
38 /* TREE
39 *Dictionary(MyDictInherit)
40 * Inherit(Foo)
41 */
42 dictionary MyDictInherit : Foo {};
43
44 /* TREE
45 *Dictionary(MyDictPartial)
46 */
47 partial dictionary MyDictPartial { };
48
49 /* ERROR Unexpected ":" after identifier "MyDictInherit". */
50 partial dictionary MyDictInherit : Foo {};
51
52 /* TREE
53 *Dictionary(MyDictBig)
54 * Key(setString)
55 * Type()
56 * PrimitiveType(DOMString)
57 * Default(Foo)
58 * Key(setLong)
59 * Type()
60 * PrimitiveType(unsigned long long)
61 * Default(123)
62 * Key(unsetLong)
63 * Type()
64 * PrimitiveType(long)
65 */
66 dictionary MyDictBig {
67 DOMString setString = "Foo";
68 unsigned long long setLong = 123;
69 long unsetLong;
70 };
71
72
73 /* ERROR Unexpected "{" after keyword "dictionary". */
74 dictionary {
75 DOMString? setString = null;
76 };
77
78
79 /* ERROR Unexpected identifier "NoColon" after identifier "ForParent". */
80 dictionary ForParent NoColon {
81 DOMString? setString = null;
82 };
83
84 /* TREE
85 *Dictionary(MyDictNull)
86 * Key(setString)
87 * Type()
88 * PrimitiveType(DOMString)
89 * Default(NULL)
90 */
91 dictionary MyDictNull {
92 DOMString? setString = null;
93 };
94
95
OLDNEW
« no previous file with comments | « tools/idl_parser/test_parser/callback.idl ('k') | tools/idl_parser/test_parser/enum.idl » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698