|
22 | 22 | </Interface>
|
23 | 23 | </Interfaces>
|
24 | 24 | <Docs>
|
25 |
| - <summary>To be added.</summary> |
26 |
| - <remarks>To be added.</remarks> |
| 25 | + <summary>Provides a <see cref="T:System.Reflection.Metadata.MetadataReader" /> for metadata stored in an array of bytes, a memory block, or a stream.</summary> |
| 26 | + <remarks> |
| 27 | + <format type="text/markdown"><![CDATA[ |
| 28 | +
|
| 29 | +## Remarks |
| 30 | +
|
| 31 | +`MetadataReaderProvider` supports the following formats: |
| 32 | +
|
| 33 | + - ECMA-335 CLI (Common Language Infrastructure) metadata (<xref:System.Reflection.Metadata.MetadataReaderProvider.FromMetadataImage(System.Byte*,System.Int32)>). |
| 34 | + - Edit and Continue metadata delta (<xref:System.Reflection.Metadata.MetadataReaderProvider.FromMetadataImage(System.Byte*,System.Int32)>). |
| 35 | + - Portable PDB metadata (<xref:System.Reflection.Metadata.MetadataReaderProvider.FromPortablePdbImage(System.Byte*,System.Int32)>). |
| 36 | +
|
| 37 | + ]]></format> |
| 38 | + </remarks> |
27 | 39 | </Docs>
|
28 | 40 | <Members>
|
29 | 41 | <Member MemberName="Dispose">
|
|
51 | 63 | <Parameters />
|
52 | 64 | <Docs>
|
53 | 65 | <summary>Disposes all memory allocated by the reader.</summary>
|
54 |
| - <remarks>To be added.</remarks> |
| 66 | + <remarks> |
| 67 | + <format type="text/markdown"><![CDATA[ |
| 68 | +
|
| 69 | +## Remarks |
| 70 | +
|
| 71 | +<xref:System.Reflection.Metadata.MetadataReaderProvider.Dispose> can be called multiple times (but not in parallel). |
| 72 | +
|
| 73 | +It is not safe to call <xref:System.Reflection.Metadata.MetadataReaderProvider.Dispose> in parallel with any other operation on the <xref:System.Reflection.Metadata.MetadataReaderProvider> or when reading from the underlying memory. |
| 74 | +
|
| 75 | + ]]></format> |
| 76 | + </remarks> |
55 | 77 | </Docs>
|
56 | 78 | </Member>
|
57 | 79 | <Member MemberName="FromMetadataImage">
|
|
80 | 102 | <param name="image">Metadata image.</param>
|
81 | 103 | <summary>Creates a provider over a byte array.</summary>
|
82 | 104 | <returns>The new provider.</returns>
|
83 |
| - <remarks>To be added.</remarks> |
| 105 | + <remarks> |
| 106 | + <format type="text/markdown"><![CDATA[ |
| 107 | +
|
| 108 | +## Remarks |
| 109 | +
|
| 110 | +The content of the image is not read during the construction of the <xref:System.Reflection.Metadata.MetadataReaderProvider>. |
| 111 | +
|
| 112 | + ]]></format> |
| 113 | + </remarks> |
84 | 114 | <exception cref="T:System.ArgumentNullException">
|
85 | 115 | <paramref name="image" /> is <see langword="null" />.</exception>
|
86 | 116 | </Docs>
|
|
112 | 142 | <param name="size">The size of the metadata blob.</param>
|
113 | 143 | <summary>Creates a metadata provider over an image stored in memory.</summary>
|
114 | 144 | <returns>The new metadata provider.</returns>
|
115 |
| - <remarks>To be added.</remarks> |
| 145 | + <remarks> |
| 146 | + <format type="text/markdown"><![CDATA[ |
| 147 | +
|
| 148 | +## Remarks |
| 149 | +
|
| 150 | +The memory is owned by the caller and is not released on disposal of the <xref:System.Reflection.Metadata.MetadataReaderProvider>. |
| 151 | +
|
| 152 | +The caller is responsible for keeping the memory alive and unmodified throughout the lifetime of the <xref:System.Reflection.Metadata.MetadataReaderProvider>. |
| 153 | +
|
| 154 | +The content of the blob is not read during the construction of the <xref:System.Reflection.Metadata.MetadataReaderProvider>. |
| 155 | +
|
| 156 | + ]]></format> |
| 157 | + </remarks> |
116 | 158 | <exception cref="T:System.ArgumentNullException">
|
117 | 159 | <paramref name="start" /> is <see cref="F:System.IntPtr.Zero" />.</exception>
|
118 | 160 | <exception cref="T:System.ArgumentOutOfRangeException">
|
@@ -192,7 +234,15 @@ If <xref:System.Reflection.Metadata.MetadataStreamOptions.PrefetchMetadata?displ
|
192 | 234 | <param name="image">A portable PDB image.</param>
|
193 | 235 | <summary>Creates a portable PDB metadata provider over a byte array.</summary>
|
194 | 236 | <returns>The new portable PDB metadata provider .</returns>
|
195 |
| - <remarks>To be added.</remarks> |
| 237 | + <remarks> |
| 238 | + <format type="text/markdown"><![CDATA[ |
| 239 | +
|
| 240 | +## Remarks |
| 241 | +
|
| 242 | +The content of the image is not read during the construction of the <xref:System.Reflection.Metadata.MetadataReaderProvider>. |
| 243 | +
|
| 244 | + ]]></format> |
| 245 | + </remarks> |
196 | 246 | <exception cref="T:System.ArgumentNullException">
|
197 | 247 | <paramref name="image" /> is <see langword="null" />.</exception>
|
198 | 248 | </Docs>
|
@@ -224,7 +274,19 @@ If <xref:System.Reflection.Metadata.MetadataStreamOptions.PrefetchMetadata?displ
|
224 | 274 | <param name="size">The size of the portable PDB blob.</param>
|
225 | 275 | <summary>Creates a portable PDB metadata provider over a blob stored in memory.</summary>
|
226 | 276 | <returns>The new portable PDB metadata provider.</returns>
|
227 |
| - <remarks>To be added.</remarks> |
| 277 | + <remarks> |
| 278 | + <format type="text/markdown"><![CDATA[ |
| 279 | +
|
| 280 | +## Remarks |
| 281 | +
|
| 282 | +The memory is owned by the caller and not released on disposal of the <xref:System.Reflection.Metadata.MetadataReaderProvider>. |
| 283 | +
|
| 284 | +The caller is responsible for keeping the memory alive and unmodified throughout the lifetime of the <xref:System.Reflection.Metadata.MetadataReaderProvider>. |
| 285 | +
|
| 286 | +The content of the blob is not read during the construction of the <xref:System.Reflection.Metadata.MetadataReaderProvider>. |
| 287 | +
|
| 288 | + ]]></format> |
| 289 | + </remarks> |
228 | 290 | <exception cref="T:System.ArgumentNullException">
|
229 | 291 | <paramref name="start" /> is <see cref="F:System.IntPtr.Zero" />.</exception>
|
230 | 292 | <exception cref="T:System.ArgumentOutOfRangeException">
|
@@ -306,7 +368,17 @@ If <xref:System.Reflection.Metadata.MetadataStreamOptions.PrefetchMetadata?displ
|
306 | 368 | <param name="utf8Decoder">The encoding to use.</param>
|
307 | 369 | <summary>Gets a <see cref="T:System.Reflection.Metadata.MetadataReader" /> from a <see cref="T:System.Reflection.Metadata.MetadataReaderProvider" />.</summary>
|
308 | 370 | <returns>A <see cref="T:System.Reflection.Metadata.MetadataReader" /> instance..</returns>
|
309 |
| - <remarks>To be added.</remarks> |
| 371 | + <remarks> |
| 372 | + <format type="text/markdown"><![CDATA[ |
| 373 | +
|
| 374 | +## Remarks |
| 375 | +
|
| 376 | +The caller must keep the <xref:System.Reflection.Metadata.MetadataReaderProvider> undisposed throughout the lifetime of the metadata reader. |
| 377 | +
|
| 378 | +If this method is called multiple times, each call with arguments equal to the arguments passed to the previous successful call returns the same instance of <xref:System.Reflection.Metadata.MetadataReader> as the previous call. |
| 379 | +
|
| 380 | + ]]></format> |
| 381 | + </remarks> |
310 | 382 | <exception cref="T:System.ArgumentException">The encoding of <paramref name="utf8Decoder" /> is not <see cref="T:System.Text.UTF8Encoding" />.</exception>
|
311 | 383 | <exception cref="T:System.PlatformNotSupportedException">The current platform is big-endian.</exception>
|
312 | 384 | <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
|
|
0 commit comments