92 lines
1.7 KiB
Plaintext
92 lines
1.7 KiB
Plaintext
/* Copyright 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 ExtendedAttribute 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(Foo)
|
|
* ExtAttributes()
|
|
* ExtAttribute(foo)
|
|
* Arguments()
|
|
*/
|
|
|
|
[foo()] interface Foo {};
|
|
|
|
/* TREE
|
|
*Interface(Foo)
|
|
* ExtAttributes()
|
|
* ExtAttribute(foo)
|
|
* Values()
|
|
*/
|
|
|
|
[foo(1)] interface Foo {};
|
|
|
|
/* TREE
|
|
*Interface(Foo)
|
|
* ExtAttributes()
|
|
* ExtAttribute(foo)
|
|
* Values()
|
|
*/
|
|
|
|
[foo(1 true 1.2e-3)] interface Foo {};
|
|
|
|
/* TREE
|
|
*Interface(Foo)
|
|
* ExtAttributes()
|
|
* ExtAttribute(foo)
|
|
* Arguments()
|
|
* Error(Unexpected ).)
|
|
*/
|
|
|
|
[foo(null)] interface Foo {};
|
|
|
|
/* TREE
|
|
*Interface(Foo)
|
|
* ExtAttributes()
|
|
* ExtAttribute(foo)
|
|
*/
|
|
|
|
[foo=1] interface Foo {};
|
|
|
|
/* TREE
|
|
*Interface(Foo)
|
|
* ExtAttributes()
|
|
* ExtAttribute(foo)
|
|
*/
|
|
|
|
[foo=true] interface Foo {};
|
|
|
|
/* TREE
|
|
*Interface(Foo)
|
|
* ExtAttributes()
|
|
* ExtAttribute(foo)
|
|
*/
|
|
|
|
[foo=1.2e-3] interface Foo {};
|