@@ -13,72 +13,72 @@ internal static class StaticChecks
1313 /// <summary>
1414 /// Cache for all IContentCheck types
1515 /// </summary>
16- public static List < IContentCheck > ContentCheckClasses
16+ public static IContentCheck [ ] ContentCheckClasses
1717 {
1818 get
1919 {
2020 contentCheckClasses ??= InitCheckClasses < IContentCheck > ( ) ;
21- return contentCheckClasses ?? [ ] ;
21+ return contentCheckClasses ;
2222 }
2323 }
2424
2525 /// <summary>
2626 /// Cache for all IExecutableCheck<LinearExecutable> types
2727 /// </summary>
28- public static List < IExecutableCheck < LinearExecutable > > LinearExecutableCheckClasses
28+ public static IExecutableCheck < LinearExecutable > [ ] LinearExecutableCheckClasses
2929 {
3030 get
3131 {
3232 linearExecutableCheckClasses ??= InitCheckClasses < IExecutableCheck < LinearExecutable > > ( ) ;
33- return linearExecutableCheckClasses ?? [ ] ;
33+ return linearExecutableCheckClasses ;
3434 }
3535 }
3636
3737 /// <summary>
3838 /// Cache for all IExecutableCheck<MSDOS> types
3939 /// </summary>
40- public static List < IExecutableCheck < MSDOS > > MSDOSExecutableCheckClasses
40+ public static IExecutableCheck < MSDOS > [ ] MSDOSExecutableCheckClasses
4141 {
4242 get
4343 {
4444 msdosExecutableCheckClasses ??= InitCheckClasses < IExecutableCheck < MSDOS > > ( ) ;
45- return msdosExecutableCheckClasses ?? [ ] ;
45+ return msdosExecutableCheckClasses ;
4646 }
4747 }
4848
4949 /// <summary>
5050 /// Cache for all IExecutableCheck<NewExecutable> types
5151 /// </summary>
52- public static List < IExecutableCheck < NewExecutable > > NewExecutableCheckClasses
52+ public static IExecutableCheck < NewExecutable > [ ] NewExecutableCheckClasses
5353 {
5454 get
5555 {
5656 newExecutableCheckClasses ??= InitCheckClasses < IExecutableCheck < NewExecutable > > ( ) ;
57- return newExecutableCheckClasses ?? [ ] ;
57+ return newExecutableCheckClasses ;
5858 }
5959 }
6060
6161 /// <summary>
6262 /// Cache for all IPathCheck types
6363 /// </summary>
64- public static List < IPathCheck > PathCheckClasses
64+ public static IPathCheck [ ] PathCheckClasses
6565 {
6666 get
6767 {
6868 pathCheckClasses ??= InitCheckClasses < IPathCheck > ( ) ;
69- return pathCheckClasses ?? [ ] ;
69+ return pathCheckClasses ;
7070 }
7171 }
7272
7373 /// <summary>
7474 /// Cache for all IExecutableCheck<PortableExecutable> types
7575 /// </summary>
76- public static List < IExecutableCheck < PortableExecutable > > PortableExecutableCheckClasses
76+ public static IExecutableCheck < PortableExecutable > [ ] PortableExecutableCheckClasses
7777 {
7878 get
7979 {
8080 portableExecutableCheckClasses ??= InitCheckClasses < IExecutableCheck < PortableExecutable > > ( ) ;
81- return portableExecutableCheckClasses ?? [ ] ;
81+ return portableExecutableCheckClasses ;
8282 }
8383 }
8484
@@ -89,32 +89,32 @@ public static List<IExecutableCheck<PortableExecutable>> PortableExecutableCheck
8989 /// <summary>
9090 /// Cache for all IContentCheck types
9191 /// </summary>
92- private static List < IContentCheck > ? contentCheckClasses ;
92+ private static IContentCheck [ ] ? contentCheckClasses ;
9393
9494 /// <summary>
9595 /// Cache for all IExecutableCheck<LinearExecutable> types
9696 /// </summary>
97- private static List < IExecutableCheck < LinearExecutable > > ? linearExecutableCheckClasses ;
97+ private static IExecutableCheck < LinearExecutable > [ ] ? linearExecutableCheckClasses ;
9898
9999 /// <summary>
100100 /// Cache for all IExecutableCheck<MSDOS> types
101101 /// </summary>
102- private static List < IExecutableCheck < MSDOS > > ? msdosExecutableCheckClasses ;
102+ private static IExecutableCheck < MSDOS > [ ] ? msdosExecutableCheckClasses ;
103103
104104 /// <summary>
105105 /// Cache for all IExecutableCheck<NewExecutable> types
106106 /// </summary>
107- private static List < IExecutableCheck < NewExecutable > > ? newExecutableCheckClasses ;
107+ private static IExecutableCheck < NewExecutable > [ ] ? newExecutableCheckClasses ;
108108
109109 /// <summary>
110110 /// Cache for all IPathCheck types
111111 /// </summary>
112- private static List < IPathCheck > ? pathCheckClasses ;
112+ private static IPathCheck [ ] ? pathCheckClasses ;
113113
114114 /// <summary>
115115 /// Cache for all IExecutableCheck<PortableExecutable> types
116116 /// </summary>
117- private static List < IExecutableCheck < PortableExecutable > > ? portableExecutableCheckClasses ;
117+ private static IExecutableCheck < PortableExecutable > [ ] ? portableExecutableCheckClasses ;
118118
119119 #endregion
120120
@@ -123,13 +123,13 @@ public static List<IExecutableCheck<PortableExecutable>> PortableExecutableCheck
123123 /// <summary>
124124 /// Initialize all implementations of a type
125125 /// </summary>
126- private static List < T > ? InitCheckClasses < T > ( )
127- => InitCheckClasses < T > ( Assembly . GetExecutingAssembly ( ) ) ?? [ ] ;
126+ private static T [ ] InitCheckClasses < T > ( )
127+ => InitCheckClasses < T > ( Assembly . GetExecutingAssembly ( ) ) ;
128128
129129 /// <summary>
130130 /// Initialize all implementations of a type
131131 /// </summary>
132- private static List < T > InitCheckClasses < T > ( Assembly assembly )
132+ private static T [ ] InitCheckClasses < T > ( Assembly assembly )
133133 {
134134 // Get information from the type param
135135 string ? interfaceName = typeof ( T ) . FullName ;
@@ -174,7 +174,7 @@ private static List<T> InitCheckClasses<T>(Assembly assembly)
174174 classTypes . Add ( instance ) ;
175175 }
176176
177- return classTypes ;
177+ return [ .. classTypes ] ;
178178 }
179179
180180 #endregion
0 commit comments