File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -234,6 +234,7 @@ public void TestNew() {
234234 var x = new ImmArray < int > ( new int [ ] { 1 } ) ;
235235 Assert . Equal ( typeof ( ImmArray < int > ) , x . GetType ( ) ) ;
236236
237+ #if NET10_0_OR_GREATER
237238 var y = new ImmArray < int > ( 1 ) ;
238239 Assert . Equal ( typeof ( ImmArray < int > ) , y . GetType ( ) ) ;
239240
@@ -248,6 +249,7 @@ public void TestNew() {
248249
249250 var c = new ImmArray < ExplicitIntArray > ( new ExplicitIntArray ( 1 ) ) ;
250251 Assert . Equal ( typeof ( ImmArray < ExplicitIntArray > ) , c . GetType ( ) ) ;
252+ #endif
251253 }
252254
253255 public record ImplicitIntArray ( int i ) {
Original file line number Diff line number Diff line change @@ -9,10 +9,11 @@ public static ImmArray<T> Of<T>(params T[] arr) {
99#if NET10_0_OR_GREATER
1010 [ System . Runtime . CompilerServices . OverloadResolutionPriority ( 1 ) ]
1111 public static ImmArray < T > Of < T > ( params ReadOnlySpan < T > span ) {
12+ return new ImmArray < T > ( span ) ;
1213#else
1314 public static ImmArray < T > Of < T > ( ReadOnlySpan < T > span ) {
15+ return new ImmArray < T > ( span . ToArray ( ) ) ;
1416#endif
15- return new ImmArray < T > ( span ) ;
1617 }
1718#endif
1819
@@ -77,12 +78,14 @@ public ImmArray(IEnumerable<T> data) {
7778 }
7879 }
7980
81+ #if NET10_0_OR_GREATER
8082 /// <summary>
8183 /// Constructs an ImmArray by copying the span's contents.
8284 /// </summary>
8385 public ImmArray ( params ReadOnlySpan < T > data ) {
8486 this . data = data . ToArray ( ) ;
8587 }
88+ #endif
8689
8790 public ReadOnlySpan < T > Span => this . data ;
8891
You can’t perform that action at this time.
0 commit comments