| OLD | NEW |
| (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 Implements 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 /* BUILD Implements(A) */ | |
| 33 /* PROP REFERENCE=B */ | |
| 34 A implements B; | |
| 35 | |
| 36 /* ERROR Unexpected ";" after keyword "implements". */ | |
| 37 A implements; | |
| 38 | |
| 39 /* BUILD Implements(B) */ | |
| 40 /* PROP REFERENCE=C */ | |
| 41 B implements C; | |
| 42 | |
| 43 /* ERROR Unexpected keyword "implements" after "]". */ | |
| 44 [foo] implements B; | |
| 45 | |
| 46 /* BUILD Implements(D) */ | |
| 47 /* PROP REFERENCE=E */ | |
| 48 D implements E; | |
| 49 | |
| 50 /* ERROR Unexpected keyword "implements" after comment. */ | |
| 51 implements C; | |
| 52 | |
| OLD | NEW |