Use more specific node kinds for literals. (#3419)

Sounding out the approach, to make it clearer what a literal node
corresponds to.
This commit is contained in:
Jon Ross-Perkins
2023-11-22 01:27:28 +00:00
committed by GitHub
parent f1ddded3a1
commit a204689893
107 changed files with 463 additions and 383 deletions
@@ -15,11 +15,11 @@ fn foo(bar: i64, baz: i64) {
// CHECK:STDOUT: {kind: 'Name', text: 'foo'},
// CHECK:STDOUT: {kind: 'ParamListStart', text: '('},
// CHECK:STDOUT: {kind: 'Name', text: 'bar'},
// CHECK:STDOUT: {kind: 'Literal', text: 'i64'},
// CHECK:STDOUT: {kind: 'IntegerTypeLiteral', text: 'i64'},
// CHECK:STDOUT: {kind: 'PatternBinding', text: ':', subtree_size: 3},
// CHECK:STDOUT: {kind: 'ParamListComma', text: ','},
// CHECK:STDOUT: {kind: 'Name', text: 'baz'},
// CHECK:STDOUT: {kind: 'Literal', text: 'i64'},
// CHECK:STDOUT: {kind: 'IntegerTypeLiteral', text: 'i64'},
// CHECK:STDOUT: {kind: 'PatternBinding', text: ':', subtree_size: 3},
// CHECK:STDOUT: {kind: 'ParamList', text: ')', subtree_size: 9},
// CHECK:STDOUT: {kind: 'FunctionDefinitionStart', text: '{', subtree_size: 12},
@@ -15,11 +15,11 @@ fn foo() -> f64 {
// CHECK:STDOUT: {kind: 'Name', text: 'foo'},
// CHECK:STDOUT: {kind: 'ParamListStart', text: '('},
// CHECK:STDOUT: {kind: 'ParamList', text: ')', subtree_size: 2},
// CHECK:STDOUT: {kind: 'Literal', text: 'f64'},
// CHECK:STDOUT: {kind: 'FloatingPointTypeLiteral', text: 'f64'},
// CHECK:STDOUT: {kind: 'ReturnType', text: '->', subtree_size: 2},
// CHECK:STDOUT: {kind: 'FunctionDefinitionStart', text: '{', subtree_size: 7},
// CHECK:STDOUT: {kind: 'ReturnStatementStart', text: 'return'},
// CHECK:STDOUT: {kind: 'Literal', text: '42'},
// CHECK:STDOUT: {kind: 'IntegerLiteral', text: '42'},
// CHECK:STDOUT: {kind: 'ReturnStatement', text: ';', subtree_size: 3},
// CHECK:STDOUT: {kind: 'FunctionDefinition', text: '}', subtree_size: 11},
// CHECK:STDOUT: {kind: 'FileEnd', text: ''},