| <VariableDecl>// RUN: rm -rf %t |
| // RUN: %swift-syntax-test -input-source-filename %s -parse-gen > %t |
| // RUN: diff -u %s %t |
| // RUN: %swift-syntax-test -input-source-filename %s -parse-gen -print-node-kind > %t.withkinds |
| // RUN: diff -u %S/Outputs/round_trip_invalid.swift.withkinds %t.withkinds |
| // RUN: %swift-syntax-test -input-source-filename %s -eof > %t |
| // RUN: diff -u %s %t |
| // RUN: %swift-syntax-test -serialize-raw-tree -input-source-filename %s > %t.dump |
| // RUN: %swift-syntax-test -deserialize-raw-tree -input-source-filename %t.dump -output-filename %t |
| // RUN: diff -u %s %t |
| |
| let <PatternBinding><IdentifierPattern>strings</IdentifierPattern><TypeAnnotation>: <ArrayType>[<ArrayType><SimpleTypeIdentifier>Strin</SimpleTypeIdentifier></ArrayType></ArrayType></TypeAnnotation></PatternBinding></VariableDecl><IdentifierExpr>[g</IdentifierExpr>]?<FunctionDecl> |
| |
| // Function body without closing brace token. |
| func foo<FunctionSignature><ParameterClause>() </ParameterClause></FunctionSignature><CodeBlock>{<VariableDecl> |
| var <PatternBinding><IdentifierPattern>a </IdentifierPattern><InitializerClause>= <IntegerLiteralExpr>2</IntegerLiteralExpr></InitializerClause></PatternBinding></VariableDecl><ClassDecl> |
| |
| class C <MemberDeclBlock>{<MemberDeclListItem><StructDecl> |
| struct S <MemberDeclBlock>{<MemberDeclListItem><EnumDecl> |
| enum E <MemberDeclBlock>{<MemberDeclListItem><ProtocolDecl> |
| protocol P <MemberDeclBlock>{<MemberDeclListItem><ExtensionDecl> |
| extension <SimpleTypeIdentifier>P </SimpleTypeIdentifier><MemberDeclBlock>{<MemberDeclListItem><InitializerDecl><DeclModifier> |
| public </DeclModifier>init<ParameterClause>(<FunctionParameter>a: (<TupleTypeElement><SimpleTypeIdentifier>Int </SimpleTypeIdentifier></TupleTypeElement>|| String)</FunctionParameter>)</ParameterClause></InitializerDecl></MemberDeclListItem></MemberDeclBlock></ExtensionDecl></MemberDeclListItem></MemberDeclBlock></ProtocolDecl></MemberDeclListItem></MemberDeclBlock></EnumDecl></MemberDeclListItem></MemberDeclBlock></StructDecl></MemberDeclListItem></MemberDeclBlock></ClassDecl></CodeBlock></FunctionDecl> |