Skip to content

Commit 5ff0583

Browse files
authored
avoid some redundant enumerable alloc (#4972)
1 parent 05b90af commit 5ff0583

6 files changed

+12
-54
lines changed

TUnit.Core/Attributes/TestData/AsyncDataSourceGeneratorAttribute.cs

Lines changed: 10 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,9 @@ public abstract class AsyncDataSourceGeneratorAttribute<[DynamicallyAccessedMemb
77
{
88
protected abstract IAsyncEnumerable<Func<Task<T>>> GenerateDataSourcesAsync(DataGeneratorMetadata dataGeneratorMetadata);
99

10-
public sealed override async IAsyncEnumerable<Func<Task<T>>> GetTypedDataRowsAsync(DataGeneratorMetadata dataGeneratorMetadata)
10+
public sealed override IAsyncEnumerable<Func<Task<T>>> GetTypedDataRowsAsync(DataGeneratorMetadata dataGeneratorMetadata)
1111
{
12-
await foreach (var generateDataSource in GenerateDataSourcesAsync(dataGeneratorMetadata))
13-
{
14-
yield return generateDataSource;
15-
}
12+
return GenerateDataSourcesAsync(dataGeneratorMetadata);
1613
}
1714
}
1815

@@ -25,12 +22,9 @@ public abstract class AsyncDataSourceGeneratorAttribute<
2522
{
2623
protected abstract IAsyncEnumerable<Func<Task<(T1, T2)>>> GenerateDataSourcesAsync(DataGeneratorMetadata dataGeneratorMetadata);
2724

28-
public sealed override async IAsyncEnumerable<Func<Task<(T1, T2)>>> GetTypedDataRowsAsync(DataGeneratorMetadata dataGeneratorMetadata)
25+
public sealed override IAsyncEnumerable<Func<Task<(T1, T2)>>> GetTypedDataRowsAsync(DataGeneratorMetadata dataGeneratorMetadata)
2926
{
30-
await foreach (var generateDataSource in GenerateDataSourcesAsync(dataGeneratorMetadata))
31-
{
32-
yield return generateDataSource;
33-
}
27+
return GenerateDataSourcesAsync(dataGeneratorMetadata);
3428
}
3529
}
3630

@@ -45,12 +39,9 @@ public abstract class AsyncDataSourceGeneratorAttribute<
4539
{
4640
protected abstract IAsyncEnumerable<Func<Task<(T1, T2, T3)>>> GenerateDataSourcesAsync(DataGeneratorMetadata dataGeneratorMetadata);
4741

48-
public sealed override async IAsyncEnumerable<Func<Task<(T1, T2, T3)>>> GetTypedDataRowsAsync(DataGeneratorMetadata dataGeneratorMetadata)
42+
public sealed override IAsyncEnumerable<Func<Task<(T1, T2, T3)>>> GetTypedDataRowsAsync(DataGeneratorMetadata dataGeneratorMetadata)
4943
{
50-
await foreach (var generateDataSource in GenerateDataSourcesAsync(dataGeneratorMetadata))
51-
{
52-
yield return generateDataSource;
53-
}
44+
return GenerateDataSourcesAsync(dataGeneratorMetadata);
5445
}
5546
}
5647

@@ -67,12 +58,9 @@ public abstract class AsyncDataSourceGeneratorAttribute<
6758
{
6859
protected abstract IAsyncEnumerable<Func<Task<(T1, T2, T3, T4)>>> GenerateDataSourcesAsync(DataGeneratorMetadata dataGeneratorMetadata);
6960

70-
public override async IAsyncEnumerable<Func<Task<(T1, T2, T3, T4)>>> GetTypedDataRowsAsync(DataGeneratorMetadata dataGeneratorMetadata)
61+
public override IAsyncEnumerable<Func<Task<(T1, T2, T3, T4)>>> GetTypedDataRowsAsync(DataGeneratorMetadata dataGeneratorMetadata)
7162
{
72-
await foreach (var generateDataSource in GenerateDataSourcesAsync(dataGeneratorMetadata))
73-
{
74-
yield return generateDataSource;
75-
}
63+
return GenerateDataSourcesAsync(dataGeneratorMetadata);
7664
}
7765
}
7866

@@ -91,11 +79,8 @@ public abstract class AsyncDataSourceGeneratorAttribute<
9179
{
9280
protected abstract IAsyncEnumerable<Func<Task<(T1, T2, T3, T4, T5)>>> GenerateDataSourcesAsync(DataGeneratorMetadata dataGeneratorMetadata);
9381

94-
public override async IAsyncEnumerable<Func<Task<(T1, T2, T3, T4, T5)>>> GetTypedDataRowsAsync(DataGeneratorMetadata dataGeneratorMetadata)
82+
public override IAsyncEnumerable<Func<Task<(T1, T2, T3, T4, T5)>>> GetTypedDataRowsAsync(DataGeneratorMetadata dataGeneratorMetadata)
9583
{
96-
await foreach (var generateDataSource in GenerateDataSourcesAsync(dataGeneratorMetadata))
97-
{
98-
yield return generateDataSource;
99-
}
84+
return GenerateDataSourcesAsync(dataGeneratorMetadata);
10085
}
10186
}

TUnit.Core/Attributes/TestData/AsyncUntypedDataSourceSourceGeneratorAttribute.cs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,11 @@ public abstract class AsyncUntypedDataSourceGeneratorAttribute : Attribute, IAsy
1010

1111
protected abstract IAsyncEnumerable<Func<Task<object?[]?>>> GenerateDataSourcesAsync(DataGeneratorMetadata dataGeneratorMetadata);
1212

13-
public async IAsyncEnumerable<Func<Task<object?[]?>>> GenerateAsync(DataGeneratorMetadata dataGeneratorMetadata)
13+
public IAsyncEnumerable<Func<Task<object?[]?>>> GenerateAsync(DataGeneratorMetadata dataGeneratorMetadata)
1414
{
1515
// Data source initialization is now handled externally by DataSourceInitializer
1616
// This follows SRP - the attribute is only responsible for generating data, not initialization
17-
await foreach (var generateDataSource in GenerateDataSourcesAsync(dataGeneratorMetadata))
18-
{
19-
yield return generateDataSource;
20-
}
17+
return GenerateDataSourcesAsync(dataGeneratorMetadata);
2118
}
2219

2320
public IAsyncEnumerable<Func<Task<object?[]?>>> GetDataRowsAsync(DataGeneratorMetadata dataGeneratorMetadata)

TUnit.PublicAPI/Tests.Core_Library_Has_No_API_Changes.DotNet10_0.verified.txt

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -140,39 +140,34 @@ namespace
140140
{
141141
protected AsyncDataSourceGeneratorAttribute() { }
142142
protected abstract .<<.<T>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
143-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T>.<GetTypedDataRowsAsync>d__1))]
144143
public override sealed .<<.<T>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
145144
}
146145
[(.Class | .Method, AllowMultiple=true)]
147146
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2> : .TypedDataSourceAttribute<<T1, T2>>
148147
{
149148
protected AsyncDataSourceGeneratorAttribute() { }
150149
protected abstract .<<.<<T1, T2>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
151-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2>.<GetTypedDataRowsAsync>d__1))]
152150
public override sealed .<<.<<T1, T2>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
153151
}
154152
[(.Class | .Method, AllowMultiple=true)]
155153
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2, [.(..PublicConstructors)] T3> : .TypedDataSourceAttribute<<T1, T2, T3>>
156154
{
157155
protected AsyncDataSourceGeneratorAttribute() { }
158156
protected abstract .<<.<<T1, T2, T3>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
159-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3>.<GetTypedDataRowsAsync>d__1))]
160157
public override sealed .<<.<<T1, T2, T3>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
161158
}
162159
[(.Class | .Method, AllowMultiple=true)]
163160
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2, [.(..PublicConstructors)] T3, [.(..PublicConstructors)] T4> : .TypedDataSourceAttribute<<T1, T2, T3, T4>>
164161
{
165162
protected AsyncDataSourceGeneratorAttribute() { }
166163
protected abstract .<<.<<T1, T2, T3, T4>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
167-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3, T4>.<GetTypedDataRowsAsync>d__1))]
168164
public override .<<.<<T1, T2, T3, T4>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
169165
}
170166
[(.Class | .Method, AllowMultiple=true)]
171167
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2, [.(..PublicConstructors)] T3, [.(..PublicConstructors)] T4, [.(..PublicConstructors)] T5> : .TypedDataSourceAttribute<<T1, T2, T3, T4, T5>>
172168
{
173169
protected AsyncDataSourceGeneratorAttribute() { }
174170
protected abstract .<<.<<T1, T2, T3, T4, T5>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
175-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3, T4, T5>.<GetTypedDataRowsAsync>d__1))]
176171
public override .<<.<<T1, T2, T3, T4, T5>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
177172
}
178173
public class AsyncEvent<TEventArgs>
@@ -195,7 +190,6 @@ namespace
195190
{
196191
protected AsyncUntypedDataSourceGeneratorAttribute() { }
197192
public virtual bool SkipIfEmpty { get; set; }
198-
[.(typeof(.AsyncUntypedDataSourceGeneratorAttribute.<GenerateAsync>d__5))]
199193
public .<<.<object?[]?>>> GenerateAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
200194
protected abstract .<<.<object?[]?>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
201195
public .<<.<object?[]?>>> GetDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }

TUnit.PublicAPI/Tests.Core_Library_Has_No_API_Changes.DotNet8_0.verified.txt

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -140,39 +140,34 @@ namespace
140140
{
141141
protected AsyncDataSourceGeneratorAttribute() { }
142142
protected abstract .<<.<T>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
143-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T>.<GetTypedDataRowsAsync>d__1))]
144143
public override sealed .<<.<T>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
145144
}
146145
[(.Class | .Method, AllowMultiple=true)]
147146
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2> : .TypedDataSourceAttribute<<T1, T2>>
148147
{
149148
protected AsyncDataSourceGeneratorAttribute() { }
150149
protected abstract .<<.<<T1, T2>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
151-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2>.<GetTypedDataRowsAsync>d__1))]
152150
public override sealed .<<.<<T1, T2>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
153151
}
154152
[(.Class | .Method, AllowMultiple=true)]
155153
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2, [.(..PublicConstructors)] T3> : .TypedDataSourceAttribute<<T1, T2, T3>>
156154
{
157155
protected AsyncDataSourceGeneratorAttribute() { }
158156
protected abstract .<<.<<T1, T2, T3>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
159-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3>.<GetTypedDataRowsAsync>d__1))]
160157
public override sealed .<<.<<T1, T2, T3>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
161158
}
162159
[(.Class | .Method, AllowMultiple=true)]
163160
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2, [.(..PublicConstructors)] T3, [.(..PublicConstructors)] T4> : .TypedDataSourceAttribute<<T1, T2, T3, T4>>
164161
{
165162
protected AsyncDataSourceGeneratorAttribute() { }
166163
protected abstract .<<.<<T1, T2, T3, T4>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
167-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3, T4>.<GetTypedDataRowsAsync>d__1))]
168164
public override .<<.<<T1, T2, T3, T4>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
169165
}
170166
[(.Class | .Method, AllowMultiple=true)]
171167
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2, [.(..PublicConstructors)] T3, [.(..PublicConstructors)] T4, [.(..PublicConstructors)] T5> : .TypedDataSourceAttribute<<T1, T2, T3, T4, T5>>
172168
{
173169
protected AsyncDataSourceGeneratorAttribute() { }
174170
protected abstract .<<.<<T1, T2, T3, T4, T5>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
175-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3, T4, T5>.<GetTypedDataRowsAsync>d__1))]
176171
public override .<<.<<T1, T2, T3, T4, T5>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
177172
}
178173
public class AsyncEvent<TEventArgs>
@@ -195,7 +190,6 @@ namespace
195190
{
196191
protected AsyncUntypedDataSourceGeneratorAttribute() { }
197192
public virtual bool SkipIfEmpty { get; set; }
198-
[.(typeof(.AsyncUntypedDataSourceGeneratorAttribute.<GenerateAsync>d__5))]
199193
public .<<.<object?[]?>>> GenerateAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
200194
protected abstract .<<.<object?[]?>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
201195
public .<<.<object?[]?>>> GetDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }

TUnit.PublicAPI/Tests.Core_Library_Has_No_API_Changes.DotNet9_0.verified.txt

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -140,39 +140,34 @@ namespace
140140
{
141141
protected AsyncDataSourceGeneratorAttribute() { }
142142
protected abstract .<<.<T>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
143-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T>.<GetTypedDataRowsAsync>d__1))]
144143
public override sealed .<<.<T>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
145144
}
146145
[(.Class | .Method, AllowMultiple=true)]
147146
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2> : .TypedDataSourceAttribute<<T1, T2>>
148147
{
149148
protected AsyncDataSourceGeneratorAttribute() { }
150149
protected abstract .<<.<<T1, T2>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
151-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2>.<GetTypedDataRowsAsync>d__1))]
152150
public override sealed .<<.<<T1, T2>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
153151
}
154152
[(.Class | .Method, AllowMultiple=true)]
155153
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2, [.(..PublicConstructors)] T3> : .TypedDataSourceAttribute<<T1, T2, T3>>
156154
{
157155
protected AsyncDataSourceGeneratorAttribute() { }
158156
protected abstract .<<.<<T1, T2, T3>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
159-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3>.<GetTypedDataRowsAsync>d__1))]
160157
public override sealed .<<.<<T1, T2, T3>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
161158
}
162159
[(.Class | .Method, AllowMultiple=true)]
163160
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2, [.(..PublicConstructors)] T3, [.(..PublicConstructors)] T4> : .TypedDataSourceAttribute<<T1, T2, T3, T4>>
164161
{
165162
protected AsyncDataSourceGeneratorAttribute() { }
166163
protected abstract .<<.<<T1, T2, T3, T4>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
167-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3, T4>.<GetTypedDataRowsAsync>d__1))]
168164
public override .<<.<<T1, T2, T3, T4>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
169165
}
170166
[(.Class | .Method, AllowMultiple=true)]
171167
public abstract class AsyncDataSourceGeneratorAttribute<[.(..PublicConstructors)] T1, [.(..PublicConstructors)] T2, [.(..PublicConstructors)] T3, [.(..PublicConstructors)] T4, [.(..PublicConstructors)] T5> : .TypedDataSourceAttribute<<T1, T2, T3, T4, T5>>
172168
{
173169
protected AsyncDataSourceGeneratorAttribute() { }
174170
protected abstract .<<.<<T1, T2, T3, T4, T5>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
175-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3, T4, T5>.<GetTypedDataRowsAsync>d__1))]
176171
public override .<<.<<T1, T2, T3, T4, T5>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
177172
}
178173
public class AsyncEvent<TEventArgs>
@@ -195,7 +190,6 @@ namespace
195190
{
196191
protected AsyncUntypedDataSourceGeneratorAttribute() { }
197192
public virtual bool SkipIfEmpty { get; set; }
198-
[.(typeof(.AsyncUntypedDataSourceGeneratorAttribute.<GenerateAsync>d__5))]
199193
public .<<.<object?[]?>>> GenerateAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
200194
protected abstract .<<.<object?[]?>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
201195
public .<<.<object?[]?>>> GetDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }

TUnit.PublicAPI/Tests.Core_Library_Has_No_API_Changes.Net4_7.verified.txt

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -137,39 +137,34 @@ namespace
137137
{
138138
protected AsyncDataSourceGeneratorAttribute() { }
139139
protected abstract .<<.<T>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
140-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T>.<GetTypedDataRowsAsync>d__1))]
141140
public override sealed .<<.<T>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
142141
}
143142
[(.Class | .Method, AllowMultiple=true)]
144143
public abstract class AsyncDataSourceGeneratorAttribute<T1, T2> : .TypedDataSourceAttribute<<T1, T2>>
145144
{
146145
protected AsyncDataSourceGeneratorAttribute() { }
147146
protected abstract .<<.<<T1, T2>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
148-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2>.<GetTypedDataRowsAsync>d__1))]
149147
public override sealed .<<.<<T1, T2>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
150148
}
151149
[(.Class | .Method, AllowMultiple=true)]
152150
public abstract class AsyncDataSourceGeneratorAttribute<T1, T2, T3> : .TypedDataSourceAttribute<<T1, T2, T3>>
153151
{
154152
protected AsyncDataSourceGeneratorAttribute() { }
155153
protected abstract .<<.<<T1, T2, T3>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
156-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3>.<GetTypedDataRowsAsync>d__1))]
157154
public override sealed .<<.<<T1, T2, T3>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
158155
}
159156
[(.Class | .Method, AllowMultiple=true)]
160157
public abstract class AsyncDataSourceGeneratorAttribute<T1, T2, T3, T4> : .TypedDataSourceAttribute<<T1, T2, T3, T4>>
161158
{
162159
protected AsyncDataSourceGeneratorAttribute() { }
163160
protected abstract .<<.<<T1, T2, T3, T4>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
164-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3, T4>.<GetTypedDataRowsAsync>d__1))]
165161
public override .<<.<<T1, T2, T3, T4>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
166162
}
167163
[(.Class | .Method, AllowMultiple=true)]
168164
public abstract class AsyncDataSourceGeneratorAttribute<T1, T2, T3, T4, T5> : .TypedDataSourceAttribute<<T1, T2, T3, T4, T5>>
169165
{
170166
protected AsyncDataSourceGeneratorAttribute() { }
171167
protected abstract .<<.<<T1, T2, T3, T4, T5>>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
172-
[.(typeof(.AsyncDataSourceGeneratorAttribute<T1, T2, T3, T4, T5>.<GetTypedDataRowsAsync>d__1))]
173168
public override .<<.<<T1, T2, T3, T4, T5>>>> GetTypedDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
174169
}
175170
public class AsyncEvent<TEventArgs>
@@ -192,7 +187,6 @@ namespace
192187
{
193188
protected AsyncUntypedDataSourceGeneratorAttribute() { }
194189
public virtual bool SkipIfEmpty { get; set; }
195-
[.(typeof(.AsyncUntypedDataSourceGeneratorAttribute.<GenerateAsync>d__5))]
196190
public .<<.<object?[]?>>> GenerateAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }
197191
protected abstract .<<.<object?[]?>>> GenerateDataSourcesAsync(.DataGeneratorMetadata dataGeneratorMetadata);
198192
public .<<.<object?[]?>>> GetDataRowsAsync(.DataGeneratorMetadata dataGeneratorMetadata) { }

0 commit comments

Comments
 (0)