mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-09-27 10:20:11 +01:00
Use two different nodes for "<type> followed by `as`" and "<type> omitted before `as`, use `self`", so it is easier to determine which case. Later the second case will push the type id for `self` onto the node stack, making the two paths more similar. --------- Co-authored-by: Jon Ross-Perkins <jperkins@google.com>
21 lines
887 B
Plaintext
21 lines
887 B
Plaintext
// Part of the Carbon Language project, under the Apache License v2.0 with LLVM
|
|
// Exceptions. See /LICENSE for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
// AUTOUPDATE
|
|
|
|
impl String as Interface {
|
|
}
|
|
|
|
// CHECK:STDOUT: - filename: empty_body.carbon
|
|
// CHECK:STDOUT: parse_tree: [
|
|
// CHECK:STDOUT: {kind: 'FileStart', text: ''},
|
|
// CHECK:STDOUT: {kind: 'ImplIntroducer', text: 'impl'},
|
|
// CHECK:STDOUT: {kind: 'StringTypeLiteral', text: 'String'},
|
|
// CHECK:STDOUT: {kind: 'TypeImplAs', text: 'as', subtree_size: 2},
|
|
// CHECK:STDOUT: {kind: 'IdentifierNameExpr', text: 'Interface'},
|
|
// CHECK:STDOUT: {kind: 'ImplDefinitionStart', text: '{', subtree_size: 5},
|
|
// CHECK:STDOUT: {kind: 'ImplDefinition', text: '}', subtree_size: 6},
|
|
// CHECK:STDOUT: {kind: 'FileEnd', text: ''},
|
|
// CHECK:STDOUT: ]
|