@@ -104,7 +104,7 @@ public struct MyFooProviderInferred: FooProvider {
104104 Foo ( name: " MyFooProviderInferred.foos.Array. \( i) " )
105105 }
106106
107- if ( Bool . random ( ) ) {
107+ if Bool . random ( ) {
108108 Foo ( name: " MyFooProviderInferred.foos.Optional " )
109109 }
110110
@@ -117,6 +117,25 @@ public struct MyFooProviderInferred: FooProvider {
117117 }
118118}
119119
120+ public struct MyFooProviderInferredWithArrayInitialization : FooProvider {
121+ public static var foos : [ Foo ] = [
122+ Foo ( name: " MyFooProviderInferredWithArrayInitialization.foos.1 " , baz: {
123+ " Nested.Builder.1 "
124+ " Nested.Builder.2 "
125+ } ) ,
126+ Foo ( name: " MyFooProviderInferredWithArrayInitialization.foos.2 " ) ,
127+ ]
128+ }
129+
130+ public struct MyFooProviderInferredWithArrayReturn : FooProvider {
131+ public static var foos : [ Foo ] {
132+ return [
133+ Foo ( name: " MyFooProviderInferredWithArrayReturn.foos.1 " ) ,
134+ Foo ( name: " MyFooProviderInferredWithArrayInitialization.foos.2 " ) ,
135+ ]
136+ }
137+ }
138+
120139// CHECK: [
121140// CHECK-NEXT: {
122141// CHECK-NEXT: "typeName": "ExtractResultBuilders.MyFooProvider",
@@ -524,5 +543,147 @@ public struct MyFooProviderInferred: FooProvider {
524543// CHECK-NEXT: }
525544// CHECK-NEXT: }
526545// CHECK-NEXT: ]
546+ // CHECK-NEXT: },
547+ // CHECK-NEXT: {
548+ // CHECK-NEXT: "typeName": "ExtractResultBuilders.MyFooProviderInferredWithArrayInitialization",
549+ // CHECK-NEXT: "mangledTypeName": "21ExtractResultBuilders44MyFooProviderInferredWithArrayInitializationV",
550+ // CHECK-NEXT: "kind": "struct",
551+ // CHECK-NEXT: "file": "{{.*}}test{{/|\\\\}}ConstExtraction{{/|\\\\}}ExtractResultBuilders.swift",
552+ // CHECK-NEXT: "line": 120,
553+ // CHECK-NEXT: "conformances": [
554+ // CHECK-NEXT: "ExtractResultBuilders.FooProvider"
555+ // CHECK-NEXT: ],
556+ // CHECK-NEXT: "allConformances": [
557+ // CHECK-NEXT: {
558+ // CHECK-NEXT: "protocolName": "ExtractResultBuilders.FooProvider",
559+ // CHECK-NEXT: "conformanceDefiningModule": "ExtractResultBuilders"
560+ // CHECK-NEXT: }
561+ // CHECK-NEXT: ],
562+ // CHECK-NEXT: "associatedTypeAliases": [],
563+ // CHECK-NEXT: "properties": [
564+ // CHECK-NEXT: {
565+ // CHECK-NEXT: "label": "foos",
566+ // CHECK-NEXT: "type": "Swift.Array<ExtractResultBuilders.Foo>",
567+ // CHECK-NEXT: "mangledTypeName": "n/a - deprecated",
568+ // CHECK-NEXT: "isStatic": "true",
569+ // CHECK-NEXT: "isComputed": "false",
570+ // CHECK-NEXT: "file": "{{.*}}test{{/|\\\\}}ConstExtraction{{/|\\\\}}ExtractResultBuilders.swift",
571+ // CHECK-NEXT: "line": 121,
572+ // CHECK-NEXT: "valueKind": "Array",
573+ // CHECK-NEXT: "value": [
574+ // CHECK-NEXT: {
575+ // CHECK-NEXT: "valueKind": "InitCall",
576+ // CHECK-NEXT: "value": {
577+ // CHECK-NEXT: "type": "ExtractResultBuilders.Foo",
578+ // CHECK-NEXT: "arguments": [
579+ // CHECK-NEXT: {
580+ // CHECK-NEXT: "label": "name",
581+ // CHECK-NEXT: "type": "Swift.String",
582+ // CHECK-NEXT: "valueKind": "RawLiteral",
583+ // CHECK-NEXT: "value": "MyFooProviderInferredWithArrayInitialization.foos.1"
584+ // CHECK-NEXT: },
585+ // CHECK-NEXT: {
586+ // CHECK-NEXT: "label": "baz",
587+ // CHECK-NEXT: "type": "() -> Swift.String",
588+ // CHECK-NEXT: "valueKind": "Builder",
589+ // CHECK-NEXT: "value": {
590+ // CHECK-NEXT: "type": "",
591+ // CHECK-NEXT: "members": [
592+ // CHECK-NEXT: {
593+ // CHECK-NEXT: "kind": "buildExpression",
594+ // CHECK-NEXT: "element": {
595+ // CHECK-NEXT: "valueKind": "RawLiteral",
596+ // CHECK-NEXT: "value": "Nested.Builder.1"
597+ // CHECK-NEXT: }
598+ // CHECK-NEXT: },
599+ // CHECK-NEXT: {
600+ // CHECK-NEXT: "kind": "buildExpression",
601+ // CHECK-NEXT: "element": {
602+ // CHECK-NEXT: "valueKind": "RawLiteral",
603+ // CHECK-NEXT: "value": "Nested.Builder.2"
604+ // CHECK-NEXT: }
605+ // CHECK-NEXT: }
606+ // CHECK-NEXT: ]
607+ // CHECK-NEXT: }
608+ // CHECK-NEXT: }
609+ // CHECK-NEXT: ]
610+ // CHECK-NEXT: }
611+ // CHECK-NEXT: },
612+ // CHECK-NEXT: {
613+ // CHECK-NEXT: "valueKind": "InitCall",
614+ // CHECK-NEXT: "value": {
615+ // CHECK-NEXT: "type": "ExtractResultBuilders.Foo",
616+ // CHECK-NEXT: "arguments": [
617+ // CHECK-NEXT: {
618+ // CHECK-NEXT: "label": "name",
619+ // CHECK-NEXT: "type": "Swift.String",
620+ // CHECK-NEXT: "valueKind": "RawLiteral",
621+ // CHECK-NEXT: "value": "MyFooProviderInferredWithArrayInitialization.foos.2"
622+ // CHECK-NEXT: }
623+ // CHECK-NEXT: ]
624+ // CHECK-NEXT: }
625+ // CHECK-NEXT: }
626+ // CHECK-NEXT: ]
627+ // CHECK-NEXT: }
628+ // CHECK-NEXT: ]
629+ // CHECK-NEXT: },
630+ // CHECK-NEXT: {
631+ // CHECK-NEXT: "typeName": "ExtractResultBuilders.MyFooProviderInferredWithArrayReturn",
632+ // CHECK-NEXT: "mangledTypeName": "21ExtractResultBuilders36MyFooProviderInferredWithArrayReturnV",
633+ // CHECK-NEXT: "kind": "struct",
634+ // CHECK-NEXT: "file": "{{.*}}test{{/|\\\\}}ConstExtraction{{/|\\\\}}ExtractResultBuilders.swift",
635+ // CHECK-NEXT: "line": 130,
636+ // CHECK-NEXT: "conformances": [
637+ // CHECK-NEXT: "ExtractResultBuilders.FooProvider"
638+ // CHECK-NEXT: ],
639+ // CHECK-NEXT: "allConformances": [
640+ // CHECK-NEXT: {
641+ // CHECK-NEXT: "protocolName": "ExtractResultBuilders.FooProvider",
642+ // CHECK-NEXT: "conformanceDefiningModule": "ExtractResultBuilders"
643+ // CHECK-NEXT: }
644+ // CHECK-NEXT: ],
645+ // CHECK-NEXT: "associatedTypeAliases": [],
646+ // CHECK-NEXT: "properties": [
647+ // CHECK-NEXT: {
648+ // CHECK-NEXT: "label": "foos",
649+ // CHECK-NEXT: "type": "Swift.Array<ExtractResultBuilders.Foo>",
650+ // CHECK-NEXT: "mangledTypeName": "n/a - deprecated",
651+ // CHECK-NEXT: "isStatic": "true",
652+ // CHECK-NEXT: "isComputed": "true",
653+ // CHECK-NEXT: "file": "{{.*}}test{{/|\\\\}}ConstExtraction{{/|\\\\}}ExtractResultBuilders.swift",
654+ // CHECK-NEXT: "line": 131,
655+ // CHECK-NEXT: "valueKind": "Array",
656+ // CHECK-NEXT: "value": [
657+ // CHECK-NEXT: {
658+ // CHECK-NEXT: "valueKind": "InitCall",
659+ // CHECK-NEXT: "value": {
660+ // CHECK-NEXT: "type": "ExtractResultBuilders.Foo",
661+ // CHECK-NEXT: "arguments": [
662+ // CHECK-NEXT: {
663+ // CHECK-NEXT: "label": "name",
664+ // CHECK-NEXT: "type": "Swift.String",
665+ // CHECK-NEXT: "valueKind": "RawLiteral",
666+ // CHECK-NEXT: "value": "MyFooProviderInferredWithArrayReturn.foos.1"
667+ // CHECK-NEXT: }
668+ // CHECK-NEXT: ]
669+ // CHECK-NEXT: }
670+ // CHECK-NEXT: },
671+ // CHECK-NEXT: {
672+ // CHECK-NEXT: "valueKind": "InitCall",
673+ // CHECK-NEXT: "value": {
674+ // CHECK-NEXT: "type": "ExtractResultBuilders.Foo",
675+ // CHECK-NEXT: "arguments": [
676+ // CHECK-NEXT: {
677+ // CHECK-NEXT: "label": "name",
678+ // CHECK-NEXT: "type": "Swift.String",
679+ // CHECK-NEXT: "valueKind": "RawLiteral",
680+ // CHECK-NEXT: "value": "MyFooProviderInferredWithArrayInitialization.foos.2"
681+ // CHECK-NEXT: }
682+ // CHECK-NEXT: ]
683+ // CHECK-NEXT: }
684+ // CHECK-NEXT: }
685+ // CHECK-NEXT: ]
686+ // CHECK-NEXT: }
687+ // CHECK-NEXT: ]
527688// CHECK-NEXT: }
528689// CHECK-NEXT: ]
0 commit comments