44
55namespace HotChocolate . Internal ;
66
7- internal sealed partial class ExtendedType : IExtendedType
7+ /// <summary>
8+ /// The extended type provides addition type information about the underlying system type.
9+ /// </summary>
10+ public sealed partial class ExtendedType : IExtendedType
811{
912 internal static ImmutableHashSet < Type > NonEssentialWrapperTypes { get ; set ; } =
1013 [ typeof ( ValueTask < > ) , typeof ( Task < > ) , typeof ( NativeType < > ) , typeof ( Optional < > ) ] ;
@@ -38,7 +41,7 @@ private ExtendedType(
3841 Id = Helper . CreateIdentifier ( this ) ;
3942 }
4043
41- public ExtendedTypeId Id { get ; }
44+ internal ExtendedTypeId Id { get ; }
4245
4346 /// <inheritdoc />
4447 public Type Type { get ; }
@@ -76,11 +79,17 @@ private ExtendedType(
7679 /// <inheritdoc />
7780 public bool IsNullable { get ; }
7881
82+ /// <summary>
83+ /// Gets the generic type information.
84+ /// </summary>
7985 public IReadOnlyList < ExtendedType > TypeArguments { get ; }
8086
8187 /// <inheritdoc />
8288 IReadOnlyList < IExtendedType > IExtendedType . TypeArguments => TypeArguments ;
8389
90+ /// <summary>
91+ /// Gets the element type if <see cref="IsArrayOrList"/> is <c>true</c>.
92+ /// </summary>
8493 public ExtendedType ? ElementType { get ; }
8594
8695 /// <inheritdoc />
@@ -140,6 +149,7 @@ public override int GetHashCode()
140149 }
141150 }
142151
152+ /// <inheritdoc />
143153 public override string ToString ( )
144154 {
145155 string typeName ;
@@ -164,7 +174,7 @@ public override string ToString()
164174 return IsNullable ? typeName : typeName + "!" ;
165175 }
166176
167- public static ExtendedType FromType ( Type type , TypeCache cache )
177+ internal static ExtendedType FromType ( Type type , TypeCache cache )
168178 {
169179 ArgumentNullException . ThrowIfNull ( type ) ;
170180 ArgumentNullException . ThrowIfNull ( cache ) ;
@@ -182,7 +192,7 @@ private static ExtendedType FromTypeInternal(Type type, TypeCache cache) =>
182192 ? SchemaType . FromType ( type , cache )
183193 : SystemType . FromType ( type , cache ) ;
184194
185- public static ExtendedType FromMember ( MemberInfo member , TypeCache cache )
195+ internal static ExtendedType FromMember ( MemberInfo member , TypeCache cache )
186196 {
187197 ArgumentNullException . ThrowIfNull ( member ) ;
188198 ArgumentNullException . ThrowIfNull ( cache ) ;
@@ -195,14 +205,24 @@ public static ExtendedType FromMember(MemberInfo member, TypeCache cache)
195205 return Members . FromMember ( member , cache ) ;
196206 }
197207
198- public static ExtendedMethodInfo FromMethod ( MethodInfo method , TypeCache cache )
208+ internal static ExtendedMethodInfo FromMethod ( MethodInfo method , TypeCache cache )
199209 {
200210 ArgumentNullException . ThrowIfNull ( method ) ;
201211 ArgumentNullException . ThrowIfNull ( cache ) ;
202212
203213 return Members . FromMethod ( method , cache ) ;
204214 }
205215
216+ /// <summary>
217+ /// Registers generic type definitions that represent types that must be removed
218+ /// before a runtime type is translated to a GraphQL type.
219+ /// </summary>
220+ /// <param name="type">
221+ /// The generic type definition.
222+ /// </param>
223+ /// <exception cref="ArgumentException">
224+ /// type is null.
225+ /// </exception>
206226 public static void RegisterNonEssentialWrapperTypes ( Type type )
207227 {
208228 ArgumentNullException . ThrowIfNull ( type ) ;
0 commit comments