[Tizen] Add BuildTools 2.1.0-rc1-02804-05
[platform/upstream/coreclr.git] / Tools / dotnetcli / sdk / NuGetFallbackFolder / system.reflection.metadata / 1.4.2 / lib / portable-net45+win8 / System.Reflection.Metadata.xml
1 <?xml version="1.0"?>
2 <doc>
3     <assembly>
4         <name>System.Reflection.Metadata</name>
5     </assembly>
6     <members>
7         <member name="T:System.Reflection.Internal.AbstractMemoryBlock">
8             <summary>
9             Represents a disposable blob of memory accessed via unsafe pointer.
10             </summary>
11         </member>
12         <member name="P:System.Reflection.Internal.AbstractMemoryBlock.Pointer">
13             <summary>
14             Pointer to the underlying data (not valid after disposal).
15             </summary>
16         </member>
17         <member name="P:System.Reflection.Internal.AbstractMemoryBlock.Size">
18             <summary>
19             Size of the block.
20             </summary>
21         </member>
22         <member name="M:System.Reflection.Internal.AbstractMemoryBlock.GetContentUnchecked(System.Int32,System.Int32)">
23             <summary>
24             Returns the content of the entire memory block. 
25             </summary>
26             <remarks>
27             Does not check bounds.
28             
29             Only creates a copy of the data if they are not represented by a managed byte array, 
30             or if the specified range doens't span the entire block.
31             </remarks>
32         </member>
33         <member name="M:System.Reflection.Internal.AbstractMemoryBlock.Dispose">
34             <summary>
35             Disposes the block. 
36             </summary>
37             <remarks>
38             The operation is idempotent, but must not be called concurrently with any other operations on the block
39             or with another call to Dispose.
40             
41             Using the block after dispose is an error in our code and therefore no effort is made to throw a tidy 
42             ObjectDisposedException and null ref or AV is possible.
43             </remarks>
44         </member>
45         <member name="T:System.Reflection.Internal.ByteArrayMemoryBlock">
46             <summary>
47             Represents a memory block backed by an array of bytes.
48             </summary>
49         </member>
50         <member name="T:System.Reflection.Internal.ExternalMemoryBlock">
51             <summary>
52             Class representing raw memory but not owning the memory.
53             </summary>
54         </member>
55         <member name="T:System.Reflection.Internal.ExternalMemoryBlockProvider">
56             <summary>
57             Represents raw memory owned by an external object. 
58             </summary>
59         </member>
60         <member name="M:System.Reflection.Internal.MemoryBlockProvider.GetMemoryBlock">
61             <summary>
62             Creates and hydrates a memory block representing all data.
63             </summary>
64             <exception cref="T:System.IO.IOException">Error while reading from the memory source.</exception>
65         </member>
66         <member name="M:System.Reflection.Internal.MemoryBlockProvider.GetMemoryBlock(System.Int32,System.Int32)">
67             <summary>
68             Creates and hydrates a memory block representing data in the specified range.
69             </summary>
70             <param name="start">Starting offset relative to the beginning of the data represented by this provider.</param>
71             <param name="size">Size of the resulting block.</param>
72             <exception cref="T:System.IO.IOException">Error while reading from the memory source.</exception>
73         </member>
74         <member name="M:System.Reflection.Internal.MemoryBlockProvider.GetMemoryBlockImpl(System.Int32,System.Int32)">
75             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
76         </member>
77         <member name="M:System.Reflection.Internal.MemoryBlockProvider.GetStream(System.Reflection.Internal.StreamConstraints@)">
78             <summary>
79             Gets a seekable and readable <see cref="T:System.IO.Stream"/> that can be used to read all data.
80             The operations on the stream has to be done under a lock of <see cref="F:System.Reflection.Internal.StreamConstraints.GuardOpt"/> if non-null.
81             The image starts at <see cref="F:System.Reflection.Internal.StreamConstraints.ImageStart"/> and has size <see cref="F:System.Reflection.Internal.StreamConstraints.ImageSize"/>.
82             It is the caller's responsibility not to read outside those bounds.
83             </summary>
84         </member>
85         <member name="P:System.Reflection.Internal.MemoryBlockProvider.Size">
86             <summary>
87             The size of the data.
88             </summary>
89         </member>
90         <member name="T:System.Reflection.Internal.NativeHeapMemoryBlock">
91             <summary>
92             Represents memory block allocated on native heap.
93             </summary>
94             <remarks>
95             Owns the native memory resource.
96             </remarks>
97         </member>
98         <member name="T:System.Reflection.Internal.StreamMemoryBlockProvider">
99             <summary>
100             Represents data read from a stream.
101             </summary>
102             <remarks>
103             Uses memory map to load data from streams backed by files that are bigger than <see cref="F:System.Reflection.Internal.StreamMemoryBlockProvider.MemoryMapThreshold"/>.
104             </remarks>
105         </member>
106         <member name="M:System.Reflection.Internal.StreamMemoryBlockProvider.ReadMemoryBlockNoLock(System.IO.Stream,System.Boolean,System.Int64,System.Int32)">
107             <exception cref="T:System.IO.IOException">Error reading from the stream.</exception>
108         </member>
109         <member name="M:System.Reflection.Internal.StreamMemoryBlockProvider.GetMemoryBlockImpl(System.Int32,System.Int32)">
110             <exception cref="T:System.IO.IOException">Error while reading from the stream.</exception>
111         </member>
112         <member name="M:System.Reflection.Internal.StreamMemoryBlockProvider.TryCreateMemoryMappedFileBlock(System.Int64,System.Int32,System.Reflection.Internal.MemoryMappedFileBlock@)">
113             <exception cref="T:System.IO.IOException">IO error while mapping memory or not enough memory to create the mapping.</exception>
114         </member>
115         <member name="T:System.Reflection.Internal.EncodingHelper">
116              <summary>
117              Provides helpers to decode strings from unmanaged memory to System.String while avoiding
118              intermediate allocation.
119              
120              This has three components:
121              
122                (1) Light-up Encoding.GetString(byte*, int) via reflection and resurface it as extension 
123                    method. 
124             
125                    This is a new API that will provide API convergence across all platforms for 
126                    this scenario. It is already on .NET 4.6+ and ASP.NET vNext, but not yet available 
127                    on every platform we support. See below for how we fall back.
128             
129                (2) Deal with WinRT prefixes. 
130             
131                   When reading managed winmds with projections enabled, the metadata   reader needs to prepend 
132                   a WinRT prefix in some case . Doing this without allocation poses a problem
133                   as we don't have the prefix and input in contiguous data that we can pass to the
134                   Encoding.GetString. We handle this case using pooled managed scratch buffers where we copy
135                   the prefix and input and decode using Encoding.GetString(byte[], int, int).
136             
137                (3) Deal with platforms that don't yet have Encoding.GetString(byte*, int). 
138                
139                   If we're running on a full framework earlier than 4.6, we will bind to the internal
140                   String.CreateStringFromEncoding which is equivalent and Encoding.GetString is just a trivial 
141                   wrapper around it in .NET 4.6. This means that we always have the fast path on every
142                   full framework version we support.
143             
144                   If we can't bind to it via reflection, then we emulate it using what is effectively (2) and 
145                   with an empty prefix. 
146             
147              For both (2) and (3), the pooled buffers have a fixed size deemed large enough for the
148              vast majority of metadata strings. In the rare worst case (byteCount > threshold and
149              (lightUpAttemptFailed || prefix != null), we give up and allocate a temporary array,
150              copy to it, decode, and throw it away.
151              </summary>
152         </member>
153         <member name="F:System.Reflection.Internal.Hash.FnvOffsetBias">
154             <summary>
155             The offset bias value used in the FNV-1a algorithm
156             See http://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function
157             </summary>
158         </member>
159         <member name="F:System.Reflection.Internal.Hash.FnvPrime">
160             <summary>
161             The generative factor used in the FNV-1a algorithm
162             See http://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function
163             </summary>
164         </member>
165         <member name="M:System.Reflection.Internal.Hash.GetFNVHashCode(System.Byte[])">
166             <summary>
167             Compute the FNV-1a hash of a sequence of bytes
168             See http://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function
169             </summary>
170             <param name="data">The sequence of bytes</param>
171             <returns>The FNV-1a hash of <paramref name="data"/></returns>
172         </member>
173         <member name="M:System.Reflection.Internal.Hash.GetFNVHashCode(System.Collections.Immutable.ImmutableArray{System.Byte})">
174             <summary>
175             Compute the FNV-1a hash of a sequence of bytes
176             See http://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function
177             </summary>
178             <param name="data">The sequence of bytes</param>
179             <returns>The FNV-1a hash of <paramref name="data"/></returns>
180         </member>
181         <member name="T:System.Reflection.Internal.ImmutableByteArrayInterop">
182              <summary>
183              Provides tools for using <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> in interop scenarios.
184              </summary>
185              <remarks>
186              *** WARNING *** 
187              
188              If you decide to copy this code elsewhere, please retain the documentation here
189              and the Dangerous prefixes in the API names. This will help track down and audit
190              other places where this technique (with dangerous consequences when misused) may
191              be applied.
192             
193              A generic version of this API was once public in a pre-release of immutable 
194              collections, but  it was deemed to be too subject to abuse when available publicly.
195              
196              This implementation is scoped to byte arrays as that is all that the metadata reader needs.
197              
198              Also, since we don't have access to immutable collection internals, we use a trick involving
199              overlapping a <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> with a <see cref="T:Byte[]"/> refer. While
200              unverifiable, it is valid. See ECMA-335, section II.10.7 Controlling instance layout:
201              
202              "It is possible to overlap fields in this way, though offsets occupied by an object reference 
203              shall not overlap with offsets occupied by a built-in value type or a part of
204              another object reference. While one object reference can completely overlap another, this is
205              unverifiable."
206              
207              Furthermore, the fact that <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> backed by a single <see cref="T:Byte[]"/> 
208              field is something inherent to the design of ImmutableArray in order to get its performance
209              characteristics and therefore something we (Microsoft) are comfortable defining as a contract that 
210              can be depended upon as below.
211              </remarks>
212         </member>
213         <member name="M:System.Reflection.Internal.ImmutableByteArrayInterop.DangerousCreateFromUnderlyingArray(System.Byte[]@)">
214             <summary>
215             Creates a new instance of <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> using a given mutable array as the backing
216             field, without creating a defensive copy. It is the responsibility of the caller to ensure no other mutable 
217             references exist to the array.  Do not mutate the array after calling this method.
218             </summary>
219             <param name="array">The mutable array to use as the backing field. The incoming reference is set to null 
220             since it should not be retained by the caller.</param>
221             <remarks>
222             Users of this method should take extra care to ensure that the mutable array given as a parameter
223             is never modified. The returned <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> will use the given array as its backing
224             field without creating a defensive copy, so changes made to the given mutable array will be observable
225             on the returned <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>.  Instance and static methods of <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>
226             and <see cref="T:System.Collections.Immutable.ImmutableArray"/> may malfunction if they operate on an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> instance
227             whose underlying backing field is modified. 
228             </remarks>
229             <returns>An immutable array.</returns>
230         </member>
231         <member name="M:System.Reflection.Internal.ImmutableByteArrayInterop.DangerousGetUnderlyingArray(System.Collections.Immutable.ImmutableArray{System.Byte})">
232             <summary>
233             Access the backing mutable array instance for the given <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>, without
234             creating a defensive copy.  It is the responsibility of the caller to ensure the array is not modified
235             through the returned mutable reference.  Do not mutate the returned array.
236             </summary>
237             <param name="array">The <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> from which to retrieve the backing field.</param>
238             <remarks>
239             Users of this method should take extra care to ensure that the returned mutable array is never modified.
240             The returned mutable array continues to be used as the backing field of the given <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>
241             without creating a defensive copy, so changes made to the returned mutable array will be observable
242             on the given <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>.  Instance and static methods of <see cref="T:System.Collections.Immutable.ImmutableArray`1"/>
243             and <see cref="T:System.Collections.Immutable.ImmutableArray"/> may malfunction if they operate on an <see cref="T:System.Collections.Immutable.ImmutableArray`1"/> instance
244             whose underlying backing field is modified. 
245             </remarks>
246             <returns>The underlying array, or null if <see cref="P:System.Collections.Immutable.ImmutableArray`1.IsDefault"/> is true.</returns>
247         </member>
248         <member name="M:System.Reflection.Internal.MemoryBlock.PeekCompressedInteger(System.Int32,System.Int32@)">
249             <summary>
250             Decodes a compressed integer value starting at offset. 
251             See Metadata Specification section II.23.2: Blobs and signatures.
252             </summary>
253             <param name="offset">Offset to the start of the compressed data.</param>
254             <param name="numberOfBytesRead">Bytes actually read.</param>
255             <returns>
256             Value between 0 and 0x1fffffff, or <see cref="F:System.Reflection.Metadata.BlobReader.InvalidCompressedInteger"/> if the value encoding is invalid.
257             </returns>
258         </member>
259         <member name="M:System.Reflection.Internal.MemoryBlock.PeekUtf8NullTerminated(System.Int32,System.Byte[],System.Reflection.Metadata.MetadataStringDecoder,System.Int32@,System.Char)">
260             <summary>
261             Read UTF8 at the given offset up to the given terminator, null terminator, or end-of-block.
262             </summary>
263             <param name="offset">Offset in to the block where the UTF8 bytes start.</param>
264             <param name="prefix">UTF8 encoded prefix to prepend to the bytes at the offset before decoding.</param>
265             <param name="utf8Decoder">The UTF8 decoder to use that allows user to adjust fallback and/or reuse existing strings without allocating a new one.</param>
266             <param name="numberOfBytesRead">The number of bytes read, which includes the terminator if we did not hit the end of the block.</param>
267             <param name="terminator">A character in the ASCII range that marks the end of the string. 
268             If a value other than '\0' is passed we still stop at the null terminator if encountered first.</param>
269             <returns>The decoded string.</returns>
270         </member>
271         <member name="M:System.Reflection.Internal.MemoryBlock.GetUtf8NullTerminatedLength(System.Int32,System.Int32@,System.Char)">
272             <summary>
273             Get number of bytes from offset to given terminator, null terminator, or end-of-block (whichever comes first).
274             Returned length does not include the terminator, but numberOfBytesRead out parameter does.
275             </summary>
276             <param name="offset">Offset in to the block where the UTF8 bytes start.</param>
277             <param name="terminator">A character in the ASCII range that marks the end of the string. 
278             If a value other than '\0' is passed we still stop at the null terminator if encountered first.</param>
279             <param name="numberOfBytesRead">The number of bytes read, which includes the terminator if we did not hit the end of the block.</param>
280             <returns>Length (byte count) not including terminator.</returns>
281         </member>
282         <member name="M:System.Reflection.Internal.MemoryBlock.BinarySearchForSlot(System.Int32,System.Int32,System.Int32,System.UInt32,System.Boolean)">
283             <summary>
284             In a table that specifies children via a list field (e.g. TypeDef.FieldList, TypeDef.MethodList), 
285             searches for the parent given a reference to a child.
286             </summary>
287             <returns>Returns row number [0..RowCount).</returns>
288         </member>
289         <member name="M:System.Reflection.Internal.MemoryBlock.BinarySearchReference(System.Int32,System.Int32,System.Int32,System.UInt32,System.Boolean)">
290             <summary>
291             In a table ordered by a column containing entity references searches for a row with the specified reference.
292             </summary>
293             <returns>Returns row number [0..RowCount) or -1 if not found.</returns>
294         </member>
295         <member name="M:System.Reflection.Internal.MemoryBlock.BinarySearchReferenceRange(System.Int32,System.Int32,System.Int32,System.UInt32,System.Boolean,System.Int32@,System.Int32@)">
296             <summary>
297             Calculates a range of rows that have specified value in the specified column in a table that is sorted by that column.
298             </summary>
299         </member>
300         <member name="M:System.Reflection.Internal.MemoryBlock.BinarySearchReferenceRange(System.Int32[],System.Int32,System.Int32,System.UInt32,System.Boolean,System.Int32@,System.Int32@)">
301             <summary>
302             Calculates a range of rows that have specified value in the specified column in a table that is sorted by that column.
303             </summary>
304         </member>
305         <member name="T:System.Reflection.Internal.PooledStringBuilder">
306             <summary>
307             The usage is:
308                    var inst = PooledStringBuilder.GetInstance();
309                    var sb = inst.builder;
310                    ... Do Stuff...
311                    ... sb.ToString() ...
312                    inst.Free();
313             </summary>
314         </member>
315         <member name="T:System.Reflection.Internal.ObjectPool`1">
316             <summary>
317             Generic implementation of object pooling pattern with predefined pool size limit. The main
318             purpose is that limited number of frequently used objects can be kept in the pool for
319             further recycling.
320             
321             Notes: 
322             1) it is not the goal to keep all returned objects. Pool is not meant for storage. If there
323                is no space in the pool, extra returned objects will be dropped.
324             
325             2) it is implied that if object was obtained from a pool, the caller will return it back in
326                a relatively short time. Keeping checked out objects for long durations is ok, but 
327                reduces usefulness of pooling. Just new up your own.
328             
329             Not returning objects to the pool in not detrimental to the pool's work, but is a bad practice. 
330             Rationale: 
331                If there is no intent for reusing the object, do not use pool - just use "new". 
332             </summary>
333         </member>
334         <member name="M:System.Reflection.Internal.ObjectPool`1.Allocate">
335             <summary>
336             Produces an instance.
337             </summary>
338             <remarks>
339             Search strategy is a simple linear probing which is chosen for it cache-friendliness.
340             Note that Free will try to store recycled objects close to the start thus statistically 
341             reducing how far we will typically search.
342             </remarks>
343         </member>
344         <member name="M:System.Reflection.Internal.ObjectPool`1.Free(`0)">
345             <summary>
346             Returns objects to the pool.
347             </summary>
348             <remarks>
349             Search strategy is a simple linear probing which is chosen for it cache-friendliness.
350             Note that Free will try to store recycled objects close to the start thus statistically 
351             reducing how far we will typically search in Allocate.
352             </remarks>
353         </member>
354         <member name="M:System.Reflection.Internal.StreamExtensions.CopyTo(System.IO.Stream,System.Byte*,System.Int32)">
355             <summary>
356             Copies specified amount of data from given stream to a target memory pointer.
357             </summary>
358             <exception cref="T:System.IO.IOException">unexpected stream end.</exception>
359         </member>
360         <member name="M:System.Reflection.Internal.StreamExtensions.TryReadAll(System.IO.Stream,System.Byte[],System.Int32,System.Int32)">
361             <summary>
362             Attempts to read all of the requested bytes from the stream into the buffer
363             </summary>
364             <returns>
365             The number of bytes read. Less than <paramref name="count" /> will
366             only be returned if the end of stream is reached before all bytes can be read.
367             </returns>
368             <remarks>
369             Unlike <see cref="M:System.IO.Stream.Read(System.Byte[],System.Int32,System.Int32)"/> it is not guaranteed that
370             the stream position or the output buffer will be unchanged if an exception is
371             returned.
372             </remarks>
373         </member>
374         <member name="M:System.Reflection.Internal.StreamExtensions.GetAndValidateSize(System.IO.Stream,System.Int32,System.String)">
375             <summary>
376             Resolve image size as either the given user-specified size or distance from current position to end-of-stream.
377             Also performs the relevant argument validation and publicly visible caller has same argument names.
378             </summary>
379             <exception cref="T:System.ArgumentException">size is 0 and distance from current position to end-of-stream can't fit in Int32.</exception>
380             <exception cref="T:System.ArgumentOutOfRangeException">Size is negative or extends past the end-of-stream from current position.</exception>
381         </member>
382         <member name="M:System.Reflection.Metadata.PathUtilities.IndexOfFileName(System.String)">
383             <summary>
384             Returns the position in given path where the file name starts.
385             </summary>
386             <returns>-1 if path is null.</returns>
387         </member>
388         <member name="M:System.Reflection.Metadata.PathUtilities.GetFileName(System.String,System.Boolean)">
389             <summary>
390             Get file name from path.
391             </summary>
392             <remarks>Unlike <see cref="M:System.IO.Path.GetFileName(System.String)"/> doesn't check for invalid path characters.</remarks>
393         </member>
394         <member name="T:System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder">
395             <summary>
396             Encodes method body stream.
397             </summary>
398         </member>
399         <member name="M:System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder.AddMethodBody(System.Int32,System.Int32,System.Int32,System.Boolean,System.Reflection.Metadata.StandaloneSignatureHandle,System.Reflection.Metadata.Ecma335.MethodBodyAttributes)">
400             <summary>
401             Encodes a method body and adds it to the method body stream.
402             </summary>
403             <param name="codeSize">Number of bytes to be reserved for instructions.</param>
404             <param name="maxStack">Max stack.</param>
405             <param name="exceptionRegionCount">Number of exception regions.</param>
406             <param name="hasSmallExceptionRegions">True if the exception regions should be encoded in 'small' format.</param>
407             <param name="localVariablesSignature">Local variables signature handle.</param>
408             <param name="attributes">Attributes.</param>
409             <returns>The offset of the encoded body within the method body stream.</returns>
410             <exception cref="T:System.ArgumentOutOfRangeException">
411             <paramref name="codeSize"/>, <paramref name="exceptionRegionCount"/>, or <paramref name="maxStack"/> is out of allowed range.
412             </exception>
413         </member>
414         <member name="P:System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder.MethodBody.Offset">
415             <summary>
416             Offset of the encoded method body in method body stream.
417             </summary>
418         </member>
419         <member name="P:System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder.MethodBody.Instructions">
420             <summary>
421             Blob reserved for instructions.
422             </summary>
423         </member>
424         <member name="P:System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder.MethodBody.ExceptionRegions">
425             <summary>
426             Use to encode exception regions to the method body.
427             </summary>
428         </member>
429         <member name="M:System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder.AddMethodBody(System.Reflection.Metadata.Ecma335.InstructionEncoder,System.Int32,System.Reflection.Metadata.StandaloneSignatureHandle,System.Reflection.Metadata.Ecma335.MethodBodyAttributes)">
430             <summary>
431             Encodes a method body and adds it to the method body stream.
432             </summary>
433             <param name="instructionEncoder">Instruction encoder.</param>
434             <param name="maxStack">Max stack.</param>
435             <param name="localVariablesSignature">Local variables signature handle.</param>
436             <param name="attributes">Attributes.</param>
437             <returns>The offset of the encoded body within the method body stream.</returns>
438             <exception cref="T:System.ArgumentNullException"><paramref name="instructionEncoder"/> has default value.</exception>
439             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="maxStack"/> is out of range [0, <see cref="F:System.UInt16.MaxValue"/>].</exception>
440             <exception cref="T:System.InvalidOperationException">
441             A label targeted by a branch in the instruction stream has not been marked,
442             or the distance between a branch instruction and the target label is doesn't fit the size of the instruction operand.
443             </exception>
444         </member>
445         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.SetCapacity(System.Reflection.Metadata.Ecma335.TableIndex,System.Int32)">
446             <summary>
447             Sets the capacity of the specified table. 
448             </summary>
449             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="table"/> is not a valid table index.</exception>
450             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="rowCount"/> is negative.</exception>
451             <remarks>
452             Use to reduce allocations if the approximate number of rows is known ahead of time.
453             </remarks>
454         </member>
455         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetRowCount(System.Reflection.Metadata.Ecma335.TableIndex)">
456             <summary>
457             Returns the current number of entires in the specified table.
458             </summary>
459             <param name="table">Table index.</param>
460             <returns>The number of entires in the table.</returns>
461             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="table"/> is not a valid table index.</exception>
462         </member>
463         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetRowCounts">
464             <summary>
465             Returns the current number of entires in each table.
466             </summary>
467             <returns>
468             An array of size <see cref="F:System.Reflection.Metadata.Ecma335.MetadataTokens.TableCount"/> with each item filled with the current row count of the corresponding table.
469             </returns>
470         </member>
471         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddTypeDefinition(System.Reflection.TypeAttributes,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.FieldDefinitionHandle,System.Reflection.Metadata.MethodDefinitionHandle)">
472             <summary>
473             Adds a type definition.
474             </summary>
475             <param name="attributes">Attributes</param>
476             <param name="namespace">Namespace</param>
477             <param name="name">Type name</param>
478             <param name="baseType"><see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>, <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/> or nil.</param>
479             <param name="fieldList">
480             If the type declares fields the handle of the first one, otherwise the handle of the first field declared by the next type definition.
481             If no type defines any fields in the module, <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.FieldDefinitionHandle(System.Int32)"/>(1).
482             </param>
483             <param name="methodList">
484             If the type declares methods the handle of the first one, otherwise the handle of the first method declared by the next type definition.
485             If no type defines any methods in the module, <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.MethodDefinitionHandle(System.Int32)"/>(1).
486             </param>
487             <exception cref="T:System.ArgumentException"><paramref name="baseType"/> doesn't have the expected handle kind.</exception>
488         </member>
489         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddTypeLayout(System.Reflection.Metadata.TypeDefinitionHandle,System.UInt16,System.UInt32)">
490             <summary>
491             Defines a type layout of a type definition.
492             </summary>
493             <param name="type">Type definition.</param>
494             <param name="packingSize">
495             Specifies that fields should be placed within the type instance at byte addresses which are a multiple of the value, 
496             or at natural alignment for that field type, whichever is smaller. Shall be one of the following: 0, 1, 2, 4, 8, 16, 32, 64, or 128. 
497             A value of zero indicates that the packing size used should match the default for the current platform.
498             </param>
499             <param name="size">
500             Indicates a minimum size of the type instance, and is intended to allow for padding. 
501             The amount of memory allocated is the maximum of the size calculated from the layout and <paramref name="size"/>. 
502             Note that if this directive applies to a value type, then the size shall be less than 1 MB.
503             </param>
504             <remarks>
505             Entires must be added in the same order as the corresponding type definitions.
506             </remarks>
507         </member>
508         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddInterfaceImplementation(System.Reflection.Metadata.TypeDefinitionHandle,System.Reflection.Metadata.EntityHandle)">
509             <summary>
510             Adds an interface implementation to a type.
511             </summary>
512             <param name="type">The type implementing the interface.</param>
513             <param name="implementedInterface">
514             The interface being implemented: 
515             <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/> or <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>.
516             </param>
517             <remarks>
518             Interface implementations must be added in the same order as the corresponding type definitions implementing the interface.
519             If a type implements multiple interfaces the corresponding entries must be added in the order determined by their coded indices (<see cref="M:System.Reflection.Metadata.Ecma335.CodedIndex.TypeDefOrRefOrSpec(System.Reflection.Metadata.EntityHandle)"/>).
520             </remarks>
521             <exception cref="T:System.ArgumentException"><paramref name="implementedInterface"/> doesn't have the expected handle kind.</exception>
522         </member>
523         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddNestedType(System.Reflection.Metadata.TypeDefinitionHandle,System.Reflection.Metadata.TypeDefinitionHandle)">
524             <summary>
525             Defines a nesting relationship to specified type definitions.
526             </summary>
527             <param name="type">The nested type definition handle.</param>
528             <param name="enclosingType">The enclosing type definition handle.</param>
529             <remarks>
530             Entries must be added in the same order as the corresponding nested type definitions.
531             </remarks>
532         </member>
533         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddTypeReference(System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.StringHandle)">
534             <summary>
535             Add a type reference.
536             </summary>
537             <param name="resolutionScope">
538             The entity declaring the target type: 
539             <see cref="T:System.Reflection.Metadata.ModuleDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.ModuleReferenceHandle"/>, <see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>, or nil.
540             </param>
541             <param name="namespace">Namespace.</param>
542             <param name="name">Type name.</param>
543             <exception cref="T:System.ArgumentException"><paramref name="resolutionScope"/> doesn't have the expected handle kind.</exception>
544         </member>
545         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddProperty(System.Reflection.PropertyAttributes,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.BlobHandle)">
546             <summary>
547             Adds a property defintion.
548             </summary>
549             <param name="attributes">Attributes</param>
550             <param name="name">Name</param>
551             <param name="signature">Signature of the property.</param>
552         </member>
553         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddEvent(System.Reflection.EventAttributes,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.EntityHandle)">
554             <summary>
555             Adds an event defintion.
556             </summary>
557             <param name="attributes">Attributes</param>
558             <param name="name">Name</param>
559             <param name="type">Type of the event: <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>, or <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/></param>
560             <exception cref="T:System.ArgumentException"><paramref name="type"/> doesn't have the expected handle kind.</exception>
561         </member>
562         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddConstant(System.Reflection.Metadata.EntityHandle,System.Object)">
563             <summary>
564             Adds a default value for a parameter, field or property.
565             </summary>
566             <param name="parent"><see cref="T:System.Reflection.Metadata.ParameterHandle"/>, <see cref="T:System.Reflection.Metadata.FieldDefinitionHandle"/>, or <see cref="T:System.Reflection.Metadata.PropertyDefinitionHandle"/></param>
567             <param name="value">The constant value.</param>
568             <remarks>
569             Entries may be added in any order. The table is automatically sorted when serialized.
570             </remarks>
571             <exception cref="T:System.ArgumentException"><paramref name="parent"/> doesn't have the expected handle kind.</exception>
572         </member>
573         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddMethodSemantics(System.Reflection.Metadata.EntityHandle,System.Reflection.MethodSemanticsAttributes,System.Reflection.Metadata.MethodDefinitionHandle)">
574             <summary>
575             Associates a method (a getter, a setter, an adder, etc.) with a property or an event.
576             </summary>
577             <param name="association"><see cref="T:System.Reflection.Metadata.EventDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.PropertyDefinitionHandle"/>.</param>
578             <param name="semantics">Semantics.</param>
579             <param name="methodDefinition">Method definition.</param>
580             <exception cref="T:System.ArgumentException"><paramref name="association"/> doesn't have the expected handle kind.</exception>
581             <remarks>
582             Entries may be added in any order. The table is automatically sorted when serialized.
583             </remarks>
584         </member>
585         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddCustomAttribute(System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.BlobHandle)">
586             <summary>
587             Add a custom attribute.
588             </summary>
589             <param name="parent">
590             An entity to attach the custom attribute to: 
591             <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/>,
592             <see cref="T:System.Reflection.Metadata.FieldDefinitionHandle"/>,
593             <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>,
594             <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>,
595             <see cref="T:System.Reflection.Metadata.ParameterHandle"/>,
596             <see cref="T:System.Reflection.Metadata.InterfaceImplementationHandle"/>,
597             <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/>,
598             <see cref="T:System.Reflection.Metadata.ModuleDefinitionHandle"/>,
599             <see cref="T:System.Reflection.Metadata.DeclarativeSecurityAttributeHandle"/>,
600             <see cref="T:System.Reflection.Metadata.PropertyDefinitionHandle"/>,
601             <see cref="T:System.Reflection.Metadata.EventDefinitionHandle"/>,
602             <see cref="T:System.Reflection.Metadata.StandaloneSignatureHandle"/>,
603             <see cref="T:System.Reflection.Metadata.ModuleReferenceHandle"/>,
604             <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>,
605             <see cref="T:System.Reflection.Metadata.AssemblyDefinitionHandle"/>,
606             <see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/>,
607             <see cref="T:System.Reflection.Metadata.AssemblyFileHandle"/>,
608             <see cref="T:System.Reflection.Metadata.ExportedTypeHandle"/>,
609             <see cref="T:System.Reflection.Metadata.ManifestResourceHandle"/>,
610             <see cref="T:System.Reflection.Metadata.GenericParameterHandle"/>,
611             <see cref="T:System.Reflection.Metadata.GenericParameterConstraintHandle"/> or
612             <see cref="T:System.Reflection.Metadata.MethodSpecificationHandle"/>.
613             </param>
614             <param name="constructor">
615             Custom attribute constructor: <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/>
616             </param>
617             <param name="value">
618             Custom attribute value blob.
619             </param>
620             <remarks>
621             Entries may be added in any order. The table is automatically sorted when serialized.
622             </remarks>
623             <exception cref="T:System.ArgumentException"><paramref name="parent"/> doesn't have the expected handle kind.</exception>
624         </member>
625         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddMethodSpecification(System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.BlobHandle)">
626             <summary>
627             Adds a method specification (instantiation).
628             </summary>
629             <param name="method">Generic method: <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/></param>
630             <param name="instantiation">Instantiation blob encoding the generic arguments of the method.</param>
631             <exception cref="T:System.ArgumentException"><paramref name="method"/> doesn't have the expected handle kind.</exception>
632         </member>
633         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddParameter(System.Reflection.ParameterAttributes,System.Reflection.Metadata.StringHandle,System.Int32)">
634             <summary>
635             Adds a parameter definition.
636             </summary>
637             <param name="attributes"><see cref="T:System.Reflection.ParameterAttributes"/></param>
638             <param name="name">Parameter name (optional).</param>
639             <param name="sequenceNumber">Sequence number of the parameter. Value of 0 refers to the owner method's return type; its parameters are then numbered from 1 onwards.</param>
640             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="sequenceNumber"/> is greater than <see cref="F:System.UInt16.MaxValue"/>.</exception>
641         </member>
642         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddGenericParameter(System.Reflection.Metadata.EntityHandle,System.Reflection.GenericParameterAttributes,System.Reflection.Metadata.StringHandle,System.Int32)">
643             <summary>
644             Adds a generic parameter definition.
645             </summary>
646             <param name="parent">Parent entity handle: <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/></param>
647             <param name="attributes">Attributes.</param>
648             <param name="name">Parameter name.</param>
649             <param name="index">Zero-based parameter index.</param>
650             <remarks>
651             Generic parameters must be added in an order determined by the coded index of their parent entity (<see cref="M:System.Reflection.Metadata.Ecma335.CodedIndex.TypeOrMethodDef(System.Reflection.Metadata.EntityHandle)"/>).
652             Generic parameters with the same parent must be ordered by their <paramref name="index"/>.
653             </remarks>
654             <exception cref="T:System.ArgumentException"><paramref name="parent"/> doesn't have the expected handle kind.</exception>
655             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is greater than <see cref="F:System.UInt16.MaxValue"/>.</exception>
656         </member>
657         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddGenericParameterConstraint(System.Reflection.Metadata.GenericParameterHandle,System.Reflection.Metadata.EntityHandle)">
658             <summary>
659             Adds a type constraint to a generic parameter.
660             </summary>
661             <param name="genericParameter">Generic parameter to constrain.</param>
662             <param name="constraint">Type constraint: <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/> or <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/></param>
663             <exception cref="T:System.ArgumentException"><paramref name="genericParameter"/> doesn't have the expected handle kind.</exception>
664             <remarks>
665             Constraints must be added in the same order as the corresponding generic parameters.
666             </remarks>
667         </member>
668         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddFieldDefinition(System.Reflection.FieldAttributes,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.BlobHandle)">
669             <summary>
670             Adds a field definition.
671             </summary>
672             <param name="attributes">Field attributes.</param>
673             <param name="name">Field name.</param>
674             <param name="signature">Field signature. Use <see cref="M:System.Reflection.Metadata.Ecma335.BlobEncoder.FieldSignature"/> to construct the blob.</param>
675         </member>
676         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddFieldLayout(System.Reflection.Metadata.FieldDefinitionHandle,System.Int32)">
677             <summary>
678             Defines a field layout of a field definition.
679             </summary>
680             <param name="field">Field definition.</param>
681             <param name="offset">The byte offset of the field within the declaring type instance.</param>
682             <remarks>
683             Entires must be added in the same order as the corresponding field definitions.
684             </remarks>
685         </member>
686         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddMarshallingDescriptor(System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.BlobHandle)">
687             <summary>
688             Add marshalling information to a field or a parameter.
689             </summary>
690             <param name="parent"><see cref="T:System.Reflection.Metadata.ParameterHandle"/> or <see cref="T:System.Reflection.Metadata.FieldDefinitionHandle"/>.</param>
691             <param name="descriptor">Descriptor blob.</param>
692             <exception cref="T:System.ArgumentException"><paramref name="parent"/> doesn't have the expected handle kind.</exception>
693             <remarks>
694             Entries may be added in any order. The table is automatically sorted when serialized.
695             </remarks>
696         </member>
697         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddFieldRelativeVirtualAddress(System.Reflection.Metadata.FieldDefinitionHandle,System.Int32)">
698             <summary>
699             Adds a mapping from a field to its initial value stored in the PE image.
700             </summary>
701             <param name="field">Field definition handle.</param>
702             <param name="offset">
703             Offset within the block in the PE image that stores initial values of mapped fields (usually in .text section).
704             The final relative virtual address stored in the metadata is calculated when the metadata is serialized
705             by adding the offset to the virtual address of the block start.
706             </param>
707             <remarks>
708             Entires must be added in the same order as the corresponding field definitions.
709             </remarks>
710             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="offset"/> is negative.</exception>
711         </member>
712         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddMethodDefinition(System.Reflection.MethodAttributes,System.Reflection.MethodImplAttributes,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.BlobHandle,System.Int32,System.Reflection.Metadata.ParameterHandle)">
713             <summary>
714             Adds a method definition.
715             </summary>
716             <param name="attributes"><see cref="T:System.Reflection.MethodAttributes"/></param>
717             <param name="implAttributes"><see cref="T:System.Reflection.MethodImplAttributes"/></param>
718             <param name="name">Method name/</param>
719             <param name="signature">Method signature.</param>
720             <param name="bodyOffset">
721             Offset within the block in the PE image that stores method bodies (IL stream), 
722             or -1 if the method doesn't have a body.
723             
724             The final relative virtual address stored in the metadata is calculated when the metadata is serialized
725             by adding the offset to the virtual address of the beginning of the block.
726             </param>
727             <param name="parameterList">
728             If the method declares parameters in Params table the handle of the first one, otherwise the handle of the first parameter declared by the next method definition.
729             If no parameters are declared in the module, <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.ParameterHandle(System.Int32)"/>(1).
730             </param>
731             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="bodyOffset"/> is less than -1.</exception>
732         </member>
733         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddMethodImport(System.Reflection.Metadata.MethodDefinitionHandle,System.Reflection.MethodImportAttributes,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.ModuleReferenceHandle)">
734             <summary>
735             Adds import information to a method definition (P/Invoke).
736             </summary>
737             <param name="method">Method definition handle.</param>
738             <param name="attributes">Attributes.</param>
739             <param name="name">Unmanaged method name.</param>
740             <param name="module">Module containing the unmanaged method.</param>
741             <remarks>
742             Method imports must be added in the same order as the corresponding method definitions.
743             </remarks>
744         </member>
745         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddMethodImplementation(System.Reflection.Metadata.TypeDefinitionHandle,System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.EntityHandle)">
746             <summary>
747             Defines an implementation for a method declaration within a type.
748             </summary>
749             <param name="type">Type</param>
750             <param name="methodBody"><see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/> which provides the implementation.</param>
751             <param name="methodDeclaration"><see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/> the method being implemented.</param>
752             <remarks>
753             Method implementations must be added in the same order as the corresponding type definitions.
754             </remarks>
755             <exception cref="T:System.ArgumentException"><paramref name="methodBody"/> or <paramref name="methodDeclaration"/> doesn't have the expected handle kind.</exception>
756         </member>
757         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddMemberReference(System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.BlobHandle)">
758             <summary>
759             Adds a MemberRef table row.
760             </summary>
761             <param name="parent">Containing entity:
762             <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, 
763             <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>, 
764             <see cref="T:System.Reflection.Metadata.ModuleReferenceHandle"/>,
765             <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/>, or 
766             <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>.
767             </param>
768             <param name="name">Member name.</param>
769             <param name="signature">Member signature.</param>
770             <exception cref="T:System.ArgumentException"><paramref name="parent"/> doesn't have the expected handle kind.</exception>
771         </member>
772         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddManifestResource(System.Reflection.ManifestResourceAttributes,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.EntityHandle,System.UInt32)">
773             <summary>
774             Adds a manifest resource.
775             </summary>
776             <param name="attributes">Attributes</param>
777             <param name="name">Resource name</param>
778             <param name="implementation"><see cref="T:System.Reflection.Metadata.AssemblyFileHandle"/>, <see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/>, or nil</param>
779             <param name="offset">Specifies the byte offset within the referenced file at which this resource record begins.</param>
780             <exception cref="T:System.ArgumentException"><paramref name="implementation"/> doesn't have the expected handle kind.</exception>
781         </member>
782         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddExportedType(System.Reflection.TypeAttributes,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.EntityHandle,System.Int32)">
783             <summary>
784             Adds an exported type.
785             </summary>
786             <param name="attributes">Attributes</param>
787             <param name="namespace">Namespace</param>
788             <param name="name">Type name</param>
789             <param name="implementation"><see cref="T:System.Reflection.Metadata.AssemblyFileHandle"/>, <see cref="T:System.Reflection.Metadata.ExportedTypeHandle"/> or <see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/></param>
790             <param name="typeDefinitionId">Type definition id</param>
791             <exception cref="T:System.ArgumentException"><paramref name="implementation"/> doesn't have the expected handle kind.</exception>
792         </member>
793         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddDeclarativeSecurityAttribute(System.Reflection.Metadata.EntityHandle,System.Reflection.DeclarativeSecurityAction,System.Reflection.Metadata.BlobHandle)">
794             <summary>
795             Adds declarative security attribute to a type, method or an assembly.
796             </summary>
797             <param name="parent"><see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/>, or <see cref="T:System.Reflection.Metadata.AssemblyDefinitionHandle"/></param>
798             <param name="action">Security action</param>
799             <param name="permissionSet">Permission set blob.</param>
800             <exception cref="T:System.ArgumentException"><paramref name="parent"/> doesn't have the expected handle kind.</exception>
801             <remarks>
802             Entries may be added in any order. The table is automatically sorted when serialized.
803             </remarks>
804         </member>
805         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddDocument(System.Reflection.Metadata.BlobHandle,System.Reflection.Metadata.GuidHandle,System.Reflection.Metadata.BlobHandle,System.Reflection.Metadata.GuidHandle)">
806             <summary>
807             Add document debug information.
808             </summary>
809             <param name="name">
810             Document Name blob.
811             See https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#document-name-blob
812             </param>
813             <param name="hashAlgorithm">
814             GUID of the hash algorithm used to calculate the value of <paramref name="hash"/>.
815             See https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#document-table-0x30 for common values.
816             </param>
817             <param name="hash">
818             The hash of the document content.
819             </param>
820             <param name="language">
821             GUID of the language.
822             See https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#document-table-0x30 for common values.
823             </param>
824         </member>
825         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddMethodDebugInformation(System.Reflection.Metadata.DocumentHandle,System.Reflection.Metadata.BlobHandle)">
826             <summary>
827             Add method debug information.
828             </summary>
829             <param name="document">
830             The handle of a single document containing all sequence points of the method, or nil if the method doesn't have sequence points or spans multiple documents.
831             </param>
832             <param name="sequencePoints">
833             Sequence Points blob, or nil if the method doesn't have sequence points.
834             See https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#sequence-points-blob.
835             </param>
836         </member>
837         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddLocalScope(System.Reflection.Metadata.MethodDefinitionHandle,System.Reflection.Metadata.ImportScopeHandle,System.Reflection.Metadata.LocalVariableHandle,System.Reflection.Metadata.LocalConstantHandle,System.Int32,System.Int32)">
838             <summary>
839             Add local scope debug information.
840             </summary>
841             <param name="method">The containing method.</param>
842             <param name="importScope">Handle of the associated import scope.</param>
843             <param name="variableList">
844             If the scope declares variables the handle of the first one, otherwise the handle of the first variable declared by the next scope definition.
845             If no scope defines any variables, <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.LocalVariableHandle(System.Int32)"/>(1).
846             </param>
847             <param name="constantList">
848             If the scope declares constants the handle of the first one, otherwise the handle of the first constant declared by the next scope definition.
849             If no scope defines any constants, <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.LocalConstantHandle(System.Int32)"/>(1).
850             </param>
851             <param name="startOffset">Offset of the first instruction covered by the scope.</param>
852             <param name="length">The length (in bytes) of the scope.</param>
853             <remarks>
854             Local scopes should be added in the same order as the corresponding method definition. 
855             Within a method they should be ordered by ascending <paramref name="startOffset"/> and then by descending <paramref name="length"/>.
856             </remarks>
857         </member>
858         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddLocalVariable(System.Reflection.Metadata.LocalVariableAttributes,System.Int32,System.Reflection.Metadata.StringHandle)">
859             <summary>
860             Add local variable debug information.
861             </summary>
862             <param name="attributes"><see cref="T:System.Reflection.Metadata.LocalVariableAttributes"/></param>
863             <param name="index">Local variable index in the local signature (zero-based).</param>
864             <param name="name">Name of the variable.</param>
865             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is greater than <see cref="F:System.UInt16.MaxValue"/>.</exception>
866         </member>
867         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddLocalConstant(System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.BlobHandle)">
868             <summary>
869             Add local constant debug information.
870             </summary>
871             <param name="name">Name of the variable.</param>
872             <param name="signature">
873             LocalConstantSig blob, see https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#localconstantsig-blob. 
874             </param>
875         </member>
876         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddImportScope(System.Reflection.Metadata.ImportScopeHandle,System.Reflection.Metadata.BlobHandle)">
877             <summary>
878             Add local scope debug information.
879             </summary>
880             <param name="parentScope">Parent scope handle.</param>
881             <param name="imports">
882             Imports blob, see https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#imports-blob. 
883             </param>
884         </member>
885         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddStateMachineMethod(System.Reflection.Metadata.MethodDefinitionHandle,System.Reflection.Metadata.MethodDefinitionHandle)">
886             <summary>
887             Add state machine method debug information.
888             </summary>
889             <param name="moveNextMethod">Handle of the MoveNext method of the state machine (the compiler-generated method).</param>
890             <param name="kickoffMethod">Handle of the kickoff method (the user defined iterator/async method)</param>
891             <remarks>
892             Entries should be added in the same order as the corresponding MoveNext method definitions.
893             </remarks>
894         </member>
895         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.AddCustomDebugInformation(System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.GuidHandle,System.Reflection.Metadata.BlobHandle)">
896             <summary>
897             Add custom debug information.
898             </summary>
899             <param name="parent">
900             An entity to attach the debug information to: 
901             <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/>,
902             <see cref="T:System.Reflection.Metadata.FieldDefinitionHandle"/>,
903             <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>,
904             <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>,
905             <see cref="T:System.Reflection.Metadata.ParameterHandle"/>,
906             <see cref="T:System.Reflection.Metadata.InterfaceImplementationHandle"/>,
907             <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/>,
908             <see cref="T:System.Reflection.Metadata.ModuleDefinitionHandle"/>,
909             <see cref="T:System.Reflection.Metadata.DeclarativeSecurityAttributeHandle"/>,
910             <see cref="T:System.Reflection.Metadata.PropertyDefinitionHandle"/>,
911             <see cref="T:System.Reflection.Metadata.EventDefinitionHandle"/>,
912             <see cref="T:System.Reflection.Metadata.StandaloneSignatureHandle"/>,
913             <see cref="T:System.Reflection.Metadata.ModuleReferenceHandle"/>,
914             <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>,
915             <see cref="T:System.Reflection.Metadata.AssemblyDefinitionHandle"/>,
916             <see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/>,
917             <see cref="T:System.Reflection.Metadata.AssemblyFileHandle"/>,
918             <see cref="T:System.Reflection.Metadata.ExportedTypeHandle"/>,
919             <see cref="T:System.Reflection.Metadata.ManifestResourceHandle"/>,
920             <see cref="T:System.Reflection.Metadata.GenericParameterHandle"/>,
921             <see cref="T:System.Reflection.Metadata.GenericParameterConstraintHandle"/>,
922             <see cref="T:System.Reflection.Metadata.MethodSpecificationHandle"/>,
923             <see cref="T:System.Reflection.Metadata.DocumentHandle"/>,
924             <see cref="T:System.Reflection.Metadata.LocalScopeHandle"/>,
925             <see cref="T:System.Reflection.Metadata.LocalVariableHandle"/>,
926             <see cref="T:System.Reflection.Metadata.LocalConstantHandle"/> or
927             <see cref="T:System.Reflection.Metadata.ImportScopeHandle"/>.
928             </param>
929             <param name="kind">Information kind. Determines the structure of the <paramref name="value"/> blob.</param>
930             <param name="value">Custom debug information blob.</param>
931             <exception cref="T:System.ArgumentException"><paramref name="parent"/> doesn't have the expected handle kind.</exception>
932             <remarks>
933             Entries may be added in any order. The table is automatically sorted when serialized.
934             </remarks>
935         </member>
936         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.#ctor(System.Int32,System.Int32,System.Int32,System.Int32)">
937             <summary>
938             Creates a builder for metadata tables and heaps.
939             </summary>
940             <param name="userStringHeapStartOffset">
941             Start offset of the User String heap. 
942             The cumulative size of User String heaps of all previous EnC generations. Should be 0 unless the metadata is EnC delta metadata.
943             </param>
944             <param name="stringHeapStartOffset">
945             Start offset of the String heap. 
946             The cumulative size of String heaps of all previous EnC generations. Should be 0 unless the metadata is EnC delta metadata.
947             </param>
948             <param name="blobHeapStartOffset">
949             Start offset of the Blob heap. 
950             The cumulative size of Blob heaps of all previous EnC generations. Should be 0 unless the metadata is EnC delta metadata.
951             </param>
952             <param name="guidHeapStartOffset">
953             Start offset of the Guid heap. 
954             The cumulative size of Guid heaps of all previous EnC generations. Should be 0 unless the metadata is EnC delta metadata.
955             </param>
956             <exception cref="T:System.Reflection.Metadata.ImageFormatLimitationException">Offset is too big.</exception>
957             <exception cref="T:System.ArgumentOutOfRangeException">Offset is negative.</exception>
958             <exception cref="T:System.ArgumentException"><paramref name="guidHeapStartOffset"/> is not a multiple of size of GUID.</exception>
959         </member>
960         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.SetCapacity(System.Reflection.Metadata.Ecma335.HeapIndex,System.Int32)">
961             <summary>
962             Sets the capacity of the specified table. 
963             </summary>
964             <param name="heap">Heap index.</param>
965             <param name="byteCount">Number of bytes.</param>
966             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="heap"/> is not a valid heap index.</exception>
967             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="byteCount"/> is negative.</exception>
968             <remarks>
969             Use to reduce allocations if the approximate number of bytes is known ahead of time.
970             </remarks>
971         </member>
972         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetOrAddBlob(System.Reflection.Metadata.BlobBuilder)">
973             <summary>
974             Adds specified blob to Blob heap, if it's not there already.
975             </summary>
976             <param name="value"><see cref="T:System.Reflection.Metadata.BlobBuilder"/> containing the blob.</param>
977             <returns>Handle to the added or existing blob.</returns>
978             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
979         </member>
980         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetOrAddBlob(System.Byte[])">
981             <summary>
982             Adds specified blob to Blob heap, if it's not there already.
983             </summary>
984             <param name="value">Array containing the blob.</param>
985             <returns>Handle to the added or existing blob.</returns>
986             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
987         </member>
988         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetOrAddBlob(System.Collections.Immutable.ImmutableArray{System.Byte})">
989             <summary>
990             Adds specified blob to Blob heap, if it's not there already.
991             </summary>
992             <param name="value">Array containing the blob.</param>
993             <returns>Handle to the added or existing blob.</returns>
994             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
995         </member>
996         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetOrAddConstantBlob(System.Object)">
997             <summary>
998             Encodes a constant value to a blob and adds it to the Blob heap, if it's not there already.
999             Uses UTF16 to encode string constants.
1000             </summary>
1001             <param name="value">Constant value.</param>
1002             <returns>Handle to the added or existing blob.</returns>
1003         </member>
1004         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetOrAddBlobUTF16(System.String)">
1005             <summary>
1006             Encodes a string using UTF16 encoding to a blob and adds it to the Blob heap, if it's not there already.
1007             </summary>
1008             <param name="value">String.</param>
1009             <returns>Handle to the added or existing blob.</returns>
1010             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
1011         </member>
1012         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetOrAddBlobUTF8(System.String,System.Boolean)">
1013             <summary>
1014             Encodes a string using UTF8 encoding to a blob and adds it to the Blob heap, if it's not there already.
1015             </summary>
1016             <param name="value">Constant value.</param>
1017             <param name="allowUnpairedSurrogates">
1018             True to encode unpaired surrogates as specified, otherwise replace them with U+FFFD character.
1019             </param>
1020             <returns>Handle to the added or existing blob.</returns>
1021             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
1022         </member>
1023         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetOrAddDocumentName(System.String)">
1024             <summary>
1025             Encodes a debug document name and adds it to the Blob heap, if it's not there already.
1026             </summary>
1027             <param name="value">Document name.</param>
1028             <returns>
1029             Handle to the added or existing document name blob
1030             (see https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#DocumentNameBlob).
1031             </returns>
1032             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
1033         </member>
1034         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetOrAddGuid(System.Guid)">
1035             <summary>
1036             Adds specified Guid to Guid heap, if it's not there already.
1037             </summary>
1038             <param name="guid">Guid to add.</param>
1039             <returns>Handle to the added or existing Guid.</returns>
1040         </member>
1041         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.ReserveGuid">
1042             <summary>
1043             Reserves space on the Guid heap for a GUID.
1044             </summary>
1045             <returns>
1046             Handle to the reserved Guid and a <see cref="T:System.Reflection.Metadata.Blob"/> representing the GUID blob as stored on the heap.
1047             </returns>
1048             <exception cref="T:System.Reflection.Metadata.ImageFormatLimitationException">The remaining space on the heap is too small to fit the string.</exception>
1049         </member>
1050         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetOrAddString(System.String)">
1051             <summary>
1052             Adds specified string to String heap, if it's not there already.
1053             </summary>
1054             <param name="value">Array containing the blob.</param>
1055             <returns>Handle to the added or existing blob.</returns>
1056             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
1057         </member>
1058         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.ReserveUserString(System.Int32)">
1059             <summary>
1060             Reserves space on the User String heap for a string of specified length.
1061             </summary>
1062             <param name="length">The number of characters to reserve.</param>
1063             <returns>
1064             Handle to the reserved User String and a <see cref="T:System.Reflection.Metadata.Blob"/> representing the entire User String blob (including its length and terminal character).
1065             
1066             Handle may be used in <see cref="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.LoadString(System.Reflection.Metadata.UserStringHandle)"/>.
1067             Use <see cref="M:System.Reflection.Metadata.BlobWriter.WriteUserString(System.String)"/> to fill in the blob content.
1068             </returns>
1069             <exception cref="T:System.Reflection.Metadata.ImageFormatLimitationException">The remaining space on the heap is too small to fit the string.</exception>
1070             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="length"/> is negative.</exception>
1071         </member>
1072         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.GetOrAddUserString(System.String)">
1073             <summary>
1074             Adds specified string to User String heap, if it's not there already.
1075             </summary>
1076             <param name="value">String to add.</param>
1077             <returns>
1078             Handle to the added or existing string.
1079             May be used in <see cref="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.LoadString(System.Reflection.Metadata.UserStringHandle)"/>.
1080             </returns>
1081             <exception cref="T:System.Reflection.Metadata.ImageFormatLimitationException">The remaining space on the heap is too small to fit the string.</exception>
1082             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
1083         </member>
1084         <member name="M:System.Reflection.Metadata.Ecma335.MetadataBuilder.SerializeStringHeap(System.Reflection.Metadata.BlobBuilder,System.Collections.Generic.Dictionary{System.String,System.Reflection.Metadata.StringHandle},System.Int32)">
1085             <summary>
1086             Fills in stringIndexMap with data from stringIndex and write to stringWriter.
1087             Releases stringIndex as the stringTable is sealed after this point.
1088             </summary>
1089         </member>
1090         <member name="T:System.Reflection.Metadata.Ecma335.MetadataBuilder.SuffixSort">
1091             <summary>
1092             Sorts strings such that a string is followed immediately by all strings
1093             that are a suffix of it.  
1094             </summary>
1095         </member>
1096         <member name="T:System.Reflection.Metadata.Ecma335.MetadataRootBuilder">
1097             <summary>
1098             Builder of a Metadata Root to be embedded in a Portable Executable image.
1099             </summary>
1100             <remarks>
1101             Metadata root constitutes of a metadata header followed by metadata streams (#~, #Strings, #US, #Guid and #Blob).
1102             </remarks>
1103         </member>
1104         <member name="P:System.Reflection.Metadata.Ecma335.MetadataRootBuilder.MetadataVersion">
1105             <summary>
1106             Metadata version string.
1107             </summary>
1108         </member>
1109         <member name="P:System.Reflection.Metadata.Ecma335.MetadataRootBuilder.SuppressValidation">
1110             <summary>
1111             True to suppresses basic validation of metadata tables. 
1112             The validation verifies that entries in the tables were added in order required by the ECMA specification.
1113             It does not enforce all specification requirements on metadata tables.
1114             </summary>
1115         </member>
1116         <member name="M:System.Reflection.Metadata.Ecma335.MetadataRootBuilder.#ctor(System.Reflection.Metadata.Ecma335.MetadataBuilder,System.String,System.Boolean)">
1117             <summary>
1118             Creates a builder of a metadata root.
1119             </summary>
1120             <param name="tablesAndHeaps">
1121             Builder populated with metadata entities stored in tables and values stored in heaps.
1122             The entities and values will be enumerated when serializing the metadata root.
1123             </param>
1124             <param name="metadataVersion">
1125             The version string written to the metadata header. The default value is "v4.0.30319".
1126             </param>
1127             <param name="suppressValidation">
1128             True to suppresses basic validation of metadata tables during serialization.
1129             The validation verifies that entries in the tables were added in order required by the ECMA specification.
1130             It does not enforce all specification requirements on metadata tables.
1131             </param>
1132             <exception cref="T:System.ArgumentNullException"><paramref name="tablesAndHeaps"/> is null.</exception>
1133             <exception cref="T:System.ArgumentException"><paramref name="metadataVersion"/> is too long (the number of bytes when UTF8-encoded must be less than 255).</exception>
1134         </member>
1135         <member name="P:System.Reflection.Metadata.Ecma335.MetadataRootBuilder.Sizes">
1136             <summary>
1137             Returns sizes of various metadata structures.
1138             </summary>
1139         </member>
1140         <member name="M:System.Reflection.Metadata.Ecma335.MetadataRootBuilder.Serialize(System.Reflection.Metadata.BlobBuilder,System.Int32,System.Int32)">
1141             <summary>
1142             Serializes metadata root content into the given <see cref="T:System.Reflection.Metadata.BlobBuilder"/>.
1143             </summary>
1144             <param name="builder">Builder to write to.</param>
1145             <param name="methodBodyStreamRva">
1146             The relative virtual address of the start of the method body stream.
1147             Used to calculate the final value of RVA fields of MethodDef table.
1148             </param>
1149             <param name="mappedFieldDataStreamRva">
1150             The relative virtual address of the start of the field init data stream.
1151             Used to calculate the final value of RVA fields of FieldRVA table.
1152             </param>
1153             <exception cref="T:System.ArgumentNullException"><paramref name="builder"/> is null.</exception>
1154             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="methodBodyStreamRva"/> or <paramref name="mappedFieldDataStreamRva"/> is negative.</exception>
1155             <exception cref="T:System.InvalidOperationException">
1156             A metadata table is not ordered as required by the specification and <see cref="P:System.Reflection.Metadata.Ecma335.MetadataRootBuilder.SuppressValidation"/> is false.
1157             </exception>
1158         </member>
1159         <member name="M:System.Reflection.Metadata.Ecma335.StringHeap.EqualsRaw(System.Reflection.Metadata.StringHandle,System.String)">
1160             <summary>
1161             Returns true if the given raw (non-virtual) handle represents the same string as given ASCII string.
1162             </summary>
1163         </member>
1164         <member name="M:System.Reflection.Metadata.Ecma335.StringHeap.IndexOfRaw(System.Int32,System.Char)">
1165             <summary>
1166             Returns the heap index of the given ASCII character or -1 if not found prior null terminator or end of heap.
1167             </summary>
1168         </member>
1169         <member name="M:System.Reflection.Metadata.Ecma335.StringHeap.StartsWithRaw(System.Reflection.Metadata.StringHandle,System.String)">
1170             <summary>
1171             Returns true if the given raw (non-virtual) handle represents a string that starts with given ASCII prefix.
1172             </summary>
1173         </member>
1174         <member name="M:System.Reflection.Metadata.Ecma335.StringHeap.BinarySearchRaw(System.String[],System.Reflection.Metadata.StringHandle)">
1175             <summary>
1176             Equivalent to Array.BinarySearch, searches for given raw (non-virtual) handle in given array of ASCII strings.
1177             </summary>
1178         </member>
1179         <member name="T:System.Reflection.Metadata.Ecma335.CustomAttributeDecoder`1">
1180             <summary>
1181             Decodes custom attribute blobs.
1182             </summary>
1183         </member>
1184         <member name="M:System.Reflection.Metadata.Ecma335.ControlFlowBuilder.AddFinallyRegion(System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle)">
1185             <summary>
1186             Adds finally region.
1187             </summary>
1188             <param name="tryStart">Label marking the first instruction of the try block.</param>
1189             <param name="tryEnd">Label marking the instruction immediately following the try block.</param>
1190             <param name="handlerStart">Label marking the first instruction of the handler.</param>
1191             <param name="handlerEnd">Label marking the instruction immediately following the handler.</param>
1192             <returns>Encoder for the next clause.</returns>
1193             <exception cref="T:System.ArgumentException">A label was not defined by an instruction encoder this builder is associated with.</exception>
1194             <exception cref="T:System.ArgumentNullException">A label has default value.</exception>
1195         </member>
1196         <member name="M:System.Reflection.Metadata.Ecma335.ControlFlowBuilder.AddFaultRegion(System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle)">
1197             <summary>
1198             Adds fault region.
1199             </summary>
1200             <param name="tryStart">Label marking the first instruction of the try block.</param>
1201             <param name="tryEnd">Label marking the instruction immediately following the try block.</param>
1202             <param name="handlerStart">Label marking the first instruction of the handler.</param>
1203             <param name="handlerEnd">Label marking the instruction immediately following the handler.</param>
1204             <exception cref="T:System.ArgumentException">A label was not defined by an instruction encoder this builder is associated with.</exception>
1205             <exception cref="T:System.ArgumentNullException">A label has default value.</exception>
1206         </member>
1207         <member name="M:System.Reflection.Metadata.Ecma335.ControlFlowBuilder.AddCatchRegion(System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.EntityHandle)">
1208             <summary>
1209             Adds catch region.
1210             </summary>
1211             <param name="tryStart">Label marking the first instruction of the try block.</param>
1212             <param name="tryEnd">Label marking the instruction immediately following the try block.</param>
1213             <param name="handlerStart">Label marking the first instruction of the handler.</param>
1214             <param name="handlerEnd">Label marking the instruction immediately following the handler.</param>
1215             <param name="catchType">The type of exception to be caught: <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/> or <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>.</param>
1216             <exception cref="T:System.ArgumentException">A label was not defined by an instruction encoder this builder is associated with.</exception>
1217             <exception cref="T:System.ArgumentException"><paramref name="catchType"/> is not a valid type handle.</exception>
1218             <exception cref="T:System.ArgumentNullException">A label has default value.</exception>
1219         </member>
1220         <member name="M:System.Reflection.Metadata.Ecma335.ControlFlowBuilder.AddFilterRegion(System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle)">
1221             <summary>
1222             Adds catch region.
1223             </summary>
1224             <param name="tryStart">Label marking the first instruction of the try block.</param>
1225             <param name="tryEnd">Label marking the instruction immediately following the try block.</param>
1226             <param name="handlerStart">Label marking the first instruction of the handler.</param>
1227             <param name="handlerEnd">Label marking the instruction immediately following the handler.</param>
1228             <param name="filterStart">Label marking the first instruction of the filter block.</param>
1229             <exception cref="T:System.ArgumentException">A label was not defined by an instruction encoder this builder is associated with.</exception>
1230             <exception cref="T:System.ArgumentNullException">A label has default value.</exception>
1231         </member>
1232         <member name="M:System.Reflection.Metadata.Ecma335.ControlFlowBuilder.CopyCodeAndFixupBranches(System.Reflection.Metadata.BlobBuilder,System.Reflection.Metadata.BlobBuilder)">
1233             <exception cref="T:System.InvalidOperationException" />
1234         </member>
1235         <member name="P:System.Reflection.Metadata.Ecma335.ExceptionRegionEncoder.Builder">
1236             <summary>
1237             The underlying builder.
1238             </summary>
1239         </member>
1240         <member name="P:System.Reflection.Metadata.Ecma335.ExceptionRegionEncoder.HasSmallFormat">
1241             <summary>
1242             True if the encoder uses small format.
1243             </summary>
1244         </member>
1245         <member name="M:System.Reflection.Metadata.Ecma335.ExceptionRegionEncoder.IsSmallRegionCount(System.Int32)">
1246             <summary>
1247             Returns true if the number of exception regions first small format.
1248             </summary>
1249             <param name="exceptionRegionCount">Number of exception regions.</param>
1250         </member>
1251         <member name="M:System.Reflection.Metadata.Ecma335.ExceptionRegionEncoder.IsSmallExceptionRegion(System.Int32,System.Int32)">
1252             <summary>
1253             Returns true if the region fits small format.
1254             </summary>
1255             <param name="startOffset">Start offset of the region.</param>
1256             <param name="length">Length of the region.</param>
1257         </member>
1258         <member name="M:System.Reflection.Metadata.Ecma335.ExceptionRegionEncoder.AddFinally(System.Int32,System.Int32,System.Int32,System.Int32)">
1259             <summary>
1260             Adds a finally clause.
1261             </summary>
1262             <param name="tryOffset">Try block start offset.</param>
1263             <param name="tryLength">Try block length.</param>
1264             <param name="handlerOffset">Handler start offset.</param>
1265             <param name="handlerLength">Handler length.</param>
1266             <returns>Encoder for the next clause.</returns>
1267             <exception cref="T:System.ArgumentOutOfRangeException">
1268             <paramref name="tryOffset"/>, <paramref name="tryLength"/>, <paramref name="handlerOffset"/> or <paramref name="handlerLength"/> is out of range.
1269             </exception>
1270             <exception cref="T:System.InvalidOperationException">Method body was not declared to have exception regions.</exception>
1271         </member>
1272         <member name="M:System.Reflection.Metadata.Ecma335.ExceptionRegionEncoder.AddFault(System.Int32,System.Int32,System.Int32,System.Int32)">
1273             <summary>
1274             Adds a fault clause.
1275             </summary>
1276             <param name="tryOffset">Try block start offset.</param>
1277             <param name="tryLength">Try block length.</param>
1278             <param name="handlerOffset">Handler start offset.</param>
1279             <param name="handlerLength">Handler length.</param>
1280             <returns>Encoder for the next clause.</returns>
1281             <exception cref="T:System.ArgumentOutOfRangeException">
1282             <paramref name="tryOffset"/>, <paramref name="tryLength"/>, <paramref name="handlerOffset"/> or <paramref name="handlerLength"/> is out of range.
1283             </exception>
1284             <exception cref="T:System.InvalidOperationException">Method body was not declared to have exception regions.</exception>
1285         </member>
1286         <member name="M:System.Reflection.Metadata.Ecma335.ExceptionRegionEncoder.AddCatch(System.Int32,System.Int32,System.Int32,System.Int32,System.Reflection.Metadata.EntityHandle)">
1287             <summary>
1288             Adds a fault clause.
1289             </summary>
1290             <param name="tryOffset">Try block start offset.</param>
1291             <param name="tryLength">Try block length.</param>
1292             <param name="handlerOffset">Handler start offset.</param>
1293             <param name="handlerLength">Handler length.</param>
1294             <param name="catchType">
1295             <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/> or <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>.
1296             </param>
1297             <returns>Encoder for the next clause.</returns>
1298             <exception cref="T:System.ArgumentException"><paramref name="catchType"/> is invalid.</exception>
1299             <exception cref="T:System.ArgumentOutOfRangeException">
1300             <paramref name="tryOffset"/>, <paramref name="tryLength"/>, <paramref name="handlerOffset"/> or <paramref name="handlerLength"/> is out of range.
1301             </exception>
1302             <exception cref="T:System.InvalidOperationException">Method body was not declared to have exception regions.</exception>
1303         </member>
1304         <member name="M:System.Reflection.Metadata.Ecma335.ExceptionRegionEncoder.AddFilter(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
1305             <summary>
1306             Adds a fault clause.
1307             </summary>
1308             <param name="tryOffset">Try block start offset.</param>
1309             <param name="tryLength">Try block length.</param>
1310             <param name="handlerOffset">Handler start offset.</param>
1311             <param name="handlerLength">Handler length.</param>
1312             <param name="filterOffset">Offset of the filter block.</param>
1313             <returns>Encoder for the next clause.</returns>
1314             <exception cref="T:System.ArgumentOutOfRangeException">
1315             <paramref name="tryOffset"/>, <paramref name="tryLength"/>, <paramref name="handlerOffset"/> or <paramref name="handlerLength"/> is out of range.
1316             </exception>
1317             <exception cref="T:System.InvalidOperationException">Method body was not declared to have exception regions.</exception>
1318         </member>
1319         <member name="M:System.Reflection.Metadata.Ecma335.ExceptionRegionEncoder.Add(System.Reflection.Metadata.ExceptionRegionKind,System.Int32,System.Int32,System.Int32,System.Int32,System.Reflection.Metadata.EntityHandle,System.Int32)">
1320             <summary>
1321             Adds an exception clause.
1322             </summary>
1323             <param name="kind">Clause kind.</param>
1324             <param name="tryOffset">Try block start offset.</param>
1325             <param name="tryLength">Try block length.</param>
1326             <param name="handlerOffset">Handler start offset.</param>
1327             <param name="handlerLength">Handler length.</param>
1328             <param name="catchType">
1329             <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/> or <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>, 
1330             or nil if <paramref name="kind"/> is not <see cref="F:System.Reflection.Metadata.ExceptionRegionKind.Catch"/>
1331             </param>
1332             <param name="filterOffset">
1333             Offset of the filter block, or 0 if the <paramref name="kind"/> is not <see cref="F:System.Reflection.Metadata.ExceptionRegionKind.Filter"/>.
1334             </param>
1335             <returns>Encoder for the next clause.</returns>
1336             <exception cref="T:System.ArgumentException"><paramref name="catchType"/> is invalid.</exception>
1337             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="kind"/> has invalid value.</exception>
1338             <exception cref="T:System.ArgumentOutOfRangeException">
1339             <paramref name="tryOffset"/>, <paramref name="tryLength"/>, <paramref name="handlerOffset"/> or <paramref name="handlerLength"/> is out of range.
1340             </exception>
1341             <exception cref="T:System.InvalidOperationException">Method body was not declared to have exception regions.</exception>
1342         </member>
1343         <member name="T:System.Reflection.Metadata.Ecma335.InstructionEncoder">
1344             <summary>
1345             Encodes instructions.
1346             </summary>
1347         </member>
1348         <member name="P:System.Reflection.Metadata.Ecma335.InstructionEncoder.CodeBuilder">
1349             <summary>
1350             Underlying builder where encoded instructions are written to.
1351             </summary>
1352         </member>
1353         <member name="P:System.Reflection.Metadata.Ecma335.InstructionEncoder.ControlFlowBuilder">
1354             <summary>
1355             Builder tracking labels, branches and exception handlers.
1356             </summary>
1357             <remarks>
1358             If null the encoder doesn't support constuction of control flow.
1359             </remarks>
1360         </member>
1361         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.#ctor(System.Reflection.Metadata.BlobBuilder,System.Reflection.Metadata.Ecma335.ControlFlowBuilder)">
1362             <summary>
1363             Creates an encoder backed by code and control-flow builders.
1364             </summary>
1365             <param name="codeBuilder">Builder to write encoded instructions to.</param>
1366             <param name="controlFlowBuilder">
1367             Builder tracking labels, branches and exception handlers.
1368             Must be specified to be able to use some of the control-flow factory methods of <see cref="T:System.Reflection.Metadata.Ecma335.InstructionEncoder"/>,
1369             such as <see cref="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.Branch(System.Reflection.Metadata.ILOpCode,System.Reflection.Metadata.Ecma335.LabelHandle)"/>, <see cref="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.DefineLabel"/>, <see cref="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.MarkLabel(System.Reflection.Metadata.Ecma335.LabelHandle)"/> etc.
1370             </param>
1371         </member>
1372         <member name="P:System.Reflection.Metadata.Ecma335.InstructionEncoder.Offset">
1373             <summary>
1374             Offset of the next encoded instruction.
1375             </summary>
1376         </member>
1377         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.OpCode(System.Reflection.Metadata.ILOpCode)">
1378             <summary>
1379             Encodes specified op-code.
1380             </summary>
1381         </member>
1382         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.Token(System.Reflection.Metadata.EntityHandle)">
1383             <summary>
1384             Encodes a token.
1385             </summary>
1386         </member>
1387         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.Token(System.Int32)">
1388             <summary>
1389             Encodes a token.
1390             </summary>
1391         </member>
1392         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.LoadString(System.Reflection.Metadata.UserStringHandle)">
1393             <summary>
1394             Encodes <code>ldstr</code> instruction and its operand.
1395             </summary>
1396         </member>
1397         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.Call(System.Reflection.Metadata.EntityHandle)">
1398             <summary>
1399             Encodes <code>call</code> instruction and its operand.
1400             </summary>
1401         </member>
1402         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.Call(System.Reflection.Metadata.MethodDefinitionHandle)">
1403             <summary>
1404             Encodes <code>call</code> instruction and its operand.
1405             </summary>
1406         </member>
1407         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.Call(System.Reflection.Metadata.MethodSpecificationHandle)">
1408             <summary>
1409             Encodes <code>call</code> instruction and its operand.
1410             </summary>
1411         </member>
1412         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.Call(System.Reflection.Metadata.MemberReferenceHandle)">
1413             <summary>
1414             Encodes <code>call</code> instruction and its operand.
1415             </summary>
1416         </member>
1417         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.CallIndirect(System.Reflection.Metadata.StandaloneSignatureHandle)">
1418             <summary>
1419             Encodes <code>calli</code> instruction and its operand.
1420             </summary>
1421         </member>
1422         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.LoadConstantI4(System.Int32)">
1423             <summary>
1424             Encodes <see cref="T:System.Int32"/> constant load instruction.
1425             </summary>
1426         </member>
1427         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.LoadConstantI8(System.Int64)">
1428             <summary>
1429             Encodes <see cref="T:System.Int64"/> constant load instruction.
1430             </summary>
1431         </member>
1432         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.LoadConstantR4(System.Single)">
1433             <summary>
1434             Encodes <see cref="T:System.Single"/> constant load instruction.
1435             </summary>
1436         </member>
1437         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.LoadConstantR8(System.Double)">
1438             <summary>
1439             Encodes <see cref="T:System.Double"/> constant load instruction.
1440             </summary>
1441         </member>
1442         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.LoadLocal(System.Int32)">
1443             <summary>
1444             Encodes local variable load instruction.
1445             </summary>
1446             <param name="slotIndex">Index of the local variable slot.</param>
1447             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="slotIndex"/> is negative.</exception>
1448         </member>
1449         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.StoreLocal(System.Int32)">
1450             <summary>
1451             Encodes local variable store instruction.
1452             </summary>
1453             <param name="slotIndex">Index of the local variable slot.</param>
1454             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="slotIndex"/> is negative.</exception>
1455         </member>
1456         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.LoadLocalAddress(System.Int32)">
1457             <summary>
1458             Encodes local variable address load instruction.
1459             </summary>
1460             <param name="slotIndex">Index of the local variable slot.</param>
1461             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="slotIndex"/> is negative.</exception>
1462         </member>
1463         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.LoadArgument(System.Int32)">
1464             <summary>
1465             Encodes argument load instruction.
1466             </summary>
1467             <param name="argumentIndex">Index of the argument.</param>
1468             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="argumentIndex"/> is negative.</exception>
1469         </member>
1470         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.LoadArgumentAddress(System.Int32)">
1471             <summary>
1472             Encodes argument address load instruction.
1473             </summary>
1474             <param name="argumentIndex">Index of the argument.</param>
1475             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="argumentIndex"/> is negative.</exception>
1476         </member>
1477         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.StoreArgument(System.Int32)">
1478             <summary>
1479             Encodes argument store instruction.
1480             </summary>
1481             <param name="argumentIndex">Index of the argument.</param>
1482             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="argumentIndex"/> is negative.</exception>
1483         </member>
1484         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.DefineLabel">
1485             <summary>
1486             Defines a label that can later be used to mark and refer to a location in the instruction stream.
1487             </summary>
1488             <returns>Label handle.</returns>
1489             <exception cref="T:System.InvalidOperationException"><see cref="P:System.Reflection.Metadata.Ecma335.InstructionEncoder.ControlFlowBuilder"/> is null.</exception>
1490         </member>
1491         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.Branch(System.Reflection.Metadata.ILOpCode,System.Reflection.Metadata.Ecma335.LabelHandle)">
1492             <summary>
1493             Encodes a branch instruction.
1494             </summary>
1495             <param name="code">Branch instruction to encode.</param>
1496             <param name="label">Label of the target location in instruction stream.</param>
1497             <exception cref="T:System.ArgumentException"><paramref name="code"/> is not a branch instruction.</exception>
1498             <exception cref="T:System.ArgumentException"><paramref name="label"/> was not defined by this encoder.</exception>
1499             <exception cref="T:System.InvalidOperationException"><see cref="P:System.Reflection.Metadata.Ecma335.InstructionEncoder.ControlFlowBuilder"/> is null.</exception>
1500             <exception cref="T:System.ArgumentNullException"><paramref name="label"/> has default value.</exception>
1501         </member>
1502         <member name="M:System.Reflection.Metadata.Ecma335.InstructionEncoder.MarkLabel(System.Reflection.Metadata.Ecma335.LabelHandle)">
1503             <summary>
1504             Associates specified label with the current IL offset.
1505             </summary>
1506             <param name="label">Label to mark.</param>
1507             <remarks>
1508             A single label may be marked multiple times, the last offset wins.
1509             </remarks>
1510             <exception cref="T:System.InvalidOperationException"><see cref="P:System.Reflection.Metadata.Ecma335.InstructionEncoder.ControlFlowBuilder"/> is null.</exception>
1511             <exception cref="T:System.ArgumentException"><paramref name="label"/> was not defined by this encoder.</exception>
1512             <exception cref="T:System.ArgumentNullException"><paramref name="label"/> has default value.</exception>
1513         </member>
1514         <member name="P:System.Reflection.Metadata.Ecma335.LabelHandle.Id">
1515             <summary>
1516             1-based id identifying the label within the context of a <see cref="T:System.Reflection.Metadata.Ecma335.ControlFlowBuilder"/>.
1517             </summary>
1518         </member>
1519         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.HasCustomAttribute(System.Reflection.Metadata.EntityHandle)">
1520             <summary>
1521             Calculates a HasCustomAttribute coded index for the specified handle.
1522             </summary>
1523             <param name="handle">
1524             <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/>,
1525             <see cref="T:System.Reflection.Metadata.FieldDefinitionHandle"/>,
1526             <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>,
1527             <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>,
1528             <see cref="T:System.Reflection.Metadata.ParameterHandle"/>,
1529             <see cref="T:System.Reflection.Metadata.InterfaceImplementationHandle"/>,
1530             <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/>,
1531             <see cref="T:System.Reflection.Metadata.ModuleDefinitionHandle"/>,
1532             <see cref="T:System.Reflection.Metadata.DeclarativeSecurityAttributeHandle"/>,
1533             <see cref="T:System.Reflection.Metadata.PropertyDefinitionHandle"/>,
1534             <see cref="T:System.Reflection.Metadata.EventDefinitionHandle"/>,
1535             <see cref="T:System.Reflection.Metadata.StandaloneSignatureHandle"/>,
1536             <see cref="T:System.Reflection.Metadata.ModuleReferenceHandle"/>,
1537             <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>,
1538             <see cref="T:System.Reflection.Metadata.AssemblyDefinitionHandle"/>,
1539             <see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/>,
1540             <see cref="T:System.Reflection.Metadata.AssemblyFileHandle"/>,
1541             <see cref="T:System.Reflection.Metadata.ExportedTypeHandle"/>,
1542             <see cref="T:System.Reflection.Metadata.ManifestResourceHandle"/>,
1543             <see cref="T:System.Reflection.Metadata.GenericParameterHandle"/>,
1544             <see cref="T:System.Reflection.Metadata.GenericParameterConstraintHandle"/> or
1545             <see cref="T:System.Reflection.Metadata.MethodSpecificationHandle"/>.
1546             </param>
1547             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1548         </member>
1549         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.HasConstant(System.Reflection.Metadata.EntityHandle)">
1550             <summary>
1551             Calculates a HasConstant coded index for the specified handle.
1552             </summary>
1553             <param name="handle"><see cref="T:System.Reflection.Metadata.ParameterHandle"/>, <see cref="T:System.Reflection.Metadata.FieldDefinitionHandle"/>, or <see cref="T:System.Reflection.Metadata.PropertyDefinitionHandle"/></param>
1554             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1555         </member>
1556         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.CustomAttributeType(System.Reflection.Metadata.EntityHandle)">
1557             <summary>
1558             Calculates a CustomAttributeType coded index for the specified handle.
1559             </summary>
1560             <param name="handle"><see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/></param>
1561             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1562         </member>
1563         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.HasDeclSecurity(System.Reflection.Metadata.EntityHandle)">
1564             <summary>
1565             Calculates a HasDeclSecurity coded index for the specified handle.
1566             </summary>
1567             <param name="handle"><see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/>, or <see cref="T:System.Reflection.Metadata.AssemblyDefinitionHandle"/></param>
1568             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1569         </member>
1570         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.HasFieldMarshal(System.Reflection.Metadata.EntityHandle)">
1571             <summary>
1572             Calculates a HasFieldMarshal coded index for the specified handle.
1573             </summary>
1574             <param name="handle"><see cref = "T:System.Reflection.Metadata.ParameterHandle" /> or <see cref="T:System.Reflection.Metadata.FieldDefinitionHandle"/></param>
1575             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1576         </member>
1577         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.HasSemantics(System.Reflection.Metadata.EntityHandle)">
1578             <summary>
1579             Calculates a HasSemantics coded index for the specified handle.
1580             </summary>
1581             <param name="handle"><see cref="T:System.Reflection.Metadata.EventDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.PropertyDefinitionHandle"/></param>
1582             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1583         </member>
1584         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.Implementation(System.Reflection.Metadata.EntityHandle)">
1585             <summary>
1586             Calculates a Implementation coded index for the specified handle.
1587             </summary>
1588             <param name="handle"><see cref="T:System.Reflection.Metadata.AssemblyFileHandle"/>, <see cref="T:System.Reflection.Metadata.ExportedTypeHandle"/> or <see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/></param>
1589             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1590         </member>
1591         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.MemberForwarded(System.Reflection.Metadata.EntityHandle)">
1592             <summary>
1593             Calculates a MemberForwarded coded index for the specified handle.
1594             </summary>
1595             <param name="handle"><see cref="T:System.Reflection.Metadata.FieldDefinition"/>, <see cref="T:System.Reflection.Metadata.MethodDefinition"/></param>
1596             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1597         </member>
1598         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.MemberRefParent(System.Reflection.Metadata.EntityHandle)">
1599             <summary>
1600             Calculates a MemberRefParent coded index for the specified handle.
1601             </summary>
1602             <param name="handle">
1603             <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, 
1604             <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>, 
1605             <see cref="T:System.Reflection.Metadata.ModuleReferenceHandle"/>,
1606             <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/>, or 
1607             <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>.
1608             </param>
1609             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1610         </member>
1611         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.MethodDefOrRef(System.Reflection.Metadata.EntityHandle)">
1612             <summary>
1613             Calculates a MethodDefOrRef coded index for the specified handle.
1614             </summary>
1615             <param name="handle"><see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/></param>
1616             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1617         </member>
1618         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.ResolutionScope(System.Reflection.Metadata.EntityHandle)">
1619             <summary>
1620             Calculates a ResolutionScope coded index for the specified handle.
1621             </summary>
1622             <param name="handle"><see cref="T:System.Reflection.Metadata.ModuleDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.ModuleReferenceHandle"/>, <see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/> or <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/></param>
1623             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1624         </member>
1625         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.TypeDefOrRef(System.Reflection.Metadata.EntityHandle)">
1626             <summary>
1627             Calculates a TypeDefOrRef coded index for the specified handle.
1628             </summary>
1629             <param name="handle"><see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/></param>
1630             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1631         </member>
1632         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.TypeDefOrRefOrSpec(System.Reflection.Metadata.EntityHandle)">
1633             <summary>
1634             Calculates a TypeDefOrRefOrSpec coded index for the specified handle.
1635             </summary>
1636             <param name="handle"><see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/> or <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/></param>
1637             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1638         </member>
1639         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.TypeOrMethodDef(System.Reflection.Metadata.EntityHandle)">
1640             <summary>
1641             Calculates a TypeOrMethodDef coded index for the specified handle.
1642             </summary>
1643             <param name="handle"><see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/></param>
1644             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1645         </member>
1646         <member name="M:System.Reflection.Metadata.Ecma335.CodedIndex.HasCustomDebugInformation(System.Reflection.Metadata.EntityHandle)">
1647             <summary>
1648             Calculates a HasCustomDebugInformation coded index for the specified handle.
1649             </summary>
1650             <param name="handle">
1651             <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/>,
1652             <see cref="T:System.Reflection.Metadata.FieldDefinitionHandle"/>,
1653             <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>,
1654             <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>,
1655             <see cref="T:System.Reflection.Metadata.ParameterHandle"/>,
1656             <see cref="T:System.Reflection.Metadata.InterfaceImplementationHandle"/>,
1657             <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/>,
1658             <see cref="T:System.Reflection.Metadata.ModuleDefinitionHandle"/>,
1659             <see cref="T:System.Reflection.Metadata.DeclarativeSecurityAttributeHandle"/>,
1660             <see cref="T:System.Reflection.Metadata.PropertyDefinitionHandle"/>,
1661             <see cref="T:System.Reflection.Metadata.EventDefinitionHandle"/>,
1662             <see cref="T:System.Reflection.Metadata.StandaloneSignatureHandle"/>,
1663             <see cref="T:System.Reflection.Metadata.ModuleReferenceHandle"/>,
1664             <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>,
1665             <see cref="T:System.Reflection.Metadata.AssemblyDefinitionHandle"/>,
1666             <see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/>,
1667             <see cref="T:System.Reflection.Metadata.AssemblyFileHandle"/>,
1668             <see cref="T:System.Reflection.Metadata.ExportedTypeHandle"/>,
1669             <see cref="T:System.Reflection.Metadata.ManifestResourceHandle"/>,
1670             <see cref="T:System.Reflection.Metadata.GenericParameterHandle"/>,
1671             <see cref="T:System.Reflection.Metadata.GenericParameterConstraintHandle"/>,
1672             <see cref="T:System.Reflection.Metadata.MethodSpecificationHandle"/>,
1673             <see cref="T:System.Reflection.Metadata.DocumentHandle"/>,
1674             <see cref="T:System.Reflection.Metadata.LocalScopeHandle"/>,
1675             <see cref="T:System.Reflection.Metadata.LocalVariableHandle"/>,
1676             <see cref="T:System.Reflection.Metadata.LocalConstantHandle"/> or
1677             <see cref="T:System.Reflection.Metadata.ImportScopeHandle"/>.
1678             </param>
1679             <exception cref="T:System.ArgumentException">Unexpected handle kind.</exception>
1680         </member>
1681         <member name="T:System.Reflection.Metadata.Ecma335.PortablePdbBuilder">
1682             <summary>
1683             Builder of a Portable PDB image.
1684             </summary>
1685         </member>
1686         <member name="M:System.Reflection.Metadata.Ecma335.PortablePdbBuilder.#ctor(System.Reflection.Metadata.Ecma335.MetadataBuilder,System.Collections.Immutable.ImmutableArray{System.Int32},System.Reflection.Metadata.MethodDefinitionHandle,System.Func{System.Collections.Generic.IEnumerable{System.Reflection.Metadata.Blob},System.Reflection.Metadata.BlobContentId})">
1687             <summary>
1688             Creates a builder of a Portable PDB image.
1689             </summary>
1690             <param name="tablesAndHeaps">
1691             Builder populated with debug metadata entities stored in tables and values stored in heaps.
1692             The entities and values will be enumerated when serializing the Portable PDB image.
1693             </param>
1694             <param name="typeSystemRowCounts">
1695             Row counts of all tables that the associated type-system metadata contain.
1696             Each slot in the array corresponds to a table (<see cref="T:System.Reflection.Metadata.Ecma335.TableIndex"/>).
1697             The length of the array must be equal to <see cref="F:System.Reflection.Metadata.Ecma335.MetadataTokens.TableCount"/>.
1698             </param>
1699             <param name="entryPoint">
1700             Entry point method definition handle.
1701             </param>
1702             <param name="idProvider">
1703             Function calculating id of content represented as a sequence of blobs.
1704             If not specified a default function that ignores the content and returns current time-based content id is used 
1705             (<see cref="M:System.Reflection.Metadata.BlobContentId.GetTimeBasedProvider"/>).
1706             You must specify a deterministic function to produce a deterministic Portable PDB image.
1707             </param>
1708             <exception cref="T:System.ArgumentNullException"><paramref name="tablesAndHeaps"/> or <paramref name="typeSystemRowCounts"/> is null.</exception>
1709         </member>
1710         <member name="M:System.Reflection.Metadata.Ecma335.PortablePdbBuilder.SerializeStandalonePdbStream(System.Reflection.Metadata.BlobBuilder)">
1711             <summary>
1712             Serialized #Pdb stream.
1713             </summary>
1714         </member>
1715         <member name="M:System.Reflection.Metadata.Ecma335.PortablePdbBuilder.Serialize(System.Reflection.Metadata.BlobBuilder)">
1716             <summary>
1717             Serializes Portable PDB content into the given <see cref="T:System.Reflection.Metadata.BlobBuilder"/>.
1718             </summary>
1719             <param name="builder">Builder to write to.</param>
1720             <returns>The id of the serialized content.</returns>
1721             <exception cref="T:System.ArgumentNullException"><paramref name="builder"/> is null.</exception>
1722         </member>
1723         <member name="M:System.Reflection.Metadata.Ecma335.BlobEncoder.FieldSignature">
1724             <summary>
1725             Encodes Field Signature blob.
1726             </summary>
1727             <returns>Encoder of the field type.</returns>
1728         </member>
1729         <member name="M:System.Reflection.Metadata.Ecma335.BlobEncoder.MethodSpecificationSignature(System.Int32)">
1730             <summary>
1731             Encodes Method Specification Signature blob.
1732             </summary>
1733             <param name="genericArgumentCount">Number of generic arguments.</param>
1734             <returns>Encoder of generic arguments.</returns>
1735             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="genericArgumentCount"/> is not in range [0, 0xffff].</exception>
1736         </member>
1737         <member name="M:System.Reflection.Metadata.Ecma335.BlobEncoder.MethodSignature(System.Reflection.Metadata.SignatureCallingConvention,System.Int32,System.Boolean)">
1738             <summary>
1739             Encodes Method Signature blob.
1740             </summary>
1741             <param name="convention">Calling convention.</param>
1742             <param name="genericParameterCount">Number of generic parameters.</param>
1743             <param name="isInstanceMethod">True to encode an instance method signature, false to encode a static method signature.</param>
1744             <returns>An Encoder of the rest of the signature including return value and parameters.</returns>
1745             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="genericParameterCount"/> is not in range [0, 0xffff].</exception>
1746         </member>
1747         <member name="M:System.Reflection.Metadata.Ecma335.BlobEncoder.PropertySignature(System.Boolean)">
1748             <summary>
1749             Encodes Property Signature blob.
1750             </summary>
1751             <param name="isInstanceProperty">True to encode an instance property signature, false to encode a static property signature.</param>
1752             <returns>An Encoder of the rest of the signature including return value and parameters, which has the same structure as Method Signature.</returns>
1753         </member>
1754         <member name="M:System.Reflection.Metadata.Ecma335.BlobEncoder.CustomAttributeSignature(System.Reflection.Metadata.Ecma335.FixedArgumentsEncoder@,System.Reflection.Metadata.Ecma335.CustomAttributeNamedArgumentsEncoder@)">
1755             <summary>
1756             Encodes Custom Attribute Signature blob.
1757             Returns a pair of encoders that must be used in the order they appear in the parameter list.
1758             </summary>
1759             <param name="fixedArguments">Use first, to encode fixed arguments.</param>
1760             <param name="namedArguments">Use second, to encode named arguments.</param>
1761         </member>
1762         <member name="M:System.Reflection.Metadata.Ecma335.BlobEncoder.CustomAttributeSignature(System.Action{System.Reflection.Metadata.Ecma335.FixedArgumentsEncoder},System.Action{System.Reflection.Metadata.Ecma335.CustomAttributeNamedArgumentsEncoder})">
1763             <summary>
1764             Encodes Custom Attribute Signature blob.
1765             </summary>
1766             <param name="fixedArguments">Called first, to encode fixed arguments.</param>
1767             <param name="namedArguments">Called second, to encode named arguments.</param>
1768             <exception cref="T:System.ArgumentNullException"><paramref name="fixedArguments"/> or <paramref name="namedArguments"/> is null.</exception>
1769         </member>
1770         <member name="M:System.Reflection.Metadata.Ecma335.BlobEncoder.LocalVariableSignature(System.Int32)">
1771             <summary>
1772             Encodes Local Variable Signature.
1773             </summary>
1774             <param name="variableCount">Number of local variables.</param>
1775             <returns>Encoder of a sequence of local variables.</returns>
1776             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="variableCount"/> is not in range [0, 0x1fffffff].</exception>
1777         </member>
1778         <member name="M:System.Reflection.Metadata.Ecma335.BlobEncoder.TypeSpecificationSignature">
1779             <summary>
1780             Encodes Type Specification Signature.
1781             </summary>
1782             <returns>
1783             Type encoder of the structured type represented by the Type Specification (it shall not encode a primitive type).
1784             </returns>
1785         </member>
1786         <member name="M:System.Reflection.Metadata.Ecma335.BlobEncoder.PermissionSetBlob(System.Int32)">
1787             <summary>
1788             Encodes a Permission Set blob.
1789             </summary>
1790             <param name="attributeCount">Number of attributes in the set.</param>
1791             <returns>Permission Set encoder.</returns>
1792             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="attributeCount"/> is not in range [0, 0x1fffffff].</exception>
1793         </member>
1794         <member name="M:System.Reflection.Metadata.Ecma335.BlobEncoder.PermissionSetArguments(System.Int32)">
1795             <summary>
1796             Encodes Permission Set arguments.
1797             </summary>
1798             <param name="argumentCount">Number of arguments in the set.</param>
1799             <returns>Encoder of the arguments of the set.</returns>
1800         </member>
1801         <member name="M:System.Reflection.Metadata.Ecma335.MethodSignatureEncoder.Parameters(System.Int32,System.Reflection.Metadata.Ecma335.ReturnTypeEncoder@,System.Reflection.Metadata.Ecma335.ParametersEncoder@)">
1802             <summary>
1803             Encodes return type and parameters.
1804             Returns a pair of encoders that must be used in the order they appear in the parameter list.
1805             </summary>
1806             <param name="parameterCount">Number of parameters.</param>
1807             <param name="returnType">Use first, to encode the return types.</param>
1808             <param name="parameters">Use second, to encode the actual parameters.</param>
1809         </member>
1810         <member name="M:System.Reflection.Metadata.Ecma335.MethodSignatureEncoder.Parameters(System.Int32,System.Action{System.Reflection.Metadata.Ecma335.ReturnTypeEncoder},System.Action{System.Reflection.Metadata.Ecma335.ParametersEncoder})">
1811             <summary>
1812             Encodes return type and parameters.
1813             </summary>
1814             <param name="parameterCount">Number of parameters.</param>
1815             <param name="returnType">Called first, to encode the return type.</param>
1816             <param name="parameters">Called second, to encode the actual parameters.</param>
1817             <exception cref="T:System.ArgumentNullException"><paramref name="returnType"/> or <paramref name="parameters"/> is null.</exception>
1818         </member>
1819         <member name="M:System.Reflection.Metadata.Ecma335.LiteralEncoder.TaggedVector(System.Reflection.Metadata.Ecma335.CustomAttributeArrayTypeEncoder@,System.Reflection.Metadata.Ecma335.VectorEncoder@)">
1820             <summary>
1821             Encodes the type and the items of a vector literal.
1822             Returns a pair of encoders that must be used in the order they appear in the parameter list.
1823             </summary>        
1824             <param name="arrayType">Use first, to encode the type of the vector.</param>
1825             <param name="vector">Use second, to encode the items of the vector.</param>
1826         </member>
1827         <member name="M:System.Reflection.Metadata.Ecma335.LiteralEncoder.TaggedVector(System.Action{System.Reflection.Metadata.Ecma335.CustomAttributeArrayTypeEncoder},System.Action{System.Reflection.Metadata.Ecma335.VectorEncoder})">
1828             <summary>
1829             Encodes the type and the items of a vector literal.
1830             </summary>
1831             <param name="arrayType">Called first, to encode the type of the vector.</param>
1832             <param name="vector">Called second, to encode the items of the vector.</param>
1833             <exception cref="T:System.ArgumentNullException"><paramref name="arrayType"/> or <paramref name="vector"/> is null.</exception>
1834         </member>
1835         <member name="M:System.Reflection.Metadata.Ecma335.LiteralEncoder.Scalar">
1836             <summary>
1837             Encodes a scalar literal.
1838             </summary>
1839             <returns>Encoder of the literal value.</returns>
1840         </member>
1841         <member name="M:System.Reflection.Metadata.Ecma335.LiteralEncoder.TaggedScalar(System.Reflection.Metadata.Ecma335.CustomAttributeElementTypeEncoder@,System.Reflection.Metadata.Ecma335.ScalarEncoder@)">
1842             <summary>
1843             Encodes the type and the value of a literal.
1844             Returns a pair of encoders that must be used in the order they appear in the parameter list.
1845             </summary>
1846             <param name="type">Called first, to encode the type of the literal.</param>
1847             <param name="scalar">Called second, to encode the value of the literal.</param>
1848         </member>
1849         <member name="M:System.Reflection.Metadata.Ecma335.LiteralEncoder.TaggedScalar(System.Action{System.Reflection.Metadata.Ecma335.CustomAttributeElementTypeEncoder},System.Action{System.Reflection.Metadata.Ecma335.ScalarEncoder})">
1850             <summary>
1851             Encodes the type and the value of a literal.
1852             </summary>
1853             <param name="type">Called first, to encode the type of the literal.</param>
1854             <param name="scalar">Called second, to encode the value of the literal.</param>
1855             <exception cref="T:System.ArgumentNullException"><paramref name="type"/> or <paramref name="scalar"/> is null.</exception>
1856         </member>
1857         <member name="M:System.Reflection.Metadata.Ecma335.ScalarEncoder.NullArray">
1858             <summary>
1859             Encodes <c>null</c> literal of type <see cref="T:System.Array"/>.
1860             </summary>
1861         </member>
1862         <member name="M:System.Reflection.Metadata.Ecma335.ScalarEncoder.Constant(System.Object)">
1863             <summary>
1864             Encodes constant literal.
1865             </summary>
1866             <param name="value">
1867             Constant of type 
1868             <see cref="T:System.Boolean"/>,
1869             <see cref="T:System.Byte"/>,
1870             <see cref="T:System.SByte"/>,
1871             <see cref="T:System.Int16"/>,
1872             <see cref="T:System.UInt16"/>,
1873             <see cref="T:System.Int32"/>,
1874             <see cref="T:System.UInt32"/>,
1875             <see cref="T:System.Int64"/>,
1876             <see cref="T:System.UInt64"/>,
1877             <see cref="T:System.Single"/>,
1878             <see cref="T:System.Double"/>,
1879             <see cref="T:System.Char"/> (encoded as two-byte Unicode character),
1880             <see cref="T:System.String"/> (encoded as SerString), or
1881             <see cref="T:System.Enum"/> (encoded as the underlying integer value).
1882             </param>
1883             <exception cref="T:System.ArgumentException">Unexpected constant type.</exception>
1884         </member>
1885         <member name="M:System.Reflection.Metadata.Ecma335.ScalarEncoder.SystemType(System.String)">
1886             <summary>
1887             Encodes literal of type <see cref="T:System.Type"/> (possibly null).
1888             </summary>
1889             <param name="serializedTypeName">The name of the type, or null.</param>
1890             <exception cref="T:System.ArgumentException"><paramref name="serializedTypeName"/> is empty.</exception>
1891         </member>
1892         <member name="M:System.Reflection.Metadata.Ecma335.NamedArgumentsEncoder.AddArgument(System.Boolean,System.Reflection.Metadata.Ecma335.NamedArgumentTypeEncoder@,System.Reflection.Metadata.Ecma335.NameEncoder@,System.Reflection.Metadata.Ecma335.LiteralEncoder@)">
1893             <summary>
1894             Encodes a named argument (field or property).
1895             Returns a triplet of encoders that must be used in the order they appear in the parameter list.
1896             </summary>
1897             <param name="isField">True to encode a field, false to encode a property.</param>
1898             <param name="type">Use first, to encode the type of the argument.</param>
1899             <param name="name">Use second, to encode the name of the field or property.</param>
1900             <param name="literal">Use third, to encode the literal value of the argument.</param>
1901         </member>
1902         <member name="M:System.Reflection.Metadata.Ecma335.NamedArgumentsEncoder.AddArgument(System.Boolean,System.Action{System.Reflection.Metadata.Ecma335.NamedArgumentTypeEncoder},System.Action{System.Reflection.Metadata.Ecma335.NameEncoder},System.Action{System.Reflection.Metadata.Ecma335.LiteralEncoder})">
1903             <summary>
1904             Encodes a named argument (field or property).
1905             </summary>
1906             <param name="isField">True to encode a field, false to encode a property.</param>
1907             <param name="type">Called first, to encode the type of the argument.</param>
1908             <param name="name">Called second, to encode the name of the field or property.</param>
1909             <param name="literal">Called third, to encode the literal value of the argument.</param>
1910             <exception cref="T:System.ArgumentNullException"><paramref name="type"/>, <paramref name="name"/> or <paramref name="literal"/> is null.</exception>
1911         </member>
1912         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.PrimitiveType(System.Reflection.Metadata.PrimitiveTypeCode)">
1913             <summary>
1914             Writes primitive type code.
1915             </summary>
1916             <param name="type">Any primitive type code except for <see cref="F:System.Reflection.Metadata.PrimitiveTypeCode.TypedReference"/> and <see cref="F:System.Reflection.Metadata.PrimitiveTypeCode.Void"/>.</param>
1917             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="type"/> is not valid in this context.</exception>
1918         </member>
1919         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.Array(System.Reflection.Metadata.Ecma335.SignatureTypeEncoder@,System.Reflection.Metadata.Ecma335.ArrayShapeEncoder@)">
1920             <summary>
1921             Encodes an array type.
1922             Returns a pair of encoders that must be used in the order they appear in the parameter list.
1923             </summary>
1924             <param name="elementType">Use first, to encode the type of the element.</param>
1925             <param name="arrayShape">Use second, to encode the shape of the array.</param>
1926         </member>
1927         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.Array(System.Action{System.Reflection.Metadata.Ecma335.SignatureTypeEncoder},System.Action{System.Reflection.Metadata.Ecma335.ArrayShapeEncoder})">
1928             <summary>
1929             Encodes an array type.
1930             </summary>
1931             <param name="elementType">Called first, to encode the type of the element.</param>
1932             <param name="arrayShape">Called second, to encode the shape of the array.</param>
1933             <exception cref="T:System.ArgumentNullException"><paramref name="elementType"/> or <paramref name="arrayShape"/> is null.</exception>
1934         </member>
1935         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.Type(System.Reflection.Metadata.EntityHandle,System.Boolean)">
1936             <summary>
1937             Encodes a reference to a type.
1938             </summary>
1939             <param name="type"><see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>.</param>
1940             <param name="isValueType">True to mark the type as value type, false to mark it as a reference type in the signature.</param>
1941             <exception cref="T:System.ArgumentException"><paramref name="type"/> doesn't have the expected handle kind.</exception>
1942         </member>
1943         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.FunctionPointer(System.Reflection.Metadata.SignatureCallingConvention,System.Reflection.Metadata.Ecma335.FunctionPointerAttributes,System.Int32)">
1944             <summary>
1945             Starts a function pointer signature.
1946             </summary>
1947             <param name="convention">Calling convention.</param>
1948             <param name="attributes">Function pointer attributes.</param>
1949             <param name="genericParameterCount">Generic parameter count.</param>
1950             <exception cref="T:System.ArgumentException"><paramref name="attributes"/> is invalid.</exception>
1951             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="genericParameterCount"/> is not in range [0, 0xffff].</exception>
1952         </member>
1953         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.GenericInstantiation(System.Reflection.Metadata.EntityHandle,System.Int32,System.Boolean)">
1954             <summary>
1955             Starts a generic instantiation signature.
1956             </summary>
1957             <param name="genericType"><see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>.</param>
1958             <param name="genericArgumentCount">Generic argument count.</param>
1959             <param name="isValueType">True to mark the type as value type, false to mark it as a reference type in the signature.</param>
1960             <exception cref="T:System.ArgumentException"><paramref name="genericType"/> doesn't have the expected handle kind.</exception>
1961             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="genericArgumentCount"/> is not in range [1, 0xffff].</exception>
1962         </member>
1963         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.GenericMethodTypeParameter(System.Int32)">
1964             <summary>
1965             Encodes a reference to type parameter of a containing generic method.
1966             </summary>
1967             <param name="parameterIndex">Parameter index.</param>
1968             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="parameterIndex"/> is not in range [0, 0xffff].</exception>
1969         </member>
1970         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.GenericTypeParameter(System.Int32)">
1971             <summary>
1972             Encodes a reference to type parameter of a containing generic type.
1973             </summary>
1974             <param name="parameterIndex">Parameter index.</param>
1975             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="parameterIndex"/> is not in range [0, 0xffff].</exception>
1976         </member>
1977         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.Pointer">
1978             <summary>
1979             Starts pointer signature.
1980             </summary>
1981         </member>
1982         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.VoidPointer">
1983             <summary>
1984             Encodes <code>void*</code>.
1985             </summary>
1986         </member>
1987         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.SZArray">
1988             <summary>
1989             Starts SZ array (vector) signature.
1990             </summary>
1991         </member>
1992         <member name="M:System.Reflection.Metadata.Ecma335.SignatureTypeEncoder.CustomModifiers">
1993             <summary>
1994             Starts a signature of a type with custom modifiers.
1995             </summary>
1996         </member>
1997         <member name="M:System.Reflection.Metadata.Ecma335.CustomModifiersEncoder.AddModifier(System.Reflection.Metadata.EntityHandle,System.Boolean)">
1998             <summary>
1999             Encodes a custom modifier.
2000             </summary>
2001             <param name="type"><see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/> or <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>.</param>
2002             <param name="isOptional">Is optional modifier.</param>
2003             <returns>Encoder of subsequent modifiers.</returns>
2004             <exception cref="T:System.ArgumentException"><paramref name="type"/> is nil or of an unexpected kind.</exception>
2005         </member>
2006         <member name="M:System.Reflection.Metadata.Ecma335.ArrayShapeEncoder.Shape(System.Int32,System.Collections.Immutable.ImmutableArray{System.Int32},System.Collections.Immutable.ImmutableArray{System.Int32})">
2007             <summary>
2008             Encodes array shape.
2009             </summary>
2010             <param name="rank">The number of dimensions in the array (shall be 1 or more).</param>
2011             <param name="sizes">
2012             Dimension sizes. The array may be shorter than <paramref name="rank"/> but not longer.
2013             </param>
2014             <param name="lowerBounds">
2015             Dimension lower bounds, or <c>default(<see cref="T:System.Collections.Immutable.ImmutableArray`1"/>)</c> to set all <paramref name="rank"/> lower bounds to 0. 
2016             The array may be shorter than <paramref name="rank"/> but not longer.
2017             </param>
2018             <exception cref="T:System.ArgumentOutOfRangeException">
2019             <paramref name="rank"/> is outside of range [1, 0xffff],
2020             smaller than <paramref name="sizes"/>.Length, or
2021             smaller than <paramref name="lowerBounds"/>.Length.
2022             </exception>
2023             <exception cref="T:System.ArgumentNullException"><paramref name="sizes"/> is null.</exception>
2024         </member>
2025         <member name="T:System.Reflection.Metadata.Ecma335.MetadataSizes">
2026             <summary>
2027             Provides information on sizes of various metadata structures.
2028             </summary>
2029         </member>
2030         <member name="P:System.Reflection.Metadata.Ecma335.MetadataSizes.HeapSizes">
2031             <summary>
2032             Exact (unaligned) heap sizes.
2033             </summary>
2034             <remarks>Use <see cref="M:System.Reflection.Metadata.Ecma335.MetadataSizes.GetAlignedHeapSize(System.Reflection.Metadata.Ecma335.HeapIndex)"/> to get an aligned heap size.</remarks>
2035         </member>
2036         <member name="P:System.Reflection.Metadata.Ecma335.MetadataSizes.RowCounts">
2037             <summary>
2038             Table row counts. 
2039             </summary>
2040         </member>
2041         <member name="P:System.Reflection.Metadata.Ecma335.MetadataSizes.ExternalRowCounts">
2042             <summary>
2043             External table row counts. 
2044             </summary>
2045         </member>
2046         <member name="F:System.Reflection.Metadata.Ecma335.MetadataSizes.PresentTablesMask">
2047             <summary>
2048             Non-empty tables that are emitted into the metadata table stream.
2049             </summary>
2050         </member>
2051         <member name="F:System.Reflection.Metadata.Ecma335.MetadataSizes.ExternalTablesMask">
2052             <summary>
2053             Non-empty tables stored in an external metadata table stream that might be referenced from the metadata table stream being emitted.
2054             </summary>
2055         </member>
2056         <member name="F:System.Reflection.Metadata.Ecma335.MetadataSizes.MetadataStreamStorageSize">
2057             <summary>
2058             Overall size of metadata stream storage (stream headers, table stream, heaps, additional streams).
2059             Aligned to <see cref="F:System.Reflection.Metadata.Ecma335.MetadataSizes.StreamAlignment"/>.
2060             </summary>
2061         </member>
2062         <member name="F:System.Reflection.Metadata.Ecma335.MetadataSizes.MetadataTableStreamSize">
2063             <summary>
2064             The size of metadata stream (#- or #~). Aligned.
2065             Aligned to <see cref="F:System.Reflection.Metadata.Ecma335.MetadataSizes.StreamAlignment"/>.
2066             </summary>
2067         </member>
2068         <member name="F:System.Reflection.Metadata.Ecma335.MetadataSizes.StandalonePdbStreamSize">
2069             <summary>
2070             The size of #Pdb stream. Aligned.
2071             </summary>
2072         </member>
2073         <member name="P:System.Reflection.Metadata.Ecma335.MetadataSizes.MetadataHeaderSize">
2074             <summary>
2075             Metadata header size.
2076             Includes:
2077             - metadata storage signature
2078             - storage header
2079             - stream headers
2080             </summary>
2081         </member>
2082         <member name="P:System.Reflection.Metadata.Ecma335.MetadataSizes.MetadataSize">
2083             <summary>
2084             Total size of metadata (header and all streams).
2085             </summary>
2086         </member>
2087         <member name="M:System.Reflection.Metadata.Ecma335.MetadataSizes.GetAlignedHeapSize(System.Reflection.Metadata.Ecma335.HeapIndex)">
2088             <summary>
2089             Returns aligned size of the specified heap.
2090             </summary>
2091         </member>
2092         <member name="T:System.Reflection.Metadata.Ecma335.SignatureDecoder`2">
2093             <summary>
2094             Decodes signature blobs.
2095             See Metadata Specification section II.23.2: Blobs and signatures.
2096             </summary>
2097         </member>
2098         <member name="M:System.Reflection.Metadata.Ecma335.SignatureDecoder`2.#ctor(System.Reflection.Metadata.ISignatureTypeProvider{`0,`1},System.Reflection.Metadata.MetadataReader,`1)">
2099             <summary>
2100             Creates a new SignatureDecoder.
2101             </summary>
2102             <param name="provider">The provider used to obtain type symbols as the signature is decoded.</param>
2103             <param name="metadataReader">
2104             The metadata reader from which the signature was obtained. It may be null if the given provider allows it.
2105             </param>
2106             <param name="genericContext">
2107             Additional context needed to resolve generic parameters.
2108             </param>
2109         </member>
2110         <member name="M:System.Reflection.Metadata.Ecma335.SignatureDecoder`2.DecodeType(System.Reflection.Metadata.BlobReader@,System.Boolean)">
2111             <summary>
2112             Decodes a type embedded in a signature and advances the reader past the type.
2113             </summary>
2114             <param name="blobReader">The blob reader positioned at the leading SignatureTypeCode</param>
2115             <param name="allowTypeSpecifications">Allow a <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/> to follow a (CLASS | VALUETYPE) in the signature.
2116             At present, the only context where that would be valid is in a LocalConstantSig as defined by the Portable PDB specification.
2117             </param>
2118             <returns>The decoded type.</returns>
2119             <exception cref="T:System.BadImageFormatException">The reader was not positioned at a valid signature type.</exception>
2120         </member>
2121         <member name="M:System.Reflection.Metadata.Ecma335.SignatureDecoder`2.DecodeTypeSequence(System.Reflection.Metadata.BlobReader@)">
2122             <summary> 
2123             Decodes a list of types, with at least one instance that is preceded by its count as a compressed integer.
2124             </summary>
2125         </member>
2126         <member name="M:System.Reflection.Metadata.Ecma335.SignatureDecoder`2.DecodeMethodSignature(System.Reflection.Metadata.BlobReader@)">
2127             <summary>
2128             Decodes a method (definition, reference, or standalone) or property signature blob.
2129             </summary>
2130             <param name="blobReader">BlobReader positioned at a method signature.</param>
2131             <returns>The decoded method signature.</returns>
2132             <exception cref="T:System.BadImageFormatException">The method signature is invalid.</exception>
2133         </member>
2134         <member name="M:System.Reflection.Metadata.Ecma335.SignatureDecoder`2.DecodeMethodSpecificationSignature(System.Reflection.Metadata.BlobReader@)">
2135             <summary>
2136             Decodes a method specification signature blob and advances the reader past the signature.
2137             </summary>
2138             <param name="blobReader">A BlobReader positioned at a valid method specification signature.</param>
2139             <returns>The types used to instantiate a generic method via the method specification.</returns>
2140         </member>
2141         <member name="M:System.Reflection.Metadata.Ecma335.SignatureDecoder`2.DecodeLocalSignature(System.Reflection.Metadata.BlobReader@)">
2142             <summary>
2143             Decodes a local variable signature blob and advances the reader past the signature.
2144             </summary>
2145             <param name="blobReader">The blob reader positioned at a local variable signature.</param>
2146             <returns>The local variable types.</returns>
2147             <exception cref="T:System.BadImageFormatException">The local variable signature is invalid.</exception>
2148         </member>
2149         <member name="M:System.Reflection.Metadata.Ecma335.SignatureDecoder`2.DecodeFieldSignature(System.Reflection.Metadata.BlobReader@)">
2150             <summary>
2151             Decodes a field signature blob and advances the reader past the signature.
2152             </summary>
2153             <param name="blobReader">The blob reader positioned at a field signature.</param>
2154             <returns>The decoded field type.</returns>
2155         </member>
2156         <member name="T:System.Reflection.Metadata.Ecma335.ExportedTypeExtensions">
2157             <summary>
2158             Provides an extension method to access the TypeDefinitionId column of the ExportedType table.
2159             </summary>
2160         </member>
2161         <member name="M:System.Reflection.Metadata.Ecma335.ExportedTypeExtensions.GetTypeDefinitionId(System.Reflection.Metadata.ExportedType)">
2162             <summary>
2163             Gets a hint at the likely row number of the target type in the TypeDef table of its module. 
2164             If the namespaces and names do not match, resolution falls back to a full search of the 
2165             target TypeDef table. Ignored and should be zero if <see cref="P:System.Reflection.Metadata.ExportedType.IsForwarder"/> is
2166             true.
2167             </summary>
2168         </member>
2169         <member name="T:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions">
2170             <summary>
2171             Provides extension methods for working with certain raw elements of the ECMA-335 metadata tables and heaps.
2172             </summary>
2173         </member>
2174         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetTableRowCount(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Ecma335.TableIndex)">
2175             <summary>
2176             Returns the number of rows in the specified table.
2177             </summary>
2178             <exception cref="T:System.ArgumentNullException"><paramref name="reader"/> is null.</exception>
2179             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="tableIndex"/> is not a valid table index.</exception>
2180         </member>
2181         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetTableRowSize(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Ecma335.TableIndex)">
2182             <summary>
2183             Returns the size of a row in the specified table.
2184             </summary>
2185             <exception cref="T:System.ArgumentNullException"><paramref name="reader"/> is null.</exception>
2186             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="tableIndex"/> is not a valid table index.</exception>
2187         </member>
2188         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetTableMetadataOffset(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Ecma335.TableIndex)">
2189             <summary>
2190             Returns the offset from the start of metadata to the specified table.
2191             </summary>
2192             <exception cref="T:System.ArgumentNullException"><paramref name="reader"/> is null.</exception>
2193             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="tableIndex"/> is not a valid table index.</exception>
2194         </member>
2195         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetHeapSize(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Ecma335.HeapIndex)">
2196             <summary>
2197             Returns the size of the specified heap.
2198             </summary>
2199             <exception cref="T:System.ArgumentNullException"><paramref name="reader"/> is null.</exception>
2200             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="heapIndex"/> is not a valid heap index.</exception>
2201         </member>
2202         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetHeapMetadataOffset(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Ecma335.HeapIndex)">
2203             <summary>
2204             Returns the offset from the start of metadata to the specified heap.
2205             </summary>
2206             <exception cref="T:System.ArgumentNullException"><paramref name="reader"/> is null.</exception>
2207             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="heapIndex"/> is not a valid heap index.</exception>
2208         </member>
2209         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetMetadataBlock(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Ecma335.HeapIndex)">
2210             <summary>
2211             Returns the size of the specified heap.
2212             </summary>
2213             <exception cref="T:System.ArgumentNullException"><paramref name="reader"/> is null.</exception>
2214             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="heapIndex"/> is not a valid heap index.</exception>
2215         </member>
2216         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetNextHandle(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.UserStringHandle)">
2217             <summary>
2218             Returns the a handle to the UserString that follows the given one in the UserString heap or a nil handle if it is the last one.
2219             </summary>
2220             <exception cref="T:System.ArgumentNullException"><paramref name="reader"/> is null.</exception>
2221         </member>
2222         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetNextHandle(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.BlobHandle)">
2223             <summary>
2224             Returns the a handle to the Blob that follows the given one in the Blob heap or a nil handle if it is the last one.
2225             </summary>
2226             <exception cref="T:System.ArgumentNullException"><paramref name="reader"/> is null.</exception>
2227         </member>
2228         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetNextHandle(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.StringHandle)">
2229             <summary>
2230             Returns the a handle to the String that follows the given one in the String heap or a nil handle if it is the last one.
2231             </summary>
2232             <exception cref="T:System.ArgumentNullException"><paramref name="reader"/> is null.</exception>
2233         </member>
2234         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetEditAndContinueLogEntries(System.Reflection.Metadata.MetadataReader)">
2235             <summary>
2236             Enumerates entries of EnC log.
2237             </summary>
2238             <exception cref="T:System.ArgumentNullException"><paramref name="reader"/> is null.</exception> 
2239         </member>
2240         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetEditAndContinueMapEntries(System.Reflection.Metadata.MetadataReader)">
2241             <summary>
2242             Enumerates entries of EnC map.
2243             </summary>
2244             <exception cref="T:System.ArgumentNullException"><paramref name="reader"/> is null.</exception>
2245         </member>
2246         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetTypesWithProperties(System.Reflection.Metadata.MetadataReader)">
2247             <summary>
2248             Enumerate types that define one or more properties. 
2249             </summary>
2250             <returns>
2251             The resulting sequence corresponds exactly to entries in PropertyMap table, 
2252             i.e. n-th returned <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/> is stored in n-th row of PropertyMap.
2253             </returns>
2254         </member>
2255         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.GetTypesWithEvents(System.Reflection.Metadata.MetadataReader)">
2256             <summary>
2257             Enumerate types that define one or more events. 
2258             </summary>
2259             <returns>
2260             The resulting sequence corresponds exactly to entries in EventMap table, 
2261             i.e. n-th returned <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/> is stored in n-th row of EventMap.
2262             </returns>
2263         </member>
2264         <member name="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.ResolveSignatureTypeKind(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.EntityHandle,System.Byte)">
2265             <summary>
2266             Given a type handle and a raw type kind found in a signature blob determines whether the target type is a value type or a reference type.
2267             </summary>
2268         </member>
2269         <member name="F:System.Reflection.Metadata.Ecma335.MetadataTokens.TableCount">
2270             <summary>
2271             Maximum number of tables that can be present in Ecma335 metadata.
2272             </summary>
2273         </member>
2274         <member name="F:System.Reflection.Metadata.Ecma335.MetadataTokens.HeapCount">
2275             <summary>
2276             Maximum number of tables that can be present in Ecma335 metadata.
2277             </summary>
2278         </member>
2279         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetRowNumber(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.EntityHandle)">
2280             <summary>
2281             Returns the row number of a metadata table entry that corresponds 
2282             to the specified <paramref name="handle"/> in the context of <paramref name="reader"/>.
2283             </summary>
2284             <returns>One based row number.</returns>
2285             <exception cref="T:System.ArgumentException">The <paramref name="handle"/> is not a valid metadata table handle.</exception>
2286         </member>
2287         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetHeapOffset(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Handle)">
2288             <summary>
2289             Returns the offset of metadata heap data that corresponds 
2290             to the specified <paramref name="handle"/> in the context of <paramref name="reader"/>.
2291             </summary>
2292             <returns>Zero based offset, or -1 if <paramref name="handle"/> isn't a metadata heap handle.</returns>
2293             <exception cref="T:System.NotSupportedException">The operation is not supported for the specified <paramref name="handle"/>.</exception>
2294             <exception cref="T:System.ArgumentException">The <paramref name="handle"/> is invalid.</exception>
2295         </member>
2296         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetToken(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.EntityHandle)">
2297             <summary>
2298             Returns the metadata token of the specified <paramref name="handle"/> in the context of <paramref name="reader"/>.
2299             </summary>
2300             <returns>Metadata token.</returns>
2301             <exception cref="T:System.NotSupportedException">The operation is not supported for the specified <paramref name="handle"/>.</exception>
2302         </member>
2303         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetToken(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Handle)">
2304             <summary>
2305             Returns the metadata token of the specified <paramref name="handle"/> in the context of <paramref name="reader"/>.
2306             </summary>
2307             <returns>Metadata token.</returns>
2308             <exception cref="T:System.ArgumentException">
2309             Handle represents a metadata entity that doesn't have a token.
2310             A token can only be retrieved for a metadata table handle or a heap handle of type <see cref="F:System.Reflection.Metadata.HandleKind.UserString"/>.
2311             </exception>
2312             <exception cref="T:System.NotSupportedException">The operation is not supported for the specified <paramref name="handle"/>.</exception>
2313         </member>
2314         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetRowNumber(System.Reflection.Metadata.EntityHandle)">
2315             <summary>
2316             Returns the row number of a metadata table entry that corresponds 
2317             to the specified <paramref name="handle"/>.
2318             </summary>
2319             <returns>
2320             One based row number, or -1 if <paramref name="handle"/> can only be interpreted in a context of a specific <see cref="T:System.Reflection.Metadata.MetadataReader"/>.
2321             See <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetRowNumber(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.EntityHandle)"/>.
2322             </returns>
2323         </member>
2324         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetHeapOffset(System.Reflection.Metadata.Handle)">
2325             <summary>
2326             Returns the offset of metadata heap data that corresponds 
2327             to the specified <paramref name="handle"/>.
2328             </summary>
2329             <returns>
2330             An offset in the corresponding heap, or -1 if <paramref name="handle"/> can only be interpreted in a context of a specific <see cref="T:System.Reflection.Metadata.MetadataReader"/> or <see cref="T:System.Reflection.Metadata.Ecma335.MetadataBuilder"/>.
2331             See <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetHeapOffset(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Handle)"/>.
2332             </returns>
2333         </member>
2334         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetHeapOffset(System.Reflection.Metadata.BlobHandle)">
2335             <summary>
2336             Returns the offset of metadata heap data that corresponds 
2337             to the specified <paramref name="handle"/>.
2338             </summary>
2339             <returns>
2340             Zero based offset, or -1 if <paramref name="handle"/> can only be interpreted in a context of a specific <see cref="T:System.Reflection.Metadata.MetadataReader"/> or <see cref="T:System.Reflection.Metadata.Ecma335.MetadataBuilder"/>.
2341             See <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetHeapOffset(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Handle)"/>.
2342             </returns>
2343         </member>
2344         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetHeapOffset(System.Reflection.Metadata.GuidHandle)">
2345             <summary>
2346             Returns the offset of metadata heap data that corresponds 
2347             to the specified <paramref name="handle"/>.
2348             </summary>
2349             <returns>
2350             Zero based offset, or -1 if <paramref name="handle"/> can only be interpreted in a context of a specific <see cref="T:System.Reflection.Metadata.MetadataReader"/> or <see cref="T:System.Reflection.Metadata.Ecma335.MetadataBuilder"/>.
2351             See <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetHeapOffset(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Handle)"/>.
2352             </returns>
2353         </member>
2354         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetHeapOffset(System.Reflection.Metadata.UserStringHandle)">
2355             <summary>
2356             Returns the offset of metadata heap data that corresponds 
2357             to the specified <paramref name="handle"/>.
2358             </summary>
2359             <returns>
2360             Zero based offset, or -1 if <paramref name="handle"/> can only be interpreted in a context of a specific <see cref="T:System.Reflection.Metadata.MetadataReader"/> or <see cref="T:System.Reflection.Metadata.Ecma335.MetadataBuilder"/>.
2361             See <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetHeapOffset(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Handle)"/>.
2362             </returns>
2363         </member>
2364         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetHeapOffset(System.Reflection.Metadata.StringHandle)">
2365             <summary>
2366             Returns the offset of metadata heap data that corresponds 
2367             to the specified <paramref name="handle"/>.
2368             </summary>
2369             <returns>
2370             Zero based offset, or -1 if <paramref name="handle"/> can only be interpreted in a context of a specific <see cref="T:System.Reflection.Metadata.MetadataReader"/> or <see cref="T:System.Reflection.Metadata.Ecma335.MetadataBuilder"/>.
2371             See <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetHeapOffset(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Handle)"/>.
2372             </returns>
2373         </member>
2374         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetToken(System.Reflection.Metadata.Handle)">
2375             <summary>
2376             Returns the metadata token of the specified <paramref name="handle"/>.
2377             </summary>
2378             <returns>
2379             Metadata token, or 0 if <paramref name="handle"/> can only be interpreted in a context of a specific <see cref="T:System.Reflection.Metadata.MetadataReader"/>.
2380             See <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetToken(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.Handle)"/>.
2381             </returns>
2382             <exception cref="T:System.ArgumentException">
2383             Handle represents a metadata entity that doesn't have a token.
2384             A token can only be retrieved for a metadata table handle or a heap handle of type <see cref="F:System.Reflection.Metadata.HandleKind.UserString"/>.
2385             </exception>
2386         </member>
2387         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetToken(System.Reflection.Metadata.EntityHandle)">
2388             <summary>
2389             Returns the metadata token of the specified <paramref name="handle"/>.
2390             </summary>
2391             <returns>
2392             Metadata token, or 0 if <paramref name="handle"/> can only be interpreted in a context of a specific <see cref="T:System.Reflection.Metadata.MetadataReader"/>.
2393             See <see cref="M:System.Reflection.Metadata.Ecma335.MetadataTokens.GetToken(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.EntityHandle)"/>.
2394             </returns>
2395         </member>
2396         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.TryGetTableIndex(System.Reflection.Metadata.HandleKind,System.Reflection.Metadata.Ecma335.TableIndex@)">
2397             <summary>
2398             Gets the <see cref="T:System.Reflection.Metadata.Ecma335.TableIndex"/> of the table corresponding to the specified <see cref="T:System.Reflection.Metadata.HandleKind"/>.
2399             </summary>
2400             <param name="type">Handle type.</param>
2401             <param name="index">Table index.</param>
2402             <returns>True if the handle type corresponds to an Ecma335 or Portable PDB table, false otherwise.</returns>
2403         </member>
2404         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.TryGetHeapIndex(System.Reflection.Metadata.HandleKind,System.Reflection.Metadata.Ecma335.HeapIndex@)">
2405             <summary>
2406             Gets the <see cref="T:System.Reflection.Metadata.Ecma335.HeapIndex"/> of the heap corresponding to the specified <see cref="T:System.Reflection.Metadata.HandleKind"/>.
2407             </summary>
2408             <param name="type">Handle type.</param>
2409             <param name="index">Heap index.</param>
2410             <returns>True if the handle type corresponds to an Ecma335 heap, false otherwise.</returns>
2411         </member>
2412         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.Handle(System.Int32)">
2413             <summary>
2414             Creates a handle from a token value.
2415             </summary>
2416             <exception cref="T:System.ArgumentException">
2417             <paramref name="token"/> is not a valid metadata token.
2418             It must encode a metadata table entity or an offset in <see cref="F:System.Reflection.Metadata.HandleKind.UserString"/> heap.
2419             </exception>
2420         </member>
2421         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.EntityHandle(System.Int32)">
2422             <summary>
2423             Creates an entity handle from a token value.
2424             </summary>
2425             <exception cref="T:System.ArgumentException"><paramref name="token"/> is not a valid metadata entity token.</exception>
2426         </member>
2427         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.EntityHandle(System.Reflection.Metadata.Ecma335.TableIndex,System.Int32)">
2428             <summary>
2429             Creates an <see cref="T:System.Reflection.Metadata.EntityHandle"/> from a token value.
2430             </summary>
2431             <exception cref="T:System.ArgumentException">
2432             <paramref name="tableIndex"/> is not a valid table index.</exception>
2433         </member>
2434         <member name="M:System.Reflection.Metadata.Ecma335.MetadataTokens.Handle(System.Reflection.Metadata.Ecma335.TableIndex,System.Int32)">
2435             <summary>
2436             Creates an <see cref="T:System.Reflection.Metadata.EntityHandle"/> from a token value.
2437             </summary>
2438             <exception cref="T:System.ArgumentException">
2439             <paramref name="tableIndex"/> is not a valid table index.</exception>
2440         </member>
2441         <member name="T:System.Reflection.Metadata.Ecma335.HandleType">
2442             <summary>
2443             These constants are all in the byte range and apply to the interpretation of <see cref="P:System.Reflection.Metadata.Handle.VType"/>,
2444             </summary>
2445         </member>
2446         <member name="F:System.Reflection.Metadata.Ecma335.HandleType.VirtualBit">
2447             <summary>
2448             Use the highest bit to mark tokens that are virtual (synthesized).
2449             We create virtual tokens to represent projected WinMD entities. 
2450             </summary>
2451         </member>
2452         <member name="F:System.Reflection.Metadata.Ecma335.HandleType.NonVirtualStringTypeMask">
2453             <summary>
2454             In the case of string handles, the two lower bits that (in addition to the 
2455             virtual bit not included in this mask) encode how to obtain the string value.
2456             </summary>
2457         </member>
2458         <member name="F:System.Reflection.Metadata.Ecma335.TokenTypeIds.VirtualBit">
2459             <summary>
2460             Use the highest bit to mark tokens that are virtual (synthesized).
2461             We create virtual tokens to represent projected WinMD entities. 
2462             </summary>
2463         </member>
2464         <member name="M:System.Reflection.Metadata.Ecma335.TokenTypeIds.IsEntityOrUserStringToken(System.UInt32)">
2465             <summary>
2466             Returns true if the token value can escape the metadata reader.
2467             We don't allow virtual tokens and heap tokens other than UserString to escape 
2468             since the token type ids are internal to the reader and not specified by ECMA spec.
2469             
2470             Spec (Partition III, 1.9 Metadata tokens):
2471             Many CIL instructions are followed by a "metadata token". This is a 4-byte value, that specifies a row in a
2472             metadata table, or a starting byte offset in the User String heap. 
2473             
2474             For example, a value of 0x02 specifies the TypeDef table; a value of 0x70 specifies the User
2475             String heap.The value corresponds to the number assigned to that metadata table (see Partition II for the full
2476             list of tables) or to 0x70 for the User String heap.The least-significant 3 bytes specify the target row within that
2477             metadata table, or starting byte offset within the User String heap.
2478             </summary>
2479         </member>
2480         <member name="P:System.Reflection.Metadata.Ecma335.NamespaceCache.CacheIsRealized">
2481             <summary>
2482             Returns whether the namespaceTable has been created. If it hasn't, calling a GetXXX method
2483             on this will probably have a very high amount of overhead.
2484             </summary>
2485         </member>
2486         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.GetSimpleName(System.Reflection.Metadata.NamespaceDefinitionHandle,System.Int32)">
2487              <summary>
2488              This will return a StringHandle for the simple name of a namespace name at the given segment index.
2489              If no segment index is passed explicitly or the "segment" index is greater than or equal to the number
2490              of segments, then the last segment is used. "Segment" in this context refers to part of a namespace
2491              name between dots.
2492             
2493              Example: Given a NamespaceDefinitionHandle to "System.Collections.Generic.Test" called 'handle':
2494             
2495                reader.GetString(GetSimpleName(handle)) == "Test"
2496                reader.GetString(GetSimpleName(handle, 0)) == "System"
2497                reader.GetString(GetSimpleName(handle, 1)) == "Collections"
2498                reader.GetString(GetSimpleName(handle, 2)) == "Generic"
2499                reader.GetString(GetSimpleName(handle, 3)) == "Test"
2500                reader.GetString(GetSimpleName(handle, 1000)) == "Test"
2501              </summary>
2502         </member>
2503         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.PopulateNamespaceTable">
2504             <summary>
2505             Two distinct namespace handles represent the same namespace if their full names are the same. This
2506             method merges builders corresponding to such namespace handles.
2507             </summary>
2508         </member>
2509         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.MergeDuplicateNamespaces(System.Collections.Generic.Dictionary{System.Reflection.Metadata.NamespaceDefinitionHandle,System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder},System.Collections.Generic.Dictionary{System.String,System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder}@)">
2510             <summary>
2511             This will take 'table' and merge all of the NamespaceData instances that point to the same
2512             namespace. It has to create 'stringTable' as an intermediate dictionary, so it will hand it
2513             back to the caller should the caller want to use it.
2514             </summary>
2515         </member>
2516         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.SynthesizeNamespaceData(System.String,System.Reflection.Metadata.NamespaceDefinitionHandle)">
2517             <summary>
2518             Creates a NamespaceDataBuilder instance that contains a synthesized NamespaceDefinitionHandle, 
2519             as well as the name provided.
2520             </summary>
2521         </member>
2522         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.LinkChildDataToParentData(System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder,System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder)">
2523             <summary>
2524             Quick convenience method that handles linking together child + parent
2525             </summary>
2526         </member>
2527         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.LinkChildToParentNamespace(System.Collections.Generic.Dictionary{System.String,System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder},System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder,System.Collections.Generic.List{System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder}@)">
2528             <summary>
2529             Links a child to its parent namespace. If the parent namespace doesn't exist, this will create a
2530             virtual one. This will automatically link any virtual namespaces it creates up to its parents.
2531             </summary>
2532         </member>
2533         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.ResolveParentChildRelationships(System.Collections.Generic.Dictionary{System.String,System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder},System.Collections.Generic.List{System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder}@)">
2534             <summary>
2535             This will link all parents/children in the given namespaces dictionary up to each other.
2536             
2537             In some cases, we need to synthesize namespaces that do not have any type definitions or forwarders
2538             of their own, but do have child namespaces. These are returned via the virtualNamespaces out
2539             parameter.
2540             </summary>
2541         </member>
2542         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.PopulateTableWithTypeDefinitions(System.Collections.Generic.Dictionary{System.Reflection.Metadata.NamespaceDefinitionHandle,System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder})">
2543             <summary>
2544             Loops through all type definitions in metadata, adding them to the given table
2545             </summary>
2546         </member>
2547         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.PopulateTableWithExportedTypes(System.Collections.Generic.Dictionary{System.Reflection.Metadata.NamespaceDefinitionHandle,System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder})">
2548             <summary>
2549             Loops through all type forwarders in metadata, adding them to the given table
2550             </summary>
2551         </member>
2552         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.PopulateNamespaceList">
2553             <summary>
2554             Populates namespaceList with distinct namespaces. No ordering is guaranteed.
2555             </summary>
2556         </member>
2557         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.EnsureNamespaceTableIsPopulated">
2558             <summary>
2559             If the namespace table doesn't exist, populates it!
2560             </summary>
2561         </member>
2562         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.EnsureNamespaceListIsPopulated">
2563             <summary>
2564             If the namespace list doesn't exist, populates it!
2565             </summary>
2566         </member>
2567         <member name="T:System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder">
2568             <summary>
2569             An intermediate class used to build NamespaceData instances. This was created because we wanted to
2570             use ImmutableArrays in NamespaceData, but having ArrayBuilders and ImmutableArrays that served the
2571             same purpose in NamespaceData got ugly. With the current design of how we create our Namespace
2572             dictionary, this needs to be a class because we have a many-to-one mapping between NamespaceHandles
2573             and NamespaceData. So, the pointer semantics must be preserved.
2574             
2575             This class assumes that the builders will not be modified in any way after the first call to
2576             Freeze().
2577             </summary>
2578         </member>
2579         <member name="M:System.Reflection.Metadata.Ecma335.NamespaceCache.NamespaceDataBuilder.Freeze">
2580             <summary>
2581             Returns a NamespaceData that represents this NamespaceDataBuilder instance. After calling
2582             this method, it is an error to use any methods or fields except Freeze() on the target 
2583             NamespaceDataBuilder.
2584             </summary>
2585         </member>
2586         <member name="M:System.Reflection.Metadata.Ecma335.FieldLayoutTableReader.FindFieldLayoutRowId(System.Reflection.Metadata.FieldDefinitionHandle)">
2587             <summary>
2588             Returns field offset for given field RowId, or -1 if not available. 
2589             </summary>
2590         </member>
2591         <member name="F:System.Reflection.Metadata.Ecma335.AssemblyRefTableReader.NumberOfNonVirtualRows">
2592             <summary>
2593             In CLI metadata equal to the actual number of entries in AssemblyRef table.
2594             In WinMD metadata it includes synthesized AssemblyRefs in addition.
2595             </summary>
2596         </member>
2597         <member name="T:System.Reflection.Metadata.EntityHandle">
2598             <summary>
2599             Represents a metadata entity (type reference/definition/specification, method definition, custom attribute, etc.). 
2600             </summary>
2601             <remarks>
2602             Use <see cref="T:System.Reflection.Metadata.EntityHandle"/> to store multiple kinds of entity handles.
2603             It has smaller memory footprint than <see cref="T:System.Reflection.Metadata.Handle"/>.
2604             </remarks>
2605         </member>
2606         <member name="P:System.Reflection.Metadata.EntityHandle.SpecificHandleValue">
2607             <summary>
2608             Value stored in a specific entity handle (see <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/>, etc.).
2609             </summary>
2610         </member>
2611         <member name="M:System.Reflection.Metadata.BlobWriter.ContentEquals(System.Reflection.Metadata.BlobWriter)">
2612             <summary>
2613             Compares the current content of this writer with another one.
2614             </summary>
2615         </member>
2616         <member name="M:System.Reflection.Metadata.BlobWriter.ToArray(System.Int32,System.Int32)">
2617             <exception cref="T:System.ArgumentOutOfRangeException">Range specified by <paramref name="start"/> and <paramref name="byteCount"/> falls outside of the bounds of the buffer content.</exception>
2618         </member>
2619         <member name="M:System.Reflection.Metadata.BlobWriter.ToImmutableArray(System.Int32,System.Int32)">
2620             <exception cref="T:System.ArgumentOutOfRangeException">Range specified by <paramref name="start"/> and <paramref name="byteCount"/> falls outside of the bounds of the buffer content.</exception>
2621         </member>
2622         <member name="M:System.Reflection.Metadata.BlobWriter.WriteBytes(System.Byte,System.Int32)">
2623             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="byteCount"/> is negative.</exception>
2624         </member>
2625         <member name="M:System.Reflection.Metadata.BlobWriter.WriteBytes(System.Byte*,System.Int32)">
2626             <exception cref="T:System.ArgumentNullException"><paramref name="buffer"/> is null.</exception>
2627             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="byteCount"/> is negative.</exception>
2628         </member>
2629         <member name="M:System.Reflection.Metadata.BlobWriter.WriteBytes(System.Reflection.Metadata.BlobBuilder)">
2630             <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
2631         </member>
2632         <member name="M:System.Reflection.Metadata.BlobWriter.WriteBytes(System.IO.Stream,System.Int32)">
2633             <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
2634             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="byteCount"/> is negative.</exception>
2635         </member>
2636         <member name="M:System.Reflection.Metadata.BlobWriter.WriteBytes(System.Collections.Immutable.ImmutableArray{System.Byte})">
2637             <exception cref="T:System.ArgumentNullException"><paramref name="buffer"/> is null.</exception>
2638         </member>
2639         <member name="M:System.Reflection.Metadata.BlobWriter.WriteBytes(System.Collections.Immutable.ImmutableArray{System.Byte},System.Int32,System.Int32)">
2640             <exception cref="T:System.ArgumentNullException"><paramref name="buffer"/> is null.</exception>
2641             <exception cref="T:System.ArgumentOutOfRangeException">Range specified by <paramref name="start"/> and <paramref name="byteCount"/> falls outside of the bounds of the <paramref name="buffer"/>.</exception>
2642         </member>
2643         <member name="M:System.Reflection.Metadata.BlobWriter.WriteBytes(System.Byte[])">
2644             <exception cref="T:System.ArgumentNullException"><paramref name="buffer"/> is null.</exception>
2645         </member>
2646         <member name="M:System.Reflection.Metadata.BlobWriter.WriteBytes(System.Byte[],System.Int32,System.Int32)">
2647             <exception cref="T:System.ArgumentNullException"><paramref name="buffer"/> is null.</exception>
2648             <exception cref="T:System.ArgumentOutOfRangeException">Range specified by <paramref name="start"/> and <paramref name="byteCount"/> falls outside of the bounds of the <paramref name="buffer"/>.</exception>
2649         </member>
2650         <member name="M:System.Reflection.Metadata.BlobWriter.WriteReference(System.Int32,System.Boolean)">
2651             <summary>
2652             Writes a reference to a heap (heap offset) or a table (row number).
2653             </summary>
2654             <param name="reference">Heap offset or table row number.</param>
2655             <param name="isSmall">True to encode the reference as 16-bit integer, false to encode as 32-bit integer.</param>
2656         </member>
2657         <member name="M:System.Reflection.Metadata.BlobWriter.WriteUTF16(System.Char[])">
2658             <summary>
2659             Writes UTF16 (little-endian) encoded string at the current position.
2660             </summary>
2661             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
2662         </member>
2663         <member name="M:System.Reflection.Metadata.BlobWriter.WriteUTF16(System.String)">
2664             <summary>
2665             Writes UTF16 (little-endian) encoded string at the current position.
2666             </summary>
2667             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
2668         </member>
2669         <member name="M:System.Reflection.Metadata.BlobWriter.WriteSerializedString(System.String)">
2670             <summary>
2671             Writes string in SerString format (see ECMA-335-II 23.3 Custom attributes).
2672             </summary>
2673             <remarks>
2674             The string is UTF8 encoded and prefixed by the its size in bytes. 
2675             Null string is represented as a single byte 0xFF.
2676             </remarks>
2677             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2678         </member>
2679         <member name="M:System.Reflection.Metadata.BlobWriter.WriteUserString(System.String)">
2680             <summary>
2681             Writes string in User String (#US) heap format (see ECMA-335-II 24.2.4 #US and #Blob heaps):
2682             </summary>
2683             <remarks>
2684             The string is UTF16 encoded and prefixed by the its size in bytes.
2685             
2686             This final byte holds the value 1 if and only if any UTF16 character within the string has any bit set in its top byte,
2687             or its low byte is any of the following: 0x01–0x08, 0x0E–0x1F, 0x27, 0x2D, 0x7F. Otherwise, it holds 0. 
2688             The 1 signifies Unicode characters that require handling beyond that normally provided for 8-bit encoding sets. 
2689             </remarks>
2690             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2691         </member>
2692         <member name="M:System.Reflection.Metadata.BlobWriter.WriteUTF8(System.String,System.Boolean)">
2693             <summary>
2694             Writes UTF8 encoded string at the current position.
2695             </summary>
2696             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
2697         </member>
2698         <member name="M:System.Reflection.Metadata.BlobWriter.WriteCompressedSignedInteger(System.Int32)">
2699             <summary>
2700             Implements compressed signed integer encoding as defined by ECMA-335-II chapter 23.2: Blobs and signatures.
2701             </summary>
2702             <remarks>
2703             If the value lies between -64 (0xFFFFFFC0) and 63 (0x3F), inclusive, encode as a one-byte integer: 
2704             bit 7 clear, value bits 5 through 0 held in bits 6 through 1, sign bit (value bit 31) in bit 0.
2705             
2706             If the value lies between -8192 (0xFFFFE000) and 8191 (0x1FFF), inclusive, encode as a two-byte integer: 
2707             15 set, bit 14 clear, value bits 12 through 0 held in bits 13 through 1, sign bit(value bit 31) in bit 0.
2708             
2709             If the value lies between -268435456 (0xF000000) and 268435455 (0x0FFFFFFF), inclusive, encode as a four-byte integer: 
2710             31 set, 30 set, bit 29 clear, value bits 27 through 0 held in bits 28 through 1, sign bit(value bit 31) in bit 0.
2711             </remarks>
2712             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="value"/> can't be represented as a compressed signed integer.</exception>
2713         </member>
2714         <member name="M:System.Reflection.Metadata.BlobWriter.WriteCompressedInteger(System.Int32)">
2715             <summary>
2716             Implements compressed unsigned integer encoding as defined by ECMA-335-II chapter 23.2: Blobs and signatures.
2717             </summary>
2718             <remarks>
2719             If the value lies between 0 (0x00) and 127 (0x7F), inclusive, 
2720             encode as a one-byte integer (bit 7 is clear, value held in bits 6 through 0).
2721             
2722             If the value lies between 28 (0x80) and 214 â€“ 1 (0x3FFF), inclusive, 
2723             encode as a 2-byte integer with bit 15 set, bit 14 clear(value held in bits 13 through 0).
2724             
2725             Otherwise, encode as a 4-byte integer, with bit 31 set, bit 30 set, bit 29 clear (value held in bits 28 through 0).
2726             </remarks>
2727             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="value"/> can't be represented as a compressed unsigned integer.</exception>
2728         </member>
2729         <member name="M:System.Reflection.Metadata.BlobWriter.WriteConstant(System.Object)">
2730             <summary>
2731             Writes a constant value (see ECMA-335 Partition II section 22.9) at the current position.
2732             </summary>
2733             <exception cref="T:System.ArgumentException"><paramref name="value"/> is not of a constant type.</exception>
2734         </member>
2735         <member name="M:System.Reflection.Metadata.BlobBuilder.GetBlobs">
2736             <summary>
2737             Returns a sequence of all blobs that represent the content of the builder.
2738             </summary>
2739             <exception cref="T:System.InvalidOperationException">Content is not available, the builder has been linked with another one.</exception>
2740         </member>
2741         <member name="M:System.Reflection.Metadata.BlobBuilder.ContentEquals(System.Reflection.Metadata.BlobBuilder)">
2742             <summary>
2743             Compares the current content of this writer with another one.
2744             </summary>
2745             <exception cref="T:System.InvalidOperationException">Content is not available, the builder has been linked with another one.</exception>
2746         </member>
2747         <member name="M:System.Reflection.Metadata.BlobBuilder.ToArray">
2748             <exception cref="T:System.InvalidOperationException">Content is not available, the builder has been linked with another one.</exception>
2749         </member>
2750         <member name="M:System.Reflection.Metadata.BlobBuilder.ToArray(System.Int32,System.Int32)">
2751             <exception cref="T:System.ArgumentOutOfRangeException">Range specified by <paramref name="start"/> and <paramref name="byteCount"/> falls outside of the bounds of the buffer content.</exception>
2752             <exception cref="T:System.InvalidOperationException">Content is not available, the builder has been linked with another one.</exception>
2753         </member>
2754         <member name="M:System.Reflection.Metadata.BlobBuilder.ToImmutableArray">
2755             <exception cref="T:System.InvalidOperationException">Content is not available, the builder has been linked with another one.</exception>
2756         </member>
2757         <member name="M:System.Reflection.Metadata.BlobBuilder.ToImmutableArray(System.Int32,System.Int32)">
2758             <exception cref="T:System.ArgumentOutOfRangeException">Range specified by <paramref name="start"/> and <paramref name="byteCount"/> falls outside of the bounds of the buffer content.</exception>
2759             <exception cref="T:System.InvalidOperationException">Content is not available, the builder has been linked with another one.</exception>
2760         </member>
2761         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteContentTo(System.IO.Stream)">
2762             <exception cref="T:System.ArgumentNullException"><paramref name="destination"/> is null.</exception>
2763             <exception cref="T:System.InvalidOperationException">Content is not available, the builder has been linked with another one.</exception>
2764         </member>
2765         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteContentTo(System.Reflection.Metadata.BlobWriter@)">
2766             <exception cref="T:System.ArgumentNullException"><paramref name="destination"/> is default(<see cref="T:System.Reflection.Metadata.BlobWriter"/>).</exception>
2767             <exception cref="T:System.InvalidOperationException">Content is not available, the builder has been linked with another one.</exception>
2768         </member>
2769         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteContentTo(System.Reflection.Metadata.BlobBuilder)">
2770             <exception cref="T:System.ArgumentNullException"><paramref name="destination"/> is null.</exception>
2771             <exception cref="T:System.InvalidOperationException">Content is not available, the builder has been linked with another one.</exception>
2772         </member>
2773         <member name="M:System.Reflection.Metadata.BlobBuilder.LinkPrefix(System.Reflection.Metadata.BlobBuilder)">
2774             <exception cref="T:System.ArgumentNullException"><paramref name="prefix"/> is null.</exception>
2775             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2776         </member>
2777         <member name="M:System.Reflection.Metadata.BlobBuilder.LinkSuffix(System.Reflection.Metadata.BlobBuilder)">
2778             <exception cref="T:System.ArgumentNullException"><paramref name="suffix"/> is null.</exception>
2779             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2780         </member>
2781         <member name="M:System.Reflection.Metadata.BlobBuilder.ReserveBytes(System.Int32)">
2782             <summary>
2783             Reserves a contiguous block of bytes.
2784             </summary>
2785             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="byteCount"/> is negative.</exception>
2786             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2787         </member>
2788         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteBytes(System.Byte,System.Int32)">
2789             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="byteCount"/> is negative.</exception>
2790             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2791         </member>
2792         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteBytes(System.Byte*,System.Int32)">
2793             <exception cref="T:System.ArgumentNullException"><paramref name="buffer"/> is null.</exception>
2794             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="byteCount"/> is negative.</exception>
2795             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2796         </member>
2797         <member name="M:System.Reflection.Metadata.BlobBuilder.TryWriteBytes(System.IO.Stream,System.Int32)">
2798             <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
2799             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="byteCount"/> is negative.</exception>
2800             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2801             <returns>Bytes successfully written from the <paramref name="source" />.</returns>
2802         </member>
2803         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteBytes(System.Collections.Immutable.ImmutableArray{System.Byte})">
2804             <exception cref="T:System.ArgumentNullException"><paramref name="buffer"/> is null.</exception>
2805             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2806         </member>
2807         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteBytes(System.Collections.Immutable.ImmutableArray{System.Byte},System.Int32,System.Int32)">
2808             <exception cref="T:System.ArgumentNullException"><paramref name="buffer"/> is null.</exception>
2809             <exception cref="T:System.ArgumentOutOfRangeException">Range specified by <paramref name="start"/> and <paramref name="byteCount"/> falls outside of the bounds of the <paramref name="buffer"/>.</exception>
2810             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2811         </member>
2812         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteBytes(System.Byte[])">
2813             <exception cref="T:System.ArgumentNullException"><paramref name="buffer"/> is null.</exception>
2814             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2815         </member>
2816         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteBytes(System.Byte[],System.Int32,System.Int32)">
2817             <exception cref="T:System.ArgumentNullException"><paramref name="buffer"/> is null.</exception>
2818             <exception cref="T:System.ArgumentOutOfRangeException">Range specified by <paramref name="start"/> and <paramref name="byteCount"/> falls outside of the bounds of the <paramref name="buffer"/>.</exception>
2819             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2820         </member>
2821         <member name="M:System.Reflection.Metadata.BlobBuilder.PadTo(System.Int32)">
2822             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2823         </member>
2824         <member name="M:System.Reflection.Metadata.BlobBuilder.Align(System.Int32)">
2825             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2826         </member>
2827         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteBoolean(System.Boolean)">
2828             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2829         </member>
2830         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteByte(System.Byte)">
2831             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2832         </member>
2833         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteSByte(System.SByte)">
2834             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2835         </member>
2836         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteDouble(System.Double)">
2837             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2838         </member>
2839         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteSingle(System.Single)">
2840             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2841         </member>
2842         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteInt16(System.Int16)">
2843             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2844         </member>
2845         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteUInt16(System.UInt16)">
2846             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2847         </member>
2848         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteInt16BE(System.Int16)">
2849             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2850         </member>
2851         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteUInt16BE(System.UInt16)">
2852             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2853         </member>
2854         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteInt32BE(System.Int32)">
2855             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2856         </member>
2857         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteUInt32BE(System.UInt32)">
2858             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2859         </member>
2860         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteInt32(System.Int32)">
2861             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2862         </member>
2863         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteUInt32(System.UInt32)">
2864             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2865         </member>
2866         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteInt64(System.Int64)">
2867             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2868         </member>
2869         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteUInt64(System.UInt64)">
2870             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2871         </member>
2872         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteDecimal(System.Decimal)">
2873             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2874         </member>
2875         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteGuid(System.Guid)">
2876             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2877         </member>
2878         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteDateTime(System.DateTime)">
2879             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2880         </member>
2881         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteReference(System.Int32,System.Boolean)">
2882             <summary>
2883             Writes a reference to a heap (heap offset) or a table (row number).
2884             </summary>
2885             <param name="reference">Heap offset or table row number.</param>
2886             <param name="isSmall">True to encode the reference as 16-bit integer, false to encode as 32-bit integer.</param>
2887             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2888         </member>
2889         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteUTF16(System.Char[])">
2890             <summary>
2891             Writes UTF16 (little-endian) encoded string at the current position.
2892             </summary>
2893             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
2894             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2895         </member>
2896         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteUTF16(System.String)">
2897             <summary>
2898             Writes UTF16 (little-endian) encoded string at the current position.
2899             </summary>
2900             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
2901             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2902         </member>
2903         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteSerializedString(System.String)">
2904             <summary>
2905             Writes string in SerString format (see ECMA-335-II 23.3 Custom attributes).
2906             </summary>
2907             <remarks>
2908             The string is UTF8 encoded and prefixed by the its size in bytes. 
2909             Null string is represented as a single byte 0xFF.
2910             </remarks>
2911             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2912         </member>
2913         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteUserString(System.String)">
2914             <summary>
2915             Writes string in User String (#US) heap format (see ECMA-335-II 24.2.4 #US and #Blob heaps):
2916             </summary>
2917             <remarks>
2918             The string is UTF16 encoded and prefixed by the its size in bytes.
2919             
2920             This final byte holds the value 1 if and only if any UTF16 character within the string has any bit set in its top byte,
2921             or its low byte is any of the following: 0x01–0x08, 0x0E–0x1F, 0x27, 0x2D, 0x7F. Otherwise, it holds 0. 
2922             The 1 signifies Unicode characters that require handling beyond that normally provided for 8-bit encoding sets. 
2923             </remarks>
2924             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2925         </member>
2926         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteUTF8(System.String,System.Boolean)">
2927             <summary>
2928             Writes UTF8 encoded string at the current position.
2929             </summary>
2930             <param name="value">Constant value.</param>
2931             <param name="allowUnpairedSurrogates">
2932             True to encode unpaired surrogates as specified, otherwise replace them with U+FFFD character.
2933             </param>
2934             <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is null.</exception>
2935             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2936         </member>
2937         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteCompressedSignedInteger(System.Int32)">
2938             <summary>
2939             Implements compressed signed integer encoding as defined by ECMA-335-II chapter 23.2: Blobs and signatures.
2940             </summary>
2941             <remarks>
2942             If the value lies between -64 (0xFFFFFFC0) and 63 (0x3F), inclusive, encode as a one-byte integer: 
2943             bit 7 clear, value bits 5 through 0 held in bits 6 through 1, sign bit (value bit 31) in bit 0.
2944             
2945             If the value lies between -8192 (0xFFFFE000) and 8191 (0x1FFF), inclusive, encode as a two-byte integer: 
2946             15 set, bit 14 clear, value bits 12 through 0 held in bits 13 through 1, sign bit(value bit 31) in bit 0.
2947             
2948             If the value lies between -268435456 (0xF000000) and 268435455 (0x0FFFFFFF), inclusive, encode as a four-byte integer: 
2949             31 set, 30 set, bit 29 clear, value bits 27 through 0 held in bits 28 through 1, sign bit(value bit 31) in bit 0.
2950             </remarks>
2951             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="value"/> can't be represented as a compressed signed integer.</exception>
2952             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2953         </member>
2954         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteCompressedInteger(System.Int32)">
2955             <summary>
2956             Implements compressed unsigned integer encoding as defined by ECMA-335-II chapter 23.2: Blobs and signatures.
2957             </summary>
2958             <remarks>
2959             If the value lies between 0 (0x00) and 127 (0x7F), inclusive, 
2960             encode as a one-byte integer (bit 7 is clear, value held in bits 6 through 0).
2961             
2962             If the value lies between 28 (0x80) and 214 â€“ 1 (0x3FFF), inclusive, 
2963             encode as a 2-byte integer with bit 15 set, bit 14 clear (value held in bits 13 through 0).
2964             
2965             Otherwise, encode as a 4-byte integer, with bit 31 set, bit 30 set, bit 29 clear (value held in bits 28 through 0).
2966             </remarks>
2967             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="value"/> can't be represented as a compressed unsigned integer.</exception>
2968             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2969         </member>
2970         <member name="M:System.Reflection.Metadata.BlobBuilder.WriteConstant(System.Object)">
2971             <summary>
2972             Writes a constant value (see ECMA-335 Partition II section 22.9) at the current position.
2973             </summary>
2974             <exception cref="T:System.ArgumentException"><paramref name="value"/> is not of a constant type.</exception>
2975             <exception cref="T:System.InvalidOperationException">Builder is not writable, it has been linked with another one.</exception>
2976         </member>
2977         <member name="F:System.Reflection.Metadata.PortablePdbVersions.DefaultMetadataVersion">
2978             <summary>
2979             Version of Portable PDB format emitted by the writer by default. Metadata version string.
2980             </summary>
2981         </member>
2982         <member name="F:System.Reflection.Metadata.PortablePdbVersions.DefaultFormatVersion">
2983             <summary>
2984             Version of Portable PDB format emitted by the writer by default.
2985             </summary>
2986         </member>
2987         <member name="F:System.Reflection.Metadata.PortablePdbVersions.MinFormatVersion">
2988             <summary>
2989             Minimal supported version of Portable PDB format.
2990             </summary>
2991         </member>
2992         <member name="F:System.Reflection.Metadata.PortablePdbVersions.MinEmbeddedVersion">
2993             <summary>
2994             Minimal supported version of Embedded Portable PDB blob.
2995             </summary>
2996         </member>
2997         <member name="F:System.Reflection.Metadata.PortablePdbVersions.DefaultEmbeddedVersion">
2998             <summary>
2999             Version of Embedded Portable PDB blob format emitted by the writer by default.
3000             </summary>
3001         </member>
3002         <member name="F:System.Reflection.Metadata.PortablePdbVersions.MinUnsupportedEmbeddedVersion">
3003             <summary>
3004             Minimal version of the Embedded Portable PDB blob that the current reader can't interpret.
3005             </summary>
3006         </member>
3007         <member name="T:System.Reflection.Metadata.ReservedBlob`1">
3008             <summary>
3009             Represents a handle and a corresponding blob on a metadata heap that was reserved for future content update.
3010             </summary>
3011         </member>
3012         <member name="M:System.Reflection.Metadata.ReservedBlob`1.CreateWriter">
3013             <summary>
3014             Returns a <see cref="T:System.Reflection.Metadata.BlobWriter"/> to be used to update the content.
3015             </summary>
3016         </member>
3017         <member name="M:System.Reflection.Metadata.ICustomAttributeTypeProvider`1.GetSystemType">
3018             <summary>
3019             Gets the TType representation for <see cref="T:System.Type"/>.
3020             </summary>
3021         </member>
3022         <member name="M:System.Reflection.Metadata.ICustomAttributeTypeProvider`1.IsSystemType(`0)">
3023             <summary>
3024             Returns true if the given type represents <see cref="T:System.Type"/>.
3025             </summary>
3026         </member>
3027         <member name="M:System.Reflection.Metadata.ICustomAttributeTypeProvider`1.GetTypeFromSerializedName(System.String)">
3028             <summary>
3029             Get the type symbol for the given serialized type name.
3030             The serialized type name is in so-called "reflection notation" (i.e. as understood by <see cref="M:System.Type.GetType(System.String)"/>.)
3031             </summary>
3032             <exception cref="T:System.BadImageFormatException">The name is malformed.</exception>
3033         </member>
3034         <member name="M:System.Reflection.Metadata.ICustomAttributeTypeProvider`1.GetUnderlyingEnumType(`0)">
3035             <summary>
3036             Gets the underlying type of the given enum type symbol.
3037             </summary>
3038             <exception cref="T:System.BadImageFormatException">The given type symbol does not represent an enum.</exception>
3039         </member>
3040         <member name="M:System.Reflection.Metadata.ILOpCodeExtensions.IsBranch(System.Reflection.Metadata.ILOpCode)">
3041             <summary>
3042             Returns true of the specified op-code is a branch to a label.
3043             </summary>
3044         </member>
3045         <member name="M:System.Reflection.Metadata.ILOpCodeExtensions.GetBranchOperandSize(System.Reflection.Metadata.ILOpCode)">
3046             <summary>
3047             Calculate the size of the specified branch instruction operand.
3048             </summary>
3049             <param name="opCode">Branch op-code.</param>
3050             <returns>1 if <paramref name="opCode"/> is a short branch or 4 if it is a long branch.</returns>
3051             <exception cref="T:System.ArgumentException">Specified <paramref name="opCode"/> is not a branch op-code.</exception>
3052         </member>
3053         <member name="M:System.Reflection.Metadata.ILOpCodeExtensions.GetShortBranch(System.Reflection.Metadata.ILOpCode)">
3054             <summary>
3055             Get a short form of the specified branch op-code.
3056             </summary>
3057             <param name="opCode">Branch op-code.</param>
3058             <returns>Short form of the branch op-code.</returns>
3059             <exception cref="T:System.ArgumentException">Specified <paramref name="opCode"/> is not a branch op-code.</exception>
3060         </member>
3061         <member name="M:System.Reflection.Metadata.ILOpCodeExtensions.GetLongBranch(System.Reflection.Metadata.ILOpCode)">
3062             <summary>
3063             Get a long form of the specified branch op-code.
3064             </summary>
3065             <param name="opCode">Branch op-code.</param>
3066             <returns>Long form of the branch op-code.</returns>
3067             <exception cref="T:System.ArgumentException">Specified <paramref name="opCode"/> is not a branch op-code.</exception>
3068         </member>
3069         <member name="F:System.Reflection.Metadata.MetadataStreamOptions.Default">
3070             <summary>
3071             By default the stream is disposed when <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> is disposed and sections of the PE image are read lazily.
3072             </summary>
3073         </member>
3074         <member name="F:System.Reflection.Metadata.MetadataStreamOptions.LeaveOpen">
3075             <summary>
3076             Keep the stream open when the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> is disposed.
3077             </summary>
3078         </member>
3079         <member name="F:System.Reflection.Metadata.MetadataStreamOptions.PrefetchMetadata">
3080             <summary>
3081             Reads PDB metadata into memory right away. 
3082             </summary>
3083             <remarks>
3084             The underlying file may be closed and even deleted after <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> is constructed.
3085             <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> closes the stream automatically by the time the constructor returns unless <see cref="F:System.Reflection.Metadata.MetadataStreamOptions.LeaveOpen"/> is specified.
3086             </remarks>
3087         </member>
3088         <member name="T:System.Reflection.Metadata.MetadataReaderProvider">
3089             <summary>
3090             Provides a <see cref="T:System.Reflection.Metadata.MetadataReader"/> metadata stored in an array of bytes, a memory block, or a stream.
3091             </summary>
3092             <remarks>
3093             Supported formats:
3094             - ECMA-335 CLI (Common Language Infrastructure) metadata (<see cref="M:System.Reflection.Metadata.MetadataReaderProvider.FromMetadataImage(System.Byte*,System.Int32)"/>)
3095             - Edit and Continue metadata delta (<see cref="M:System.Reflection.Metadata.MetadataReaderProvider.FromMetadataImage(System.Byte*,System.Int32)"/>)
3096             - Portable PDB metadata (<see cref="M:System.Reflection.Metadata.MetadataReaderProvider.FromPortablePdbImage(System.Byte*,System.Int32)"/>)
3097             </remarks>
3098         </member>
3099         <member name="M:System.Reflection.Metadata.MetadataReaderProvider.FromPortablePdbImage(System.Byte*,System.Int32)">
3100             <summary>
3101             Creates a Portable PDB metadata provider over a blob stored in memory.
3102             </summary>
3103             <param name="start">Pointer to the start of the Portable PDB blob.</param>
3104             <param name="size">The size of the Portable PDB blob.</param>
3105             <exception cref="T:System.ArgumentNullException"><paramref name="start"/> is <see cref="F:System.IntPtr.Zero"/>.</exception>
3106             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="size"/> is negative.</exception>
3107             <remarks>
3108             The memory is owned by the caller and not released on disposal of the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>.
3109             The caller is responsible for keeping the memory alive and unmodified throughout the lifetime of the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>.
3110             The content of the blob is not read during the construction of the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>
3111             </remarks>
3112         </member>
3113         <member name="M:System.Reflection.Metadata.MetadataReaderProvider.FromMetadataImage(System.Byte*,System.Int32)">
3114             <summary>
3115             Creates a metadata provider over an image stored in memory.
3116             </summary>
3117             <param name="start">Pointer to the start of the metadata blob.</param>
3118             <param name="size">The size of the metadata blob.</param>
3119             <exception cref="T:System.ArgumentNullException"><paramref name="start"/> is <see cref="F:System.IntPtr.Zero"/>.</exception>
3120             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="size"/> is negative.</exception>
3121             <remarks>
3122             The memory is owned by the caller and not released on disposal of the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>.
3123             The caller is responsible for keeping the memory alive and unmodified throughout the lifetime of the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>.
3124             The content of the blob is not read during the construction of the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>
3125             </remarks>
3126         </member>
3127         <member name="M:System.Reflection.Metadata.MetadataReaderProvider.FromPortablePdbImage(System.Collections.Immutable.ImmutableArray{System.Byte})">
3128             <summary>
3129             Creates a Portable PDB metadata provider over a byte array.
3130             </summary>
3131             <param name="image">Portable PDB image.</param>
3132             <remarks>
3133             The content of the image is not read during the construction of the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>
3134             </remarks>
3135             <exception cref="T:System.ArgumentNullException"><paramref name="image"/> is null.</exception>
3136         </member>
3137         <member name="M:System.Reflection.Metadata.MetadataReaderProvider.FromMetadataImage(System.Collections.Immutable.ImmutableArray{System.Byte})">
3138             <summary>
3139             Creates a provider over a byte array.
3140             </summary>
3141             <param name="image">Metadata image.</param>
3142             <remarks>
3143             The content of the image is not read during the construction of the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>
3144             </remarks>
3145             <exception cref="T:System.ArgumentNullException"><paramref name="image"/> is null.</exception>
3146         </member>
3147         <member name="M:System.Reflection.Metadata.MetadataReaderProvider.FromPortablePdbStream(System.IO.Stream,System.Reflection.Metadata.MetadataStreamOptions,System.Int32)">
3148             <summary>
3149             Creates a provider for a stream of the specified size beginning at its current position.
3150             </summary>
3151             <param name="stream">Stream.</param>
3152             <param name="size">Size of the metadata blob in the stream. If not specified the metadata blob is assumed to span to the end of the stream.</param>
3153             <param name="options">
3154             Options specifying how sections of the image are read from the stream.
3155             
3156             Unless <see cref="F:System.Reflection.Metadata.MetadataStreamOptions.LeaveOpen"/> is specified, ownership of the stream is transferred to the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> 
3157             upon successful argument validation. It will be disposed by the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> and the caller must not manipulate it.
3158             
3159             Unless <see cref="F:System.Reflection.Metadata.MetadataStreamOptions.PrefetchMetadata"/> is specified no data 
3160             is read from the stream during the construction of the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>. Furthermore, the stream must not be manipulated
3161             by caller while the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> is alive and undisposed.
3162             
3163             If <see cref="F:System.Reflection.Metadata.MetadataStreamOptions.PrefetchMetadata"/>, the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> 
3164             will have read all of the data requested during construction. As such, if <see cref="F:System.Reflection.Metadata.MetadataStreamOptions.LeaveOpen"/> is also
3165             specified, the caller retains full ownership of the stream and is assured that it will not be manipulated by the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>
3166             after construction.
3167             </param>
3168             <exception cref="T:System.ArgumentNullException"><paramref name="stream"/> is null.</exception>
3169             <exception cref="T:System.ArgumentException"><paramref name="stream"/> doesn't support read and seek operations.</exception>
3170             <exception cref="T:System.ArgumentOutOfRangeException">Size is negative or extends past the end of the stream.</exception>
3171         </member>
3172         <member name="M:System.Reflection.Metadata.MetadataReaderProvider.FromMetadataStream(System.IO.Stream,System.Reflection.Metadata.MetadataStreamOptions,System.Int32)">
3173             <summary>
3174             Creates a provider for a stream of the specified size beginning at its current position.
3175             </summary>
3176             <param name="stream">Stream.</param>
3177             <param name="size">Size of the metadata blob in the stream. If not specified the metadata blob is assumed to span to the end of the stream.</param>
3178             <param name="options">
3179             Options specifying how sections of the image are read from the stream.
3180             
3181             Unless <see cref="F:System.Reflection.Metadata.MetadataStreamOptions.LeaveOpen"/> is specified, ownership of the stream is transferred to the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> 
3182             upon successful argument validation. It will be disposed by the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> and the caller must not manipulate it.
3183             
3184             Unless <see cref="F:System.Reflection.Metadata.MetadataStreamOptions.PrefetchMetadata"/> is specified no data 
3185             is read from the stream during the construction of the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>. Furthermore, the stream must not be manipulated
3186             by caller while the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> is alive and undisposed.
3187             
3188             If <see cref="F:System.Reflection.Metadata.MetadataStreamOptions.PrefetchMetadata"/>, the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> 
3189             will have read all of the data requested during construction. As such, if <see cref="F:System.Reflection.Metadata.MetadataStreamOptions.LeaveOpen"/> is also
3190             specified, the caller retains full ownership of the stream and is assured that it will not be manipulated by the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>
3191             after construction.
3192             </param>
3193             <exception cref="T:System.ArgumentNullException"><paramref name="stream"/> is null.</exception>
3194             <exception cref="T:System.ArgumentException"><paramref name="stream"/> doesn't support read and seek operations.</exception>
3195             <exception cref="T:System.ArgumentOutOfRangeException">Size is negative or extends past the end of the stream.</exception>
3196             <exception cref="T:System.IO.IOException">Error reading from the stream (only when <see cref="F:System.Reflection.Metadata.MetadataStreamOptions.PrefetchMetadata"/> is specified).</exception>
3197         </member>
3198         <member name="M:System.Reflection.Metadata.MetadataReaderProvider.Dispose">
3199             <summary>
3200             Disposes all memory allocated by the reader.
3201             </summary>
3202             <remarks>
3203             <see cref="M:System.Reflection.Metadata.MetadataReaderProvider.Dispose"/>  can be called multiple times (but not in parallel).
3204             It is not safe to call <see cref="M:System.Reflection.Metadata.MetadataReaderProvider.Dispose"/> in parallel with any other operation on the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>
3205             or reading from the underlying memory.
3206             </remarks>
3207         </member>
3208         <member name="M:System.Reflection.Metadata.MetadataReaderProvider.GetMetadataReader(System.Reflection.Metadata.MetadataReaderOptions,System.Reflection.Metadata.MetadataStringDecoder)">
3209             <summary>
3210             Gets a <see cref="T:System.Reflection.Metadata.MetadataReader"/> from a <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/>.
3211             </summary>
3212             <remarks>
3213             The caller must keep the <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> alive and undisposed throughout the lifetime of the metadata reader.
3214             
3215             If this method is called multiple times each call with arguments equal to the arguments passed to the previous successful call 
3216             returns the same instance of <see cref="T:System.Reflection.Metadata.MetadataReader"/> as the previous call.
3217             </remarks>
3218             <exception cref="T:System.ArgumentException">The encoding of <paramref name="utf8Decoder"/> is not <see cref="T:System.Text.UTF8Encoding"/>.</exception>
3219             <exception cref="T:System.PlatformNotSupportedException">The current platform is big-endian.</exception>
3220             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
3221             <exception cref="T:System.ObjectDisposedException">Provider has been disposed.</exception>
3222         </member>
3223         <member name="M:System.Reflection.Metadata.MetadataReaderProvider.GetMetadataBlock">
3224             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
3225             <exception cref="T:System.ObjectDisposedException">Provider has been disposed.</exception>
3226         </member>
3227         <member name="T:System.Reflection.Metadata.PrimitiveSerializationTypeCode">
3228             <summary>
3229             Type codes used to encode types of primitive values in Custom Attribute value blob.
3230             </summary>
3231         </member>
3232         <member name="M:System.Reflection.Metadata.MethodDefinitionHandle.ToDebugInformationHandle">
3233             <summary>
3234             Returns a handle to <see cref="T:System.Reflection.Metadata.MethodDebugInformation"/> corresponding to this handle.
3235             </summary>
3236             <remarks>
3237             The resulting handle is only valid within the context of a <see cref="T:System.Reflection.Metadata.MetadataReader"/> open on the Portable PDB blob,
3238             which in case of standalone PDB file is a different reader than the one containing this method definition.
3239             </remarks>
3240         </member>
3241         <member name="T:System.Reflection.Metadata.UserStringHandle">
3242             <summary>
3243             #UserString heap handle.
3244             </summary>
3245             <remarks>
3246             The handle is 32-bit wide.
3247             </remarks>
3248         </member>
3249         <member name="T:System.Reflection.Metadata.NamespaceDefinitionHandle">
3250             <summary>
3251             A handle that represents a namespace definition. 
3252             </summary>
3253         </member>
3254         <member name="P:System.Reflection.Metadata.AssemblyFile.ContainsMetadata">
3255             <summary>
3256             True if the file contains metadata.
3257             </summary>
3258             <remarks>
3259             Corresponds to Flags field of File table in ECMA-335 Standard.
3260             </remarks>
3261         </member>
3262         <member name="P:System.Reflection.Metadata.AssemblyFile.Name">
3263             <summary>
3264             File name with extension.
3265             </summary>
3266             <remarks>
3267             Corresponds to Name field of File table in ECMA-335 Standard.
3268             </remarks>
3269         </member>
3270         <member name="P:System.Reflection.Metadata.AssemblyFile.HashValue">
3271             <summary>
3272             Hash value of the file content calculated using <see cref="P:System.Reflection.Metadata.AssemblyDefinition.HashAlgorithm"/>.
3273             </summary>
3274             <remarks>
3275             Corresponds to HashValue field of File table in ECMA-335 Standard.
3276             </remarks>
3277         </member>
3278         <member name="F:System.Reflection.Metadata.BlobReader.s_nullCharArray">
3279             <summary>An array containing the '\0' character.</summary>
3280         </member>
3281         <member name="M:System.Reflection.Metadata.BlobReader.#ctor(System.Byte*,System.Int32)">
3282             <summary>
3283             Creates a reader of the specified memory block.
3284             </summary>
3285             <param name="buffer">Pointer to the start of the memory block.</param>
3286             <param name="length">Length in bytes of the memory block.</param>
3287             <exception cref="T:System.ArgumentNullException"><paramref name="buffer"/> is null and <paramref name="length"/> is greater than zero.</exception>
3288             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="length"/> is negative.</exception>
3289             <exception cref="T:System.PlatformNotSupportedException">The current platform is not little-endian.</exception>
3290         </member>
3291         <member name="P:System.Reflection.Metadata.BlobReader.StartPointer">
3292             <summary>
3293             Pointer to the byte at the start of the underlying memory block.
3294             </summary>
3295         </member>
3296         <member name="P:System.Reflection.Metadata.BlobReader.CurrentPointer">
3297             <summary>
3298             Pointer to the byte at the current position of the reader.
3299             </summary>
3300         </member>
3301         <member name="P:System.Reflection.Metadata.BlobReader.Length">
3302             <summary>
3303             The total length of the underlying memory block.
3304             </summary>
3305         </member>
3306         <member name="P:System.Reflection.Metadata.BlobReader.Offset">
3307             <summary>
3308             Gets or sets the offset from start of the blob to the current position.
3309             </summary>
3310             <exception cref="T:System.BadImageFormatException">Offset is set outside the bounds of underlying reader.</exception>
3311         </member>
3312         <member name="P:System.Reflection.Metadata.BlobReader.RemainingBytes">
3313             <summary>
3314             Bytes remaining from current position to end of underlying memory block.
3315             </summary>
3316         </member>
3317         <member name="M:System.Reflection.Metadata.BlobReader.Reset">
3318             <summary>
3319             Repositions the reader to the start of the underluing memory block.
3320             </summary>
3321         </member>
3322         <member name="M:System.Reflection.Metadata.BlobReader.Align(System.Byte)">
3323             <summary>
3324             Repositions the reader forward by the number of bytes required to satisfy the given alignment.
3325             </summary>
3326         </member>
3327         <member name="M:System.Reflection.Metadata.BlobReader.ReadDecimal">
3328             <summary>
3329             Reads <see cref="T:System.Decimal"/> number.
3330             </summary>
3331             <remarks>
3332             Decimal number is encoded in 13 bytes as follows:
3333             - byte 0: highest bit indicates sign (1 for negative, 0 for non-negative); the remaining 7 bits encode scale
3334             - bytes 1..12: 96-bit unsigned integer in little endian encoding.
3335             </remarks>
3336             <exception cref="T:System.BadImageFormatException">The data at the current position was not a valid <see cref="T:System.Decimal"/> number.</exception>
3337         </member>
3338         <member name="M:System.Reflection.Metadata.BlobReader.IndexOf(System.Byte)">
3339             <summary>
3340             Finds specified byte in the blob following the current position.
3341             </summary>
3342             <returns>
3343             Index relative to the current position, or -1 if the byte is not found in the blob following the current position.
3344             </returns>
3345             <remarks>
3346             Doesn't change the current position.
3347             </remarks>
3348         </member>
3349         <member name="M:System.Reflection.Metadata.BlobReader.ReadUTF8(System.Int32)">
3350             <summary>
3351             Reads UTF8 encoded string starting at the current position. 
3352             </summary>
3353             <param name="byteCount">The number of bytes to read.</param>
3354             <returns>The string.</returns>
3355             <exception cref="T:System.BadImageFormatException"><paramref name="byteCount"/> bytes not available.</exception>
3356         </member>
3357         <member name="M:System.Reflection.Metadata.BlobReader.ReadUTF16(System.Int32)">
3358             <summary>
3359             Reads UTF16 (little-endian) encoded string starting at the current position. 
3360             </summary>
3361             <param name="byteCount">The number of bytes to read.</param>
3362             <returns>The string.</returns>
3363             <exception cref="T:System.BadImageFormatException"><paramref name="byteCount"/> bytes not available.</exception>
3364         </member>
3365         <member name="M:System.Reflection.Metadata.BlobReader.ReadBytes(System.Int32)">
3366             <summary>
3367             Reads bytes starting at the current position. 
3368             </summary>
3369             <param name="byteCount">The number of bytes to read.</param>
3370             <returns>The byte array.</returns>
3371             <exception cref="T:System.BadImageFormatException"><paramref name="byteCount"/> bytes not available.</exception>
3372         </member>
3373         <member name="M:System.Reflection.Metadata.BlobReader.ReadBytes(System.Int32,System.Byte[],System.Int32)">
3374             <summary>
3375             Reads bytes starting at the current position in to the given buffer at the given offset;
3376             </summary>
3377             <param name="byteCount">The number of bytes to read.</param>
3378             <param name="buffer">The destination buffer the bytes read will be written.</param>
3379             <param name="bufferOffset">The offset in the destination buffer where the bytes read will be written.</param>
3380             <exception cref="T:System.BadImageFormatException"><paramref name="byteCount"/> bytes not available.</exception>
3381         </member>
3382         <member name="M:System.Reflection.Metadata.BlobReader.TryReadCompressedInteger(System.Int32@)">
3383             <summary>
3384             Reads an unsigned compressed integer value. 
3385             See Metadata Specification section II.23.2: Blobs and signatures.
3386             </summary>
3387             <param name="value">The value of the compressed integer that was read.</param>
3388             <returns>true if the value was read successfully. false if the data at the current position was not a valid compressed integer.</returns>
3389         </member>
3390         <member name="M:System.Reflection.Metadata.BlobReader.ReadCompressedInteger">
3391             <summary>
3392             Reads an unsigned compressed integer value. 
3393             See Metadata Specification section II.23.2: Blobs and signatures.
3394             </summary>
3395             <returns>The value of the compressed integer that was read.</returns>
3396             <exception cref="T:System.BadImageFormatException">The data at the current position was not a valid compressed integer.</exception>
3397         </member>
3398         <member name="M:System.Reflection.Metadata.BlobReader.TryReadCompressedSignedInteger(System.Int32@)">
3399             <summary>
3400             Reads a signed compressed integer value. 
3401             See Metadata Specification section II.23.2: Blobs and signatures.
3402             </summary>
3403             <param name="value">The value of the compressed integer that was read.</param>
3404             <returns>true if the value was read successfully. false if the data at the current position was not a valid compressed integer.</returns>
3405         </member>
3406         <member name="M:System.Reflection.Metadata.BlobReader.ReadCompressedSignedInteger">
3407             <summary>
3408             Reads a signed compressed integer value. 
3409             See Metadata Specification section II.23.2: Blobs and signatures.
3410             </summary>
3411             <returns>The value of the compressed integer that was read.</returns>
3412             <exception cref="T:System.BadImageFormatException">The data at the current position was not a valid compressed integer.</exception>
3413         </member>
3414         <member name="M:System.Reflection.Metadata.BlobReader.ReadSerializationTypeCode">
3415             <summary>
3416             Reads type code encoded in a serialized custom attribute value. 
3417             </summary>
3418             <returns><see cref="F:System.Reflection.Metadata.SerializationTypeCode.Invalid"/> if the encoding is invalid.</returns>
3419         </member>
3420         <member name="M:System.Reflection.Metadata.BlobReader.ReadSignatureTypeCode">
3421             <summary>
3422             Reads type code encoded in a signature. 
3423             </summary>
3424             <returns><see cref="F:System.Reflection.Metadata.SignatureTypeCode.Invalid"/> if the encoding is invalid.</returns>
3425         </member>
3426         <member name="M:System.Reflection.Metadata.BlobReader.ReadSerializedString">
3427             <summary>
3428             Reads a string encoded as a compressed integer containing its length followed by
3429             its contents in UTF8. Null strings are encoded as a single 0xFF byte.
3430             </summary>
3431             <remarks>Defined as a 'SerString' in the ECMA CLI specification.</remarks>
3432             <returns>String value or null.</returns>
3433             <exception cref="T:System.BadImageFormatException">If the encoding is invalid.</exception>
3434         </member>
3435         <member name="M:System.Reflection.Metadata.BlobReader.ReadTypeHandle">
3436             <summary>
3437             Reads a type handle encoded in a signature as TypeDefOrRefOrSpecEncoded (see ECMA-335 II.23.2.8).
3438             </summary>
3439             <returns>The handle or nil if the encoding is invalid.</returns>
3440         </member>
3441         <member name="M:System.Reflection.Metadata.BlobReader.ReadBlobHandle">
3442             <summary>
3443             Reads a #Blob heap handle encoded as a compressed integer.
3444             </summary>
3445             <remarks>
3446             Blobs that contain references to other blobs are used in Portable PDB format, for example <see cref="P:System.Reflection.Metadata.Document.Name"/>.
3447             </remarks>
3448         </member>
3449         <member name="M:System.Reflection.Metadata.BlobReader.ReadConstant(System.Reflection.Metadata.ConstantTypeCode)">
3450             <summary>
3451             Reads a constant value (see ECMA-335 Partition II section 22.9) from the current position.
3452             </summary>
3453             <exception cref="T:System.BadImageFormatException">Error while reading from the blob.</exception>
3454             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="typeCode"/> is not a valid <see cref="T:System.Reflection.Metadata.ConstantTypeCode"/>.</exception>
3455             <returns>
3456             Boxed constant value. To avoid allocating the object use Read* methods directly.
3457             Constants of type <see cref="F:System.Reflection.Metadata.ConstantTypeCode.String"/> are encoded as UTF16 strings, use <see cref="M:System.Reflection.Metadata.BlobReader.ReadUTF16(System.Int32)"/> to read them.
3458             </returns>
3459         </member>
3460         <member name="P:System.Reflection.Metadata.Constant.TypeCode">
3461             <summary>
3462             The type of the constant value.
3463             </summary>
3464             <remarks>
3465             Corresponds to Type field of Constant table in ECMA-335 Standard.
3466             </remarks>
3467         </member>
3468         <member name="P:System.Reflection.Metadata.Constant.Value">
3469             <summary>
3470             The constant value.
3471             </summary>
3472             <remarks>
3473             Corresponds to Value field of Constant table in ECMA-335 Standard.
3474             </remarks>
3475         </member>
3476         <member name="P:System.Reflection.Metadata.Constant.Parent">
3477             <summary>
3478             The parent handle (<see cref="T:System.Reflection.Metadata.ParameterHandle"/>, <see cref="T:System.Reflection.Metadata.FieldDefinitionHandle"/>, or <see cref="T:System.Reflection.Metadata.PropertyDefinitionHandle"/>).
3479             </summary>
3480             <remarks>
3481             Corresponds to Parent field of Constant table in ECMA-335 Standard.
3482             </remarks>
3483         </member>
3484         <member name="P:System.Reflection.Metadata.CustomAttribute.Constructor">
3485             <summary>
3486             The constructor (<see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/>) of the custom attribute type.
3487             </summary>
3488             <remarks>
3489             Corresponds to Type field of CustomAttribute table in ECMA-335 Standard.
3490             </remarks>
3491         </member>
3492         <member name="P:System.Reflection.Metadata.CustomAttribute.Parent">
3493             <summary>
3494             The handle of the metadata entity the attribute is applied to.
3495             </summary>
3496             <remarks>
3497             Corresponds to Parent field of CustomAttribute table in ECMA-335 Standard.
3498             </remarks>
3499         </member>
3500         <member name="P:System.Reflection.Metadata.CustomAttribute.Value">
3501             <summary>
3502             The value of the attribute.
3503             </summary>
3504             <remarks>
3505             Corresponds to Value field of CustomAttribute table in ECMA-335 Standard.
3506             </remarks>
3507         </member>
3508         <member name="M:System.Reflection.Metadata.CustomAttribute.DecodeValue``1(System.Reflection.Metadata.ICustomAttributeTypeProvider{``0})">
3509             <summary>
3510             Decodes the arguments encoded in the value blob.
3511             </summary>
3512         </member>
3513         <member name="T:System.Reflection.Metadata.ArrayShape">
3514             <summary>
3515             Represents the shape of an array type.
3516             </summary>
3517         </member>
3518         <member name="P:System.Reflection.Metadata.ArrayShape.Rank">
3519             <summary>
3520             Gets the number of dimensions in the array.
3521             </summary>
3522         </member>
3523         <member name="P:System.Reflection.Metadata.ArrayShape.Sizes">
3524             <summary>
3525             Gets the sizes of each dimension. Length may be smaller than rank, in which case the trailing dimensions have unspecified sizes.
3526             </summary>
3527         </member>
3528         <member name="P:System.Reflection.Metadata.ArrayShape.LowerBounds">
3529             <summary>
3530             Gets the lower-bounds of each dimension. Length may be smaller than rank, in which case the trailing dimensions have unspecified lower bounds.
3531             </summary>
3532         </member>
3533         <member name="M:System.Reflection.Metadata.ISZArrayTypeProvider`1.GetSZArrayType(`0)">
3534             <summary>
3535             Gets the type symbol for a single-dimensional array with zero lower bounds of the given element type.
3536             </summary>
3537         </member>
3538         <member name="M:System.Reflection.Metadata.ISignatureTypeProvider`2.GetFunctionPointerType(System.Reflection.Metadata.MethodSignature{`0})">
3539             <summary>
3540             Gets the a type symbol for the function pointer type of the given method signature.
3541             </summary>
3542         </member>
3543         <member name="M:System.Reflection.Metadata.ISignatureTypeProvider`2.GetGenericMethodParameter(`1,System.Int32)">
3544             <summary>
3545             Gets the type symbol for the generic method parameter at the given zero-based index.
3546             </summary>
3547         </member>
3548         <member name="M:System.Reflection.Metadata.ISignatureTypeProvider`2.GetGenericTypeParameter(`1,System.Int32)">
3549             <summary>
3550             Gets the type symbol for the generic type parameter at the given zero-based index.
3551             </summary>
3552         </member>
3553         <member name="M:System.Reflection.Metadata.ISignatureTypeProvider`2.GetModifiedType(`0,`0,System.Boolean)">
3554             <summary>
3555             Gets the type symbol for a type with a custom modifier applied.
3556             </summary>
3557             <param name="modifier">The modifier type applied. </param>
3558             <param name="unmodifiedType">The type symbol of the underlying type without modifiers applied.</param>
3559             <param name="isRequired">True if the modifier is required, false if it's optional.</param>
3560         </member>
3561         <member name="M:System.Reflection.Metadata.ISignatureTypeProvider`2.GetPinnedType(`0)">
3562             <summary>
3563             Gets the type symbol for a local variable type that is marked as pinned.
3564             </summary>
3565         </member>
3566         <member name="M:System.Reflection.Metadata.ISignatureTypeProvider`2.GetTypeFromSpecification(System.Reflection.Metadata.MetadataReader,`1,System.Reflection.Metadata.TypeSpecificationHandle,System.Byte)">
3567             <summary>
3568             Gets the type symbol for a type specification.
3569             </summary>
3570             <param name="reader">
3571             The metadata reader that was passed to the signature decoder. It may be null.
3572             </param>
3573             <param name="genericContext">
3574             The context that was passed to the signature decoder.
3575             </param>
3576             <param name="handle">
3577             The type specification handle.
3578             </param>
3579             <param name="rawTypeKind">
3580             The kind of the type as specified in the signature. To interpret this value use <see cref="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.ResolveSignatureTypeKind(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.EntityHandle,System.Byte)"/>
3581             Note that when the signature comes from a WinMD file additional processing is needed to determine whether the target type is a value type or a reference type.
3582             </param>
3583         </member>
3584         <member name="M:System.Reflection.Metadata.ISimpleTypeProvider`1.GetPrimitiveType(System.Reflection.Metadata.PrimitiveTypeCode)">
3585             <summary>
3586             Gets the type symbol for a primitive type.
3587             </summary>
3588         </member>
3589         <member name="M:System.Reflection.Metadata.ISimpleTypeProvider`1.GetTypeFromDefinition(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.TypeDefinitionHandle,System.Byte)">
3590             <summary>
3591             Gets the type symbol for a type definition.
3592             </summary>
3593             <param name="reader">
3594             The metadata reader that was passed to the signature decoder. It may be null.
3595             </param>
3596             <param name="handle">
3597             The type definition handle.
3598             </param>
3599             <param name="rawTypeKind">
3600             The kind of the type as specified in the signature. To interpret this value use <see cref="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.ResolveSignatureTypeKind(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.EntityHandle,System.Byte)"/>
3601             Note that when the signature comes from a WinMD file additional processing is needed to determine whether the target type is a value type or a reference type.
3602             </param>
3603         </member>
3604         <member name="M:System.Reflection.Metadata.ISimpleTypeProvider`1.GetTypeFromReference(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.TypeReferenceHandle,System.Byte)">
3605             <summary>
3606             Gets the type symbol for a type reference.
3607             </summary>
3608             <param name="reader">
3609             The metadata reader that was passed to the signature decoder. It may be null.
3610             </param>
3611             <param name="handle">
3612             The type definition handle.
3613             </param>
3614             <param name="rawTypeKind">
3615             The kind of the type as specified in the signature. To interpret this value use <see cref="M:System.Reflection.Metadata.Ecma335.MetadataReaderExtensions.ResolveSignatureTypeKind(System.Reflection.Metadata.MetadataReader,System.Reflection.Metadata.EntityHandle,System.Byte)"/>
3616             Note that when the signature comes from a WinMD file additional processing is needed to determine whether the target type is a value type or a reference type.
3617             </param>
3618         </member>
3619         <member name="F:System.Reflection.Metadata.SignatureTypeKind.Unknown">
3620             <summary>
3621             It is not known in the current context if the type reference or definition is a class or value type.
3622             </summary>
3623         </member>
3624         <member name="F:System.Reflection.Metadata.SignatureTypeKind.Class">
3625             <summary>
3626             The type definition or reference refers to a class.
3627             </summary>
3628         </member>
3629         <member name="F:System.Reflection.Metadata.SignatureTypeKind.ValueType">
3630             <summary>
3631             The type definition or reference refers to a value type.
3632             </summary>
3633         </member>
3634         <member name="M:System.Reflection.Metadata.IConstructedTypeProvider`1.GetGenericInstantiation(`0,System.Collections.Immutable.ImmutableArray{`0})">
3635             <summary>
3636             Gets the type symbol for a generic instantiation of the given generic type with the given type arguments.
3637             </summary>
3638         </member>
3639         <member name="M:System.Reflection.Metadata.IConstructedTypeProvider`1.GetArrayType(`0,System.Reflection.Metadata.ArrayShape)">
3640             <summary>
3641             Gets the type symbol for a generalized array of the given element type and shape. 
3642             </summary>
3643         </member>
3644         <member name="M:System.Reflection.Metadata.IConstructedTypeProvider`1.GetByReferenceType(`0)">
3645             <summary>
3646             Gets the type symbol for a managed pointer to the given element type.
3647             </summary>
3648         </member>
3649         <member name="M:System.Reflection.Metadata.IConstructedTypeProvider`1.GetPointerType(`0)">
3650             <summary>
3651             Gets the type symbol for an unmanaged pointer to the given element ty
3652             </summary>
3653         </member>
3654         <member name="T:System.Reflection.Metadata.MethodSignature`1">
3655             <summary>
3656             Represents a method (definition, reference, or standalone) or property signature.
3657             In the case of properties, the signature matches that of a getter with a distinguishing <see cref="T:System.Reflection.Metadata.SignatureHeader"/>.
3658             </summary>
3659         </member>
3660         <member name="P:System.Reflection.Metadata.MethodSignature`1.Header">
3661             <summary>
3662             Represents the information in the leading byte of the signature (kind, calling convention, flags).
3663             </summary>
3664         </member>
3665         <member name="P:System.Reflection.Metadata.MethodSignature`1.ReturnType">
3666             <summary>
3667             Gets the method's return type.
3668             </summary>
3669         </member>
3670         <member name="P:System.Reflection.Metadata.MethodSignature`1.RequiredParameterCount">
3671             <summary>
3672             Gets the number of parameters that are required. Will be equal to the length <see cref="P:System.Reflection.Metadata.MethodSignature`1.ParameterTypes"/> of
3673             unless this signature represents the standalone call site of a vararg method, in which case the entries
3674             extra entries in <see cref="P:System.Reflection.Metadata.MethodSignature`1.ParameterTypes"/> are the types used for the optional parameters.
3675             </summary>
3676         </member>
3677         <member name="P:System.Reflection.Metadata.MethodSignature`1.GenericParameterCount">
3678             <summary>
3679             Gets the number of generic type parameters of the method. Will be 0 for non-generic methods.
3680             </summary>
3681         </member>
3682         <member name="P:System.Reflection.Metadata.MethodSignature`1.ParameterTypes">
3683             <summary>
3684             Gets the method's parameter types.
3685             </summary>
3686         </member>
3687         <member name="T:System.Reflection.Metadata.PrimitiveTypeCode">
3688             <summary>
3689             Represents a primitive type found in metadata signatures.
3690             </summary>
3691         </member>
3692         <member name="P:System.Reflection.Metadata.ExceptionRegion.TryOffset">
3693             <summary>
3694             Start IL offset of the try block.
3695             </summary>
3696         </member>
3697         <member name="P:System.Reflection.Metadata.ExceptionRegion.TryLength">
3698             <summary>
3699             Length in bytes of try block.
3700             </summary>
3701         </member>
3702         <member name="P:System.Reflection.Metadata.ExceptionRegion.HandlerOffset">
3703             <summary>
3704             Start IL offset of the exception handler.
3705             </summary>
3706         </member>
3707         <member name="P:System.Reflection.Metadata.ExceptionRegion.HandlerLength">
3708             <summary>
3709             Length in bytes of the exception handler.
3710             </summary>
3711         </member>
3712         <member name="P:System.Reflection.Metadata.ExceptionRegion.FilterOffset">
3713             <summary>
3714             IL offset of the start of the filter block, or -1 if the region is not a filter.
3715             </summary>
3716         </member>
3717         <member name="P:System.Reflection.Metadata.ExceptionRegion.CatchType">
3718             <summary>
3719             Returns a TypeRef, TypeDef, or TypeSpec handle if the region represents a catch, nil token otherwise. 
3720             </summary>
3721         </member>
3722         <member name="P:System.Reflection.Metadata.ExportedType.Name">
3723             <summary>
3724             Name of the target type, or nil if the type is nested or defined in a root namespace.
3725             </summary>
3726         </member>
3727         <member name="P:System.Reflection.Metadata.ExportedType.Namespace">
3728             <summary>
3729             Full name of the namespace where the target type, or nil if the type is nested or defined in a root namespace.
3730             </summary>
3731         </member>
3732         <member name="P:System.Reflection.Metadata.ExportedType.NamespaceDefinition">
3733             <summary>
3734             The definition handle of the namespace where the target type is defined, or nil if the type is nested or defined in a root namespace.
3735             </summary>
3736         </member>
3737         <member name="P:System.Reflection.Metadata.ExportedType.Implementation">
3738             <summary>
3739             Handle to resolve the implementation of the target type.
3740             </summary>
3741             <returns>
3742             <list type="bullet">
3743             <item><description><see cref="T:System.Reflection.Metadata.AssemblyFileHandle"/> representing another module in the assembly.</description></item>
3744             <item><description><see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/> representing another assembly if <see cref="P:System.Reflection.Metadata.ExportedType.IsForwarder"/> is true.</description></item>
3745             <item><description><see cref="T:System.Reflection.Metadata.ExportedTypeHandle"/> representing the declaring exported type in which this was is nested.</description></item>
3746             </list>
3747             </returns>
3748         </member>
3749         <member name="M:System.Reflection.Metadata.FieldDefinition.GetOffset">
3750             <summary>
3751             Returns field layout offset, or -1 if not available.
3752             </summary>
3753         </member>
3754         <member name="P:System.Reflection.Metadata.GenericParameter.Parent">
3755             <summary>
3756             <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/>.
3757             </summary>
3758             <remarks>
3759             Corresponds to Owner field of GenericParam table in ECMA-335 Standard.
3760             </remarks>
3761         </member>
3762         <member name="P:System.Reflection.Metadata.GenericParameter.Attributes">
3763             <summary>
3764             Attributes specifying variance and constraints.
3765             </summary>
3766             <remarks>
3767             Corresponds to Flags field of GenericParam table in ECMA-335 Standard.
3768             </remarks>
3769         </member>
3770         <member name="P:System.Reflection.Metadata.GenericParameter.Index">
3771             <summary>
3772             Zero-based index of the parameter within the declaring generic type or method declaration.
3773             </summary>
3774             <remarks>
3775             Corresponds to Number field of GenericParam table in ECMA-335 Standard.
3776             </remarks>
3777         </member>
3778         <member name="P:System.Reflection.Metadata.GenericParameter.Name">
3779             <summary>
3780             The name of the generic parameter.
3781             </summary>
3782             <remarks>
3783             Corresponds to Name field of GenericParam table in ECMA-335 Standard.
3784             </remarks>
3785         </member>
3786         <member name="P:System.Reflection.Metadata.GenericParameterConstraint.Parameter">
3787             <summary>
3788             The constrained <see cref="T:System.Reflection.Metadata.GenericParameterHandle"/>.
3789             </summary>
3790             <remarks>
3791             Corresponds to Owner field of GenericParamConstraint table in ECMA-335 Standard.
3792             </remarks>
3793         </member>
3794         <member name="P:System.Reflection.Metadata.GenericParameterConstraint.Type">
3795             <summary>
3796             Handle (<see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>, or <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>) 
3797             specifying from which type this generic parameter is constrained to derive,
3798             or which interface this generic parameter is constrained to implement.
3799             </summary>
3800             <remarks>
3801             Corresponds to Constraint field of GenericParamConstraint table in ECMA-335 Standard.
3802             </remarks>
3803         </member>
3804         <member name="T:System.Reflection.Metadata.GenericParameterHandleCollection">
3805             <summary>
3806             Represents generic type parameters of a method or type.
3807             </summary>
3808         </member>
3809         <member name="T:System.Reflection.Metadata.GenericParameterConstraintHandleCollection">
3810             <summary>
3811             Represents constraints of a generic type parameter.
3812             </summary>
3813         </member>
3814         <member name="T:System.Reflection.Metadata.ParameterHandleCollection">
3815             <summary>
3816             Collection of parameters of a specified method.
3817             </summary>
3818         </member>
3819         <member name="T:System.Reflection.Metadata.TypeDefinitionHandleCollection">
3820             <summary>
3821             Represents a collection of <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>.
3822             </summary>
3823         </member>
3824         <member name="T:System.Reflection.Metadata.TypeReferenceHandleCollection">
3825             <summary>
3826             Represents a collection of <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>.
3827             </summary>
3828         </member>
3829         <member name="T:System.Reflection.Metadata.ExportedTypeHandleCollection">
3830             <summary>
3831             Represents a collection of <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>.
3832             </summary>
3833         </member>
3834         <member name="T:System.Reflection.Metadata.MemberReferenceHandleCollection">
3835             <summary>
3836             Represents a collection of <see cref="T:System.Reflection.Metadata.MemberReferenceHandle"/>.
3837             </summary>
3838         </member>
3839         <member name="T:System.Reflection.Metadata.AssemblyReferenceHandleCollection">
3840             <summary>
3841             Collection of assembly references.
3842             </summary>
3843         </member>
3844         <member name="T:System.Reflection.Metadata.ManifestResourceHandleCollection">
3845             <summary>
3846             Represents a collection of <see cref="T:System.Reflection.Metadata.ManifestResourceHandle"/>.
3847             </summary>
3848         </member>
3849         <member name="T:System.Reflection.Metadata.AssemblyFileHandleCollection">
3850             <summary>
3851             Represents a collection of <see cref="T:System.Reflection.Metadata.AssemblyFileHandle"/>.
3852             </summary>
3853         </member>
3854         <member name="M:System.Reflection.Metadata.HandleComparer.Compare(System.Reflection.Metadata.Handle,System.Reflection.Metadata.Handle)">
3855             <summary>
3856             Compares two handles.
3857             </summary>
3858             <remarks>
3859             The order of handles that differ in kind and are not <see cref="T:System.Reflection.Metadata.EntityHandle"/> is undefined.
3860             Returns 0 if and only if <see cref="M:System.Reflection.Metadata.HandleComparer.Equals(System.Reflection.Metadata.Handle,System.Reflection.Metadata.Handle)"/> returns true.
3861             </remarks>
3862         </member>
3863         <member name="M:System.Reflection.Metadata.HandleComparer.Compare(System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.EntityHandle)">
3864             <summary>
3865             Compares two entity handles.
3866             </summary>
3867             <remarks>
3868             Returns 0 if and only if <see cref="M:System.Reflection.Metadata.HandleComparer.Equals(System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.EntityHandle)"/> returns true.
3869             </remarks>
3870         </member>
3871         <member name="T:System.Reflection.Metadata.Handle">
3872             <summary>
3873             Represents any metadata entity (type reference/definition/specification, method definition, custom attribute, etc.) or value (string, blob, guid, user string).
3874             </summary>
3875             <remarks>
3876             Use <see cref="T:System.Reflection.Metadata.Handle"/> to store multiple kinds of handles.
3877             </remarks>
3878         </member>
3879         <member name="M:System.Reflection.Metadata.Handle.FromVToken(System.UInt32)">
3880             <summary>
3881             Creates <see cref="T:System.Reflection.Metadata.Handle"/> from a token or a token combined with a virtual flag.
3882             </summary>
3883         </member>
3884         <member name="P:System.Reflection.Metadata.Handle.EntityHandleType">
3885             <summary>
3886             Token type (0x##000000), does not include virtual flag.
3887             </summary>
3888         </member>
3889         <member name="P:System.Reflection.Metadata.Handle.Type">
3890             <summary>
3891             Small token type (0x##), does not include virtual flag.
3892             </summary>
3893         </member>
3894         <member name="P:System.Reflection.Metadata.Handle.EntityHandleValue">
3895             <summary>
3896             Value stored in an <see cref="T:System.Reflection.Metadata.EntityHandle"/>.
3897             </summary>
3898         </member>
3899         <member name="P:System.Reflection.Metadata.Handle.SpecificEntityHandleValue">
3900             <summary>
3901             Value stored in a concrete entity handle (see <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.MethodDefinitionHandle"/>, etc.).
3902             </summary>
3903         </member>
3904         <member name="P:System.Reflection.Metadata.InterfaceImplementation.Interface">
3905             <summary>
3906             The interface that is implemented
3907             <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/>, or <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>
3908             </summary>
3909         </member>
3910         <member name="P:System.Reflection.Metadata.ManifestResource.Offset">
3911             <summary>
3912             Specifies the byte offset within the referenced file at which this resource record begins.
3913             </summary>
3914             <remarks>
3915             Corresponds to Offset field of ManifestResource table in ECMA-335 Standard.
3916             </remarks>
3917         </member>
3918         <member name="P:System.Reflection.Metadata.ManifestResource.Attributes">
3919             <summary>
3920             Resource attributes.
3921             </summary>
3922             <remarks>
3923             Corresponds to Flags field of ManifestResource table in ECMA-335 Standard.
3924             </remarks>
3925         </member>
3926         <member name="P:System.Reflection.Metadata.ManifestResource.Name">
3927             <summary>
3928             Name of the resource.
3929             </summary>
3930             <remarks>
3931             Corresponds to Name field of ManifestResource table in ECMA-335 Standard.
3932             </remarks>
3933         </member>
3934         <member name="P:System.Reflection.Metadata.ManifestResource.Implementation">
3935             <summary>
3936             <see cref="T:System.Reflection.Metadata.AssemblyFileHandle"/>, <see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/>, or nil handle.
3937             </summary>
3938             <remarks>
3939             Corresponds to Implementation field of ManifestResource table in ECMA-335 Standard.
3940             
3941             If nil then <see cref="P:System.Reflection.Metadata.ManifestResource.Offset"/> is an offset in the PE image that contains the metadata, 
3942             starting from the Resource entry in the CLI header.
3943             </remarks>
3944         </member>
3945         <member name="P:System.Reflection.Metadata.MemberReference.Parent">
3946             <summary>
3947             MethodDef, ModuleRef,TypeDef, TypeRef, or TypeSpec handle.
3948             </summary>
3949         </member>
3950         <member name="P:System.Reflection.Metadata.MemberReference.Signature">
3951             <summary>
3952             Gets a handle to the signature blob.
3953             </summary>
3954         </member>
3955         <member name="M:System.Reflection.Metadata.MemberReference.GetKind">
3956             <summary>
3957             Determines if the member reference is to a method or field.
3958             </summary>
3959             <exception cref="T:System.BadImageFormatException">The member reference signature is invalid.</exception>
3960         </member>
3961         <member name="T:System.Reflection.Metadata.StandaloneSignatureKind">
3962             <summary>
3963             Indicates whether a <see cref="T:System.Reflection.Metadata.StandaloneSignature"/> represents a standalone method or local variable signature.
3964             </summary>
3965         </member>
3966         <member name="F:System.Reflection.Metadata.StandaloneSignatureKind.Method">
3967             <summary>
3968             The <see cref="T:System.Reflection.Metadata.StandaloneSignature"/> represents a standalone method signature.
3969             </summary>
3970         </member>
3971         <member name="F:System.Reflection.Metadata.StandaloneSignatureKind.LocalVariables">
3972             <summary>
3973             The <see cref="T:System.Reflection.Metadata.MemberReference"/> references a local variable signature.
3974             </summary>
3975         </member>
3976         <member name="T:System.Reflection.Metadata.MemberReferenceKind">
3977             <summary>
3978             Indicates whether a <see cref="T:System.Reflection.Metadata.MemberReference"/> references a method or field.
3979             </summary>
3980         </member>
3981         <member name="F:System.Reflection.Metadata.MemberReferenceKind.Method">
3982             <summary>
3983             The <see cref="T:System.Reflection.Metadata.MemberReference"/> references a method.
3984             </summary>
3985         </member>
3986         <member name="F:System.Reflection.Metadata.MemberReferenceKind.Field">
3987             <summary>
3988             The <see cref="T:System.Reflection.Metadata.MemberReference"/> references a field.
3989             </summary>
3990         </member>
3991         <member name="F:System.Reflection.Metadata.MetadataKind.Ecma335">
3992             <summary>
3993             CLI metadata.
3994             </summary>
3995         </member>
3996         <member name="F:System.Reflection.Metadata.MetadataKind.WindowsMetadata">
3997             <summary>
3998             Windows Metadata.
3999             </summary>
4000         </member>
4001         <member name="F:System.Reflection.Metadata.MetadataKind.ManagedWindowsMetadata">
4002             <summary>
4003             Windows Metadata generated by managed compilers.
4004             </summary>
4005         </member>
4006         <member name="T:System.Reflection.Metadata.MetadataReader">
4007             <summary>
4008             Reads metadata as defined byte the ECMA 335 CLI specification.
4009             </summary>
4010         </member>
4011         <member name="M:System.Reflection.Metadata.MetadataReader.#ctor(System.Byte*,System.Int32)">
4012             <summary>
4013             Creates a metadata reader from the metadata stored at the given memory location.
4014             </summary>
4015             <remarks>
4016             The memory is owned by the caller and it must be kept memory alive and unmodified throughout the lifetime of the <see cref="T:System.Reflection.Metadata.MetadataReader"/>.
4017             </remarks>
4018         </member>
4019         <member name="M:System.Reflection.Metadata.MetadataReader.#ctor(System.Byte*,System.Int32,System.Reflection.Metadata.MetadataReaderOptions)">
4020             <summary>
4021             Creates a metadata reader from the metadata stored at the given memory location.
4022             </summary>
4023             <remarks>
4024             The memory is owned by the caller and it must be kept memory alive and unmodified throughout the lifetime of the <see cref="T:System.Reflection.Metadata.MetadataReader"/>.
4025             Use <see cref="M:System.Reflection.Metadata.PEReaderExtensions.GetMetadataReader(System.Reflection.PortableExecutable.PEReader,System.Reflection.Metadata.MetadataReaderOptions)"/> to obtain 
4026             metadata from a PE image.
4027             </remarks>
4028         </member>
4029         <member name="M:System.Reflection.Metadata.MetadataReader.#ctor(System.Byte*,System.Int32,System.Reflection.Metadata.MetadataReaderOptions,System.Reflection.Metadata.MetadataStringDecoder)">
4030             <summary>
4031             Creates a metadata reader from the metadata stored at the given memory location.
4032             </summary>
4033             <remarks>
4034             The memory is owned by the caller and it must be kept memory alive and unmodified throughout the lifetime of the <see cref="T:System.Reflection.Metadata.MetadataReader"/>.
4035             Use <see cref="M:System.Reflection.Metadata.PEReaderExtensions.GetMetadataReader(System.Reflection.PortableExecutable.PEReader,System.Reflection.Metadata.MetadataReaderOptions,System.Reflection.Metadata.MetadataStringDecoder)"/> to obtain 
4036             metadata from a PE image.
4037             </remarks>
4038             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="length"/> is not positive.</exception>
4039             <exception cref="T:System.ArgumentNullException"><paramref name="metadata"/> is null.</exception>
4040             <exception cref="T:System.ArgumentException">The encoding of <paramref name="utf8Decoder"/> is not <see cref="T:System.Text.UTF8Encoding"/>.</exception>
4041             <exception cref="T:System.PlatformNotSupportedException">The current platform is big-endian.</exception>
4042             <exception cref="T:System.BadImageFormatException">Bad metadata header.</exception>
4043         </member>
4044         <member name="F:System.Reflection.Metadata.MetadataReader.IsMinimalDelta">
4045             <summary>
4046             True if the metadata stream has minimal delta format. Used for EnC.
4047             </summary>
4048             <remarks>
4049             The metadata stream has minimal delta format if "#JTD" stream is present.
4050             Minimal delta format uses large size (4B) when encoding table/heap references.
4051             The heaps in minimal delta only contain data of the delta, 
4052             there is no padding at the beginning of the heaps that would align them 
4053             with the original full metadata heaps.
4054             </remarks>
4055         </member>
4056         <member name="M:System.Reflection.Metadata.MetadataReader.ReadMetadataHeader(System.Reflection.Metadata.BlobReader@,System.String@)">
4057             <summary>
4058             Looks like this function reads beginning of the header described in
4059             ECMA-335 24.2.1 Metadata root
4060             </summary>
4061         </member>
4062         <member name="M:System.Reflection.Metadata.MetadataReader.ReadStreamHeaders(System.Reflection.Metadata.BlobReader@)">
4063             <summary>
4064             Reads stream headers described in ECMA-335 24.2.2 Stream header
4065             </summary>
4066         </member>
4067         <member name="F:System.Reflection.Metadata.MetadataReader.TableRowCounts">
4068             <summary>
4069             A row count for each possible table. May be indexed by <see cref="T:System.Reflection.Metadata.Ecma335.TableIndex"/>.
4070             </summary>
4071         </member>
4072         <member name="P:System.Reflection.Metadata.MetadataReader.MetadataPointer">
4073             <summary>
4074             Pointer to the underlying data.
4075             </summary>
4076         </member>
4077         <member name="P:System.Reflection.Metadata.MetadataReader.MetadataLength">
4078             <summary>
4079             Length of the underlying data.
4080             </summary>
4081         </member>
4082         <member name="P:System.Reflection.Metadata.MetadataReader.Options">
4083             <summary>
4084             Options passed to the constructor.
4085             </summary>
4086         </member>
4087         <member name="P:System.Reflection.Metadata.MetadataReader.MetadataVersion">
4088             <summary>
4089             Version string read from metadata header.
4090             </summary>
4091         </member>
4092         <member name="P:System.Reflection.Metadata.MetadataReader.DebugMetadataHeader">
4093             <summary>
4094             Information decoded from #Pdb stream, or null if the stream is not present.
4095             </summary>
4096         </member>
4097         <member name="P:System.Reflection.Metadata.MetadataReader.MetadataKind">
4098             <summary>
4099             The kind of the metadata (plain ECMA335, WinMD, etc.).
4100             </summary>
4101         </member>
4102         <member name="P:System.Reflection.Metadata.MetadataReader.StringComparer">
4103             <summary>
4104             Comparer used to compare strings stored in metadata.
4105             </summary>
4106         </member>
4107         <member name="P:System.Reflection.Metadata.MetadataReader.UTF8Decoder">
4108             <summary>
4109             The decoder used by the reader to produce <see cref="T:System.String"/> instances from UTF8 encoded byte sequences.
4110             </summary>
4111         </member>
4112         <member name="P:System.Reflection.Metadata.MetadataReader.IsAssembly">
4113             <summary>
4114             Returns true if the metadata represent an assembly.
4115             </summary>
4116         </member>
4117         <member name="M:System.Reflection.Metadata.MetadataReader.GetNestedTypes(System.Reflection.Metadata.TypeDefinitionHandle)">
4118             <summary>
4119             Returns an array of types nested in the specified type.
4120             </summary>
4121         </member>
4122         <member name="M:System.Reflection.Metadata.MetadataReader.CalculateFieldDefTreatmentAndRowId(System.Reflection.Metadata.FieldDefinitionHandle)">
4123             <summary>
4124             The backing field of a WinRT enumeration type is not public although the backing fields
4125             of managed enumerations are. To allow managed languages to directly access this field,
4126             it is made public by the metadata adapter.
4127             </summary>
4128         </member>
4129         <member name="M:System.Reflection.Metadata.MetadataReader.ImplementsRedirectedInterface(System.Reflection.Metadata.MemberReferenceHandle,System.Boolean@)">
4130             <summary>
4131             We want to know if a given method implements a redirected interface.
4132             For example, if we are given the method RemoveAt on a class "A" 
4133             which implements the IVector interface (which is redirected
4134             to IList in .NET) then this method would return true. The most 
4135             likely reason why we would want to know this is that we wish to hide
4136             (mark private) all methods which implement methods on a redirected 
4137             interface.
4138             </summary>
4139             <param name="memberRef">The declaration token for the method</param>
4140             <param name="isIDisposable">
4141             Returns true if the redirected interface is <see cref="T:System.IDisposable"/>.
4142             </param>
4143             <returns>True if the method implements a method on a redirected interface.
4144             False otherwise.</returns>
4145         </member>
4146         <member name="M:System.Reflection.Metadata.MetadataReader.GetAttributeTypeRaw(System.Reflection.Metadata.CustomAttributeHandle)">
4147             <summary>
4148             Returns the type definition or reference handle of the attribute type.
4149             </summary>
4150             <returns><see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/> or <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/> or nil token if the metadata is invalid and the type can't be determined.</returns>
4151         </member>
4152         <member name="F:System.Reflection.Metadata.MetadataReaderOptions.None">
4153             <summary>
4154             All options are disabled.
4155             </summary>
4156         </member>
4157         <member name="F:System.Reflection.Metadata.MetadataReaderOptions.Default">
4158             <summary>
4159             The options that are used when a <see cref="T:System.Reflection.Metadata.MetadataReader"/> is obtained
4160             via an overload that does not take a <see cref="T:System.Reflection.Metadata.MetadataReaderOptions"/>
4161             argument.
4162             </summary>
4163         </member>
4164         <member name="F:System.Reflection.Metadata.MetadataReaderOptions.ApplyWindowsRuntimeProjections">
4165             <summary>
4166             Windows Runtime projections are enabled (on by default).
4167             </summary>
4168         </member>
4169         <member name="T:System.Reflection.Metadata.MetadataStringComparer">
4170              <summary>
4171              Provides string comparison helpers to query strings in metadata while
4172              avoiding allocation where possible.
4173              </summary>
4174             
4175              <remarks>
4176              No allocation is performed unless both the handle argument and the
4177              value argument contain non-ascii text.
4178             
4179              Obtain instances using <see cref="P:System.Reflection.Metadata.MetadataReader.StringComparer"/>.
4180             
4181              A default-initialized instance is useless and behaves as a null reference.
4182             
4183              The code is optimized such that there is no additional overhead in
4184              re-obtaining a a comparer over hoisting it in to a local.
4185              
4186              That is to say that a construct like:
4187             
4188              <code>
4189              if (reader.StringComparer.Equals(typeDef.Namespace, "System") &amp;&amp; 
4190                  reader.StringComparer.Equals(typeDef.Name, "Object")
4191              {
4192                  // found System.Object
4193              }
4194              </code>
4195              
4196              is no less efficient than:
4197              
4198              <code>
4199              var comparer = reader.StringComparer;
4200              if (comparer.Equals(typeDef.Namespace, "System") &amp;&amp;
4201                  comparer.Equals(typeDef.Name, "Object")
4202              {
4203                  // found System.Object
4204              }
4205              </code>
4206             
4207              The choice between them is therefore one of style and not performance.
4208              </remarks>
4209         </member>
4210         <member name="T:System.Reflection.Metadata.MetadataStringDecoder">
4211              <summary>
4212              Provides the <see cref="T:System.Reflection.Metadata.MetadataReader"/> with a custom mechanism for decoding
4213              byte sequences in metadata that represent text.
4214              </summary>
4215              <remarks>
4216              This can be used for the following purposes:
4217              
4218              1) To customize the treatment of invalid input. When no decoder is provided,
4219                 the <see cref="T:System.Reflection.Metadata.MetadataReader"/> uses the default fallback replacement 
4220                 with \uFFFD)
4221             
4222              2) To reuse existing strings instead of allocating a new one for each decoding
4223                 operation.
4224              </remarks>
4225         </member>
4226         <member name="P:System.Reflection.Metadata.MetadataStringDecoder.Encoding">
4227             <summary>
4228             Gets the encoding used by this instance. 
4229             </summary>
4230         </member>
4231         <member name="P:System.Reflection.Metadata.MetadataStringDecoder.DefaultUTF8">
4232             <summary>
4233             The default decoder used by <see cref="T:System.Reflection.Metadata.MetadataReader"/> to decode UTF-8 when
4234             no decoder is provided to the constructor.
4235             </summary>
4236         </member>
4237         <member name="M:System.Reflection.Metadata.MetadataStringDecoder.#ctor(System.Text.Encoding)">
4238             <summary>
4239             Creates a <see cref="T:System.Reflection.Metadata.MetadataStringDecoder"/> for the given encoding.
4240             </summary>
4241             <param name="encoding">The encoding to use.</param>
4242             <remarks>
4243             To cache and reuse existing strings. Create a derived class and override <see cref="M:System.Reflection.Metadata.MetadataStringDecoder.GetString(System.Byte*,System.Int32)"/> 
4244             </remarks>
4245         </member>
4246         <member name="M:System.Reflection.Metadata.MetadataStringDecoder.GetString(System.Byte*,System.Int32)">
4247             <summary>
4248             The mechanism through which the <see cref="T:System.Reflection.Metadata.MetadataReader"/> obtains strings
4249             for byte sequences in metadata. Override this to cache strings if required.
4250             Otherwise, it is implemented by forwarding straight to <see cref="P:System.Reflection.Metadata.MetadataStringDecoder.Encoding"/>
4251             and every call will allocate a new string.
4252             </summary>
4253             <param name="bytes">Pointer to bytes to decode.</param>
4254             <param name="byteCount">Number of bytes to decode.</param>
4255             <returns>The decoded string.</returns>
4256         </member>
4257         <member name="P:System.Reflection.Metadata.MethodBodyBlock.Size">
4258             <summary>
4259             Size of the method body - includes the header, IL and exception regions.
4260             </summary>
4261         </member>
4262         <member name="P:System.Reflection.Metadata.MethodSpecification.Method">
4263             <summary>
4264             MethodDef or MemberRef handle specifying to which generic method this <see cref="T:System.Reflection.Metadata.MethodSpecification"/> refers,
4265             that is which generic method is it an instantiation of.
4266             </summary>
4267         </member>
4268         <member name="P:System.Reflection.Metadata.MethodSpecification.Signature">
4269             <summary>
4270             Gets a handle to the signature blob.
4271             </summary>
4272         </member>
4273         <member name="P:System.Reflection.Metadata.NamespaceDefinition.Name">
4274             <summary>
4275             Gets the unqualified name of the NamespaceDefinition.
4276             </summary>
4277         </member>
4278         <member name="P:System.Reflection.Metadata.NamespaceDefinition.Parent">
4279             <summary>
4280             Gets the parent namespace.
4281             </summary>
4282         </member>
4283         <member name="P:System.Reflection.Metadata.NamespaceDefinition.NamespaceDefinitions">
4284             <summary>
4285             Gets the namespace definitions that are direct children of the current
4286             namespace definition. 
4287             
4288             System.Collections and System.Linq are direct children of System. 
4289             System.Collections.Generic is a direct child of System.Collections.
4290             System.Collections.Generic is *not* a direct child of System.
4291             </summary>
4292         </member>
4293         <member name="P:System.Reflection.Metadata.NamespaceDefinition.TypeDefinitions">
4294             <summary>
4295             Gets all type definitions that reside directly in a namespace.
4296             </summary>
4297         </member>
4298         <member name="P:System.Reflection.Metadata.NamespaceDefinition.ExportedTypes">
4299             <summary>
4300             Gets all exported types that reside directly in a namespace.
4301             </summary>
4302         </member>
4303         <member name="T:System.Reflection.Metadata.Document">
4304             <summary>
4305             Source document in debug metadata. 
4306             </summary>
4307             <remarks>
4308             See also https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#document-table-0x30.
4309             </remarks>
4310         </member>
4311         <member name="P:System.Reflection.Metadata.Document.Name">
4312             <summary>
4313             Returns Document Name Blob.
4314             </summary>
4315         </member>
4316         <member name="P:System.Reflection.Metadata.Document.Language">
4317             <summary>
4318             Source code language (C#, VB, F#, etc.)
4319             </summary>
4320         </member>
4321         <member name="P:System.Reflection.Metadata.Document.HashAlgorithm">
4322             <summary>
4323             Hash algorithm used to calculate <see cref="P:System.Reflection.Metadata.Document.Hash"/> (SHA1, SHA256, etc.)
4324             </summary>
4325         </member>
4326         <member name="P:System.Reflection.Metadata.Document.Hash">
4327             <summary>
4328             Document content hash.
4329             </summary>
4330             <remarks>
4331             <see cref="P:System.Reflection.Metadata.Document.HashAlgorithm"/> determines the algorithm used to produce this hash.
4332             The source document is hashed in its binary form as stored in the file. 
4333             </remarks>
4334         </member>
4335         <member name="T:System.Reflection.Metadata.DocumentNameBlobHandle">
4336             <summary>
4337             <see cref="T:System.Reflection.Metadata.BlobHandle"/> representing a blob on #Blob heap in Portable PDB 
4338             structured as Document Name. 
4339             </summary>
4340             <remarks>
4341             The kind of the handle is <see cref="F:System.Reflection.Metadata.HandleKind.Blob"/>. 
4342             The handle is a specialization of <see cref="T:System.Reflection.Metadata.BlobHandle"/> and doesn't have a distinct kind. 
4343             </remarks>
4344         </member>
4345         <member name="M:System.Reflection.Metadata.MethodDebugInformationHandle.ToDefinitionHandle">
4346             <summary>
4347             Returns a handle to <see cref="T:System.Reflection.Metadata.MethodDefinition"/> corresponding to this handle.
4348             </summary>
4349             <remarks>
4350             The resulting handle is only valid within the context of a <see cref="T:System.Reflection.Metadata.MetadataReader"/> open on the type system metadata blob,
4351             which in case of standalone PDB file is a different reader than the one containing this method debug information.
4352             </remarks>
4353         </member>
4354         <member name="M:System.Reflection.Metadata.ImportDefinitionCollection.Enumerator.MoveNext">
4355             <exception cref="T:System.BadImageFormatException">Invalid blob format.</exception>
4356         </member>
4357         <member name="T:System.Reflection.Metadata.LocalConstant">
4358             <summary>
4359             Local constant. Stored in debug metadata.
4360             </summary>
4361             <remarks>
4362             See https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#localconstant-table-0x34.
4363             </remarks>
4364         </member>
4365         <member name="P:System.Reflection.Metadata.LocalConstant.Signature">
4366             <summary>
4367             The constant signature.
4368             </summary>
4369         </member>
4370         <member name="T:System.Reflection.Metadata.ImportScope">
4371             <summary>
4372             Lexical scope within which a group of imports are available. Stored in debug metadata.
4373             </summary>
4374             <remarks>
4375             See https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#importscope-table-0x35
4376             </remarks>
4377         </member>
4378         <member name="T:System.Reflection.Metadata.LocalScope">
4379             <summary>
4380             Scope of local variables and constants. Stored in debug metadata.
4381             </summary>
4382             <remarks>
4383             See https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#localscope-table-0x32.
4384             </remarks>
4385         </member>
4386         <member name="T:System.Reflection.Metadata.LocalVariable">
4387             <summary>
4388             Local variable. Stored in debug metadata.
4389             </summary>
4390             <remarks>
4391             See https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#localvariable-table-0x33.
4392             </remarks>
4393         </member>
4394         <member name="T:System.Reflection.Metadata.MethodDebugInformation">
4395             <summary>
4396             Debug information associated with a method definition. Stored in debug metadata.
4397             </summary>
4398             <remarks>
4399             See https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md#methoddebuginformation-table-0x31.
4400             </remarks>
4401         </member>
4402         <member name="P:System.Reflection.Metadata.MethodDebugInformation.SequencePointsBlob">
4403             <summary>
4404             Returns a blob encoding sequence points.
4405             Use <see cref="M:System.Reflection.Metadata.MethodDebugInformation.GetSequencePoints"/> to decode.
4406             </summary>
4407         </member>
4408         <member name="P:System.Reflection.Metadata.MethodDebugInformation.Document">
4409             <summary>
4410             The document containing the first sequence point of the method, 
4411             or nil if the method doesn't have sequence points.
4412             </summary>
4413         </member>
4414         <member name="P:System.Reflection.Metadata.MethodDebugInformation.LocalSignature">
4415             <summary>
4416             Returns local signature handle.
4417             </summary>
4418         </member>
4419         <member name="M:System.Reflection.Metadata.MethodDebugInformation.GetStateMachineKickoffMethod">
4420             <summary>
4421             If the method is a MoveNext method of a state machine returns the kickoff method of the state machine, otherwise returns nil handle.
4422             </summary>
4423         </member>
4424         <member name="M:System.Reflection.Metadata.PEReaderExtensions.GetMethodBody(System.Reflection.PortableExecutable.PEReader,System.Int32)">
4425             <summary>
4426             Returns a body block of a method with specified Relative Virtual Address (RVA);
4427             </summary>
4428             <exception cref="T:System.ArgumentNullException"><paramref name="peReader"/> is null.</exception>
4429             <exception cref="T:System.BadImageFormatException">The body is not found in the metadata or is invalid.</exception>
4430             <exception cref="T:System.InvalidOperationException">Section where the method is stored is not available.</exception>
4431             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
4432         </member>
4433         <member name="M:System.Reflection.Metadata.PEReaderExtensions.GetMetadataReader(System.Reflection.PortableExecutable.PEReader)">
4434             <summary>
4435             Gets a <see cref="T:System.Reflection.Metadata.MetadataReader"/> from a <see cref="T:System.Reflection.PortableExecutable.PEReader"/>.
4436             </summary>
4437             <remarks>
4438             The caller must keep the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> alive and undisposed throughout the lifetime of the metadata reader.
4439             </remarks>
4440             <exception cref="T:System.ArgumentNullException"><paramref name="peReader"/> is null</exception>
4441             <exception cref="T:System.PlatformNotSupportedException">The current platform is big-endian.</exception>
4442             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
4443         </member>
4444         <member name="M:System.Reflection.Metadata.PEReaderExtensions.GetMetadataReader(System.Reflection.PortableExecutable.PEReader,System.Reflection.Metadata.MetadataReaderOptions)">
4445             <summary>
4446             Gets a <see cref="T:System.Reflection.Metadata.MetadataReader"/> from a <see cref="T:System.Reflection.PortableExecutable.PEReader"/>.
4447             </summary>
4448             <remarks>
4449             The caller must keep the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> alive and undisposed throughout the lifetime of the metadata reader.
4450             </remarks>
4451             <exception cref="T:System.ArgumentNullException"><paramref name="peReader"/> is null</exception>
4452             <exception cref="T:System.PlatformNotSupportedException">The current platform is big-endian.</exception>
4453             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
4454         </member>
4455         <member name="M:System.Reflection.Metadata.PEReaderExtensions.GetMetadataReader(System.Reflection.PortableExecutable.PEReader,System.Reflection.Metadata.MetadataReaderOptions,System.Reflection.Metadata.MetadataStringDecoder)">
4456             <summary>
4457             Gets a <see cref="T:System.Reflection.Metadata.MetadataReader"/> from a <see cref="T:System.Reflection.PortableExecutable.PEReader"/>.
4458             </summary>
4459             <remarks>
4460             The caller must keep the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> alive and undisposed throughout the lifetime of the metadata reader.
4461             </remarks>
4462             <exception cref="T:System.ArgumentNullException"><paramref name="peReader"/> is null</exception>
4463             <exception cref="T:System.ArgumentException">The encoding of <paramref name="utf8Decoder"/> is not <see cref="T:System.Text.UTF8Encoding"/>.</exception>
4464             <exception cref="T:System.PlatformNotSupportedException">The current platform is big-endian.</exception>
4465             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
4466         </member>
4467         <member name="T:System.Reflection.Metadata.SerializationTypeCode">
4468             <summary>
4469             Type codes used to encode types of values in Custom Attribute value blob.
4470             </summary>
4471         </member>
4472         <member name="F:System.Reflection.Metadata.SerializationTypeCode.Invalid">
4473             <summary>
4474             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.Invalid"/>.
4475             </summary>
4476         </member>
4477         <member name="F:System.Reflection.Metadata.SerializationTypeCode.Boolean">
4478             <summary>
4479             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.Boolean"/>.
4480             </summary>
4481         </member>
4482         <member name="F:System.Reflection.Metadata.SerializationTypeCode.Char">
4483             <summary>
4484             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.Char"/>.
4485             </summary>
4486         </member>
4487         <member name="F:System.Reflection.Metadata.SerializationTypeCode.SByte">
4488             <summary>
4489             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.SByte"/>.
4490             </summary>
4491         </member>
4492         <member name="F:System.Reflection.Metadata.SerializationTypeCode.Byte">
4493             <summary>
4494             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.Byte"/>.
4495             </summary>
4496         </member>
4497         <member name="F:System.Reflection.Metadata.SerializationTypeCode.Int16">
4498             <summary>
4499             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.Int16"/>.
4500             </summary>
4501         </member>
4502         <member name="F:System.Reflection.Metadata.SerializationTypeCode.UInt16">
4503             <summary>
4504             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.UInt16"/>.
4505             </summary>
4506         </member>
4507         <member name="F:System.Reflection.Metadata.SerializationTypeCode.Int32">
4508             <summary>
4509             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.Int32"/>.
4510             </summary>
4511         </member>
4512         <member name="F:System.Reflection.Metadata.SerializationTypeCode.UInt32">
4513             <summary>
4514             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.UInt32"/>.
4515             </summary>
4516         </member>
4517         <member name="F:System.Reflection.Metadata.SerializationTypeCode.Int64">
4518             <summary>
4519             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.Int64"/>.
4520             </summary>
4521         </member>
4522         <member name="F:System.Reflection.Metadata.SerializationTypeCode.UInt64">
4523             <summary>
4524             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.UInt64"/>.
4525             </summary>
4526         </member>
4527         <member name="F:System.Reflection.Metadata.SerializationTypeCode.Single">
4528             <summary>
4529             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.Single"/>.
4530             </summary>
4531         </member>
4532         <member name="F:System.Reflection.Metadata.SerializationTypeCode.Double">
4533             <summary>
4534             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.Double"/>.
4535             </summary>
4536         </member>
4537         <member name="F:System.Reflection.Metadata.SerializationTypeCode.String">
4538             <summary>
4539             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.String"/>.
4540             </summary>
4541         </member>
4542         <member name="F:System.Reflection.Metadata.SerializationTypeCode.SZArray">
4543             <summary>
4544             Equivalent to <see cref="F:System.Reflection.Metadata.SignatureTypeCode.SZArray"/>.
4545             </summary>
4546         </member>
4547         <member name="F:System.Reflection.Metadata.SerializationTypeCode.Type">
4548             <summary>
4549             The attribute argument is a System.Type instance.
4550             </summary>
4551         </member>
4552         <member name="F:System.Reflection.Metadata.SerializationTypeCode.TaggedObject">
4553             <summary>
4554             The attribute argument is "boxed" (passed to a parameter, field, or property of type object) and carries type information in the attribute blob.
4555             </summary>
4556         </member>
4557         <member name="F:System.Reflection.Metadata.SerializationTypeCode.Enum">
4558             <summary>
4559             The attribute argument is an Enum instance.
4560             </summary>
4561         </member>
4562         <member name="T:System.Reflection.Metadata.SignatureAttributes">
4563             <summary>
4564             Specified additional flags that can be applied to method signatures.
4565             Underlying values correspond to the representation in the leading signature 
4566             byte represented by <see cref="T:System.Reflection.Metadata.SignatureHeader"/>.
4567             </summary>
4568         </member>
4569         <member name="F:System.Reflection.Metadata.SignatureAttributes.None">
4570             <summary>
4571             No flags.
4572             </summary>
4573         </member>
4574         <member name="F:System.Reflection.Metadata.SignatureAttributes.Generic">
4575             <summary>
4576             Generic method.
4577             </summary>
4578         </member>
4579         <member name="F:System.Reflection.Metadata.SignatureAttributes.Instance">
4580             <summary>
4581             Instance method.
4582             </summary>
4583             <remarks>Ecma 335 CLI Specification refers to this flag as HAS_THIS.</remarks>
4584         </member>
4585         <member name="F:System.Reflection.Metadata.SignatureAttributes.ExplicitThis">
4586             <summary>
4587             The first explicitly declared parameter represents the instance pointer.
4588             </summary>
4589         </member>
4590         <member name="T:System.Reflection.Metadata.SignatureCallingConvention">
4591             <summary>
4592             Specifies how arguments in a given signature are passed from the caller to the callee.
4593             Underlying values correspond to the representation in the leading signature byte 
4594             represented by <see cref="T:System.Reflection.Metadata.SignatureHeader"/>.
4595             </summary>
4596         </member>
4597         <member name="F:System.Reflection.Metadata.SignatureCallingConvention.Default">
4598             <summary>
4599             Managed calling convention with fixed-length argument list.
4600             </summary>
4601         </member>
4602         <member name="F:System.Reflection.Metadata.SignatureCallingConvention.CDecl">
4603             <summary>
4604             Unmanaged C/C++-style calling convention where the call stack is cleaned by the caller.
4605             </summary>
4606         </member>
4607         <member name="F:System.Reflection.Metadata.SignatureCallingConvention.StdCall">
4608             <summary>
4609             Unmanaged calling convention where call stack is cleaned up by the callee.
4610             </summary>
4611         </member>
4612         <member name="F:System.Reflection.Metadata.SignatureCallingConvention.ThisCall">
4613             <summary>
4614             Unmanaged C++-style calling convention for calling instance member functions with a fixed argument list.
4615             </summary>
4616         </member>
4617         <member name="F:System.Reflection.Metadata.SignatureCallingConvention.FastCall">
4618             <summary>
4619             Unmanaged calling convention where arguments are passed in registers when possible.
4620             </summary>
4621         </member>
4622         <member name="F:System.Reflection.Metadata.SignatureCallingConvention.VarArgs">
4623             <summary>
4624             Managed calling convention for passing extra arguments.
4625             </summary>
4626         </member>
4627         <member name="T:System.Reflection.Metadata.SignatureHeader">
4628             <summary>
4629             Represents the signature characteristics specified by the leading byte of signature blobs.
4630             </summary>
4631             <remarks>
4632             This header byte is present in all method definition, method reference, standalone method, field, 
4633             property, and local variable signatures, but not in type specification signatures.
4634             </remarks>
4635         </member>
4636         <member name="T:System.Reflection.Metadata.SignatureKind">
4637             <summary>
4638             Specifies the signature kind. Underlying values correspond to the representation 
4639             in the leading signature byte represented by <see cref="T:System.Reflection.Metadata.SignatureHeader"/>.
4640             </summary>
4641         </member>
4642         <member name="F:System.Reflection.Metadata.SignatureKind.Method">
4643             <summary>
4644             Method reference, method definition, or standalone method signature.
4645             </summary>
4646         </member>
4647         <member name="F:System.Reflection.Metadata.SignatureKind.Field">
4648             <summary>
4649             Field signature.
4650             </summary>
4651         </member>
4652         <member name="F:System.Reflection.Metadata.SignatureKind.LocalVariables">
4653             <summary>
4654             Local variables signature.
4655             </summary>
4656         </member>
4657         <member name="F:System.Reflection.Metadata.SignatureKind.Property">
4658             <summary>
4659             Property signature.
4660             </summary>
4661         </member>
4662         <member name="F:System.Reflection.Metadata.SignatureKind.MethodSpecification">
4663             <summary>
4664             Method specification signature.
4665             </summary>
4666         </member>
4667         <member name="T:System.Reflection.Metadata.SignatureTypeCode">
4668             <summary>
4669             Represents the type codes that are used in signature encoding.
4670             </summary>
4671         </member>
4672         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Invalid">
4673             <summary>
4674             Represents an invalid or uninitialized type code. It will not appear in valid signatures.
4675             </summary>
4676         </member>
4677         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Void">
4678             <summary>
4679             Represents <see cref="T:System.Void"/> in signatures.
4680             </summary>
4681         </member>
4682         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Boolean">
4683             <summary>
4684             Represents <see cref="T:System.Boolean"/> in signatures.
4685             </summary>
4686         </member>
4687         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Char">
4688             <summary>
4689             Represents <see cref="T:System.Char"/> in signatures.
4690             </summary>
4691         </member>
4692         <member name="F:System.Reflection.Metadata.SignatureTypeCode.SByte">
4693             <summary>
4694             Represents <see cref="T:System.SByte"/> in signatures.
4695             </summary>
4696         </member>
4697         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Byte">
4698             <summary>
4699             Represents <see cref="T:System.Byte"/> in signatures.
4700             </summary>
4701         </member>
4702         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Int16">
4703             <summary>
4704             Represents <see cref="T:System.Int16"/> in signatures.
4705             </summary>
4706         </member>
4707         <member name="F:System.Reflection.Metadata.SignatureTypeCode.UInt16">
4708             <summary>
4709             Represents <see cref="T:System.UInt16"/> in signatures.
4710             </summary>
4711         </member>
4712         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Int32">
4713             <summary>
4714             Represents <see cref="T:System.Int32"/> in signatures.
4715             </summary>
4716         </member>
4717         <member name="F:System.Reflection.Metadata.SignatureTypeCode.UInt32">
4718             <summary>
4719             Represents <see cref="T:System.UInt32"/> in signatures.
4720             </summary>
4721         </member>
4722         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Int64">
4723             <summary>
4724             Represents <see cref="T:System.Int64"/> in signatures.
4725             </summary>
4726         </member>
4727         <member name="F:System.Reflection.Metadata.SignatureTypeCode.UInt64">
4728             <summary>
4729             Represents <see cref="T:System.UInt64"/> in signatures.
4730             </summary>
4731         </member>
4732         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Single">
4733             <summary>
4734             Represents <see cref="T:System.Single"/> in signatures.
4735             </summary>
4736         </member>
4737         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Double">
4738             <summary>
4739             Represents <see cref="T:System.Double"/> in signatures.
4740             </summary>
4741         </member>
4742         <member name="F:System.Reflection.Metadata.SignatureTypeCode.String">
4743             <summary>
4744             Represents <see cref="T:System.String"/> in signatures.
4745             </summary>
4746         </member>
4747         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Pointer">
4748             <summary>
4749             Represents a unmanaged pointers in signatures.
4750             It is followed in the blob by the signature encoding of the underlying type.
4751             </summary>
4752         </member>
4753         <member name="F:System.Reflection.Metadata.SignatureTypeCode.ByReference">
4754             <summary>
4755             Represents managed pointers (byref return values and parameters) in signatures.
4756             It is followed in the blob by the signature encoding of the underlying type.
4757             </summary>
4758         </member>
4759         <member name="F:System.Reflection.Metadata.SignatureTypeCode.GenericTypeParameter">
4760             <summary>
4761             Represents a generic type parameter used within a signature. 
4762             </summary>
4763         </member>
4764         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Array">
4765             <summary>
4766             Represents a generalized <see cref="T:System.Array"/> in signatures.
4767             </summary>
4768         </member>
4769         <member name="F:System.Reflection.Metadata.SignatureTypeCode.GenericTypeInstance">
4770             <summary>
4771             Represents the instantiation of a generic type in signatures.
4772             </summary>
4773         </member>
4774         <member name="F:System.Reflection.Metadata.SignatureTypeCode.TypedReference">
4775             <summary>
4776             Represents a System.TypedReference in signatures.
4777             </summary>
4778         </member>
4779         <member name="F:System.Reflection.Metadata.SignatureTypeCode.IntPtr">
4780             <summary>
4781             Represents a <see cref="T:System.IntPtr"/> in signatures.
4782             </summary>
4783         </member>
4784         <member name="F:System.Reflection.Metadata.SignatureTypeCode.UIntPtr">
4785             <summary>
4786             Represents a <see cref="T:System.UIntPtr"/> in signatures.
4787             </summary>
4788         </member>
4789         <member name="F:System.Reflection.Metadata.SignatureTypeCode.FunctionPointer">
4790             <summary>
4791             Represents function pointer types in signatures. 
4792             </summary>
4793         </member>
4794         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Object">
4795             <summary>
4796             Represents <see cref="T:System.Object"/>
4797             </summary>
4798         </member>
4799         <member name="F:System.Reflection.Metadata.SignatureTypeCode.SZArray">
4800             <summary>
4801             Represents a single dimensional <see cref="T:System.Array"/> with 0 lower bound.
4802             </summary>
4803         </member>
4804         <member name="F:System.Reflection.Metadata.SignatureTypeCode.GenericMethodParameter">
4805             <summary>
4806             Represents a generic method parameter used within a signature. 
4807             </summary>
4808         </member>
4809         <member name="F:System.Reflection.Metadata.SignatureTypeCode.RequiredModifier">
4810             <summary>
4811             Represents a custom modifier applied to a type within a signature that the caller must understand. 
4812             </summary>
4813         </member>
4814         <member name="F:System.Reflection.Metadata.SignatureTypeCode.OptionalModifier">
4815             <summary>
4816             Represents a custom modifier applied to a type within a signature that the caller can ignore.
4817             </summary>
4818         </member>
4819         <member name="F:System.Reflection.Metadata.SignatureTypeCode.TypeHandle">
4820             <summary>
4821             Precedes a type <see cref="T:System.Reflection.Metadata.EntityHandle"/> in signatures.
4822             </summary>
4823             <remarks>
4824             In raw metadata, this will be encoded as either ELEMENT_TYPE_CLASS (0x12) for reference
4825             types and ELEMENT_TYPE_VALUETYPE (0x11) for value types. This is collapsed to a single
4826             code because Windows Runtime projections can project from class to value type or vice-versa
4827             and the raw code is misleading in those cases.
4828             </remarks>
4829         </member>
4830         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Sentinel">
4831             <summary>
4832             Represents a marker to indicate the end of fixed arguments and the beginning of variable arguments. 
4833             </summary>
4834         </member>
4835         <member name="F:System.Reflection.Metadata.SignatureTypeCode.Pinned">
4836             <summary>
4837             Represents a local variable that is pinned by garbage collector
4838             </summary>
4839         </member>
4840         <member name="P:System.Reflection.Metadata.StandaloneSignature.Signature">
4841             <summary>
4842             Gets a handle to the signature blob.
4843             </summary>
4844         </member>
4845         <member name="M:System.Reflection.Metadata.StandaloneSignature.GetKind">
4846             <summary>
4847             Determines the kind of signature, which can be <see cref="F:System.Reflection.Metadata.SignatureKind.Method"/> or <see cref="F:System.Reflection.Metadata.SignatureKind.LocalVariables"/>
4848             </summary>
4849             <exception cref="T:System.BadImageFormatException">The signature is invalid.</exception>
4850         </member>
4851         <member name="P:System.Reflection.Metadata.TypeDefinition.Name">
4852             <summary>
4853             Name of the type.
4854             </summary>
4855         </member>
4856         <member name="P:System.Reflection.Metadata.TypeDefinition.Namespace">
4857             <summary>
4858             Full name of the namespace where the type is defined, or nil if the type is nested or defined in a root namespace.
4859             </summary>
4860         </member>
4861         <member name="P:System.Reflection.Metadata.TypeDefinition.NamespaceDefinition">
4862             <summary>
4863             The definition handle of the namespace where the type is defined, or nil if the type is nested or defined in a root namespace.
4864             </summary>
4865         </member>
4866         <member name="P:System.Reflection.Metadata.TypeDefinition.BaseType">
4867             <summary>
4868             The base type of the type definition: either
4869             <see cref="T:System.Reflection.Metadata.TypeSpecificationHandle"/>, <see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/> or <see cref="T:System.Reflection.Metadata.TypeDefinitionHandle"/>.
4870             </summary>
4871         </member>
4872         <member name="M:System.Reflection.Metadata.TypeDefinition.GetDeclaringType">
4873             <summary>
4874             Returns the enclosing type of a specified nested type or nil handle if the type is not nested.
4875             </summary>
4876         </member>
4877         <member name="M:System.Reflection.Metadata.TypeDefinition.GetNestedTypes">
4878             <summary>
4879             Returns an array of types nested in the specified type.
4880             </summary>
4881         </member>
4882         <member name="P:System.Reflection.Metadata.TypeReference.ResolutionScope">
4883             <summary>
4884             Resolution scope in which the target type is defined and is uniquely identified by the specified <see cref="P:System.Reflection.Metadata.TypeReference.Namespace"/> and <see cref="P:System.Reflection.Metadata.TypeReference.Name"/>.
4885             </summary>
4886             <remarks>
4887             Resolution scope can be one of the following handles:
4888             <list type="bullet">
4889             <item><description><see cref="T:System.Reflection.Metadata.TypeReferenceHandle"/> of the enclosing type, if the target type is a nested type.</description></item>
4890             <item><description><see cref="T:System.Reflection.Metadata.ModuleReferenceHandle"/>, if the target type is defined in another module within the same assembly as this one.</description></item>
4891             <item><description><see cref="F:System.Reflection.Metadata.EntityHandle.ModuleDefinition"/>, if the target type is defined in the current module. This should not occur in a CLI compressed metadata module.</description></item>
4892             <item><description><see cref="T:System.Reflection.Metadata.AssemblyReferenceHandle"/>, if the target type is defined in a different assembly from the current module.</description></item>
4893             <item><description>Nil handle if the target type must be resolved by searching the <see cref="P:System.Reflection.Metadata.MetadataReader.ExportedTypes"/> for a matching <see cref="P:System.Reflection.Metadata.TypeReference.Namespace"/> and <see cref="P:System.Reflection.Metadata.TypeReference.Name"/>.</description></item>
4894             </list>
4895             </remarks>
4896         </member>
4897         <member name="P:System.Reflection.Metadata.TypeReference.Name">
4898             <summary>
4899             Name of the target type.
4900             </summary>
4901         </member>
4902         <member name="P:System.Reflection.Metadata.TypeReference.Namespace">
4903             <summary>
4904             Full name of the namespace where the target type is defined, or nil if the type is nested or defined in a root namespace.
4905             </summary>
4906         </member>
4907         <member name="T:System.Reflection.PortableExecutable.ManagedTextSection">
4908             <summary>
4909             Managed .text PE section.
4910             </summary>
4911             <remarks>
4912             Contains in the following order:
4913             - Import Address Table
4914             - COR Header
4915             - IL
4916             - Metadata
4917             - Managed Resource Data
4918             - Strong Name Signature
4919             - Debug Data (directory and extra info)
4920             - Import Table
4921             - Name Table
4922             - Runtime Startup Stub
4923             - Mapped Field Data
4924             </remarks>
4925         </member>
4926         <member name="P:System.Reflection.PortableExecutable.ManagedTextSection.ILStreamSize">
4927             <summary>
4928             The size of IL stream (unaligned).
4929             </summary>
4930         </member>
4931         <member name="P:System.Reflection.PortableExecutable.ManagedTextSection.MetadataSize">
4932             <summary>
4933             Total size of metadata (header and all streams).
4934             </summary>
4935         </member>
4936         <member name="P:System.Reflection.PortableExecutable.ManagedTextSection.ResourceDataSize">
4937             <summary>
4938             The size of managed resource data stream.
4939             Aligned to <see cref="F:System.Reflection.PortableExecutable.ManagedTextSection.ManagedResourcesDataAlignment"/>.
4940             </summary>
4941         </member>
4942         <member name="P:System.Reflection.PortableExecutable.ManagedTextSection.StrongNameSignatureSize">
4943             <summary>
4944             Size of strong name hash.
4945             </summary>
4946         </member>
4947         <member name="P:System.Reflection.PortableExecutable.ManagedTextSection.DebugDataSize">
4948             <summary>
4949             Size of Debug data.
4950             </summary>
4951         </member>
4952         <member name="P:System.Reflection.PortableExecutable.ManagedTextSection.MappedFieldDataSize">
4953             <summary>
4954             The size of mapped field data stream.
4955             Aligned to <see cref="F:System.Reflection.PortableExecutable.ManagedTextSection.MappedFieldDataAlignment"/>.
4956             </summary>
4957         </member>
4958         <member name="P:System.Reflection.PortableExecutable.ManagedTextSection.RequiresStartupStub">
4959             <summary>
4960             If set, the module must include a machine code stub that transfers control to the virtual execution system.
4961             </summary>
4962         </member>
4963         <member name="P:System.Reflection.PortableExecutable.ManagedTextSection.Requires64bits">
4964             <summary>
4965             If set, the module contains instructions that assume a 64 bit instruction set. For example it may depend on an address being 64 bits.
4966             This may be true even if the module contains only IL instructions because of PlatformInvoke and COM interop.
4967             </summary>
4968         </member>
4969         <member name="M:System.Reflection.PortableExecutable.ManagedTextSection.Serialize(System.Reflection.Metadata.BlobBuilder,System.Int32,System.Int32,System.Reflection.PortableExecutable.CorFlags,System.UInt64,System.Reflection.Metadata.BlobBuilder,System.Reflection.Metadata.BlobBuilder,System.Reflection.Metadata.BlobBuilder,System.Reflection.Metadata.BlobBuilder,System.Reflection.Metadata.BlobBuilder,System.Reflection.Metadata.Blob@)">
4970             <summary>
4971             Serializes .text section data into a specified <paramref name="builder"/>.
4972             </summary>
4973             <param name="builder">An empty builder to serialize section data to.</param>
4974             <param name="relativeVirtualAddess">Relative virtual address of the section within the containing PE file.</param>
4975             <param name="entryPointTokenOrRelativeVirtualAddress">Entry point token or RVA (<see cref="P:System.Reflection.PortableExecutable.CorHeader.EntryPointTokenOrRelativeVirtualAddress"/>)</param>
4976             <param name="corFlags">COR Flags (<see cref="P:System.Reflection.PortableExecutable.CorHeader.Flags"/>).</param>
4977             <param name="baseAddress">Base address of the PE image.</param>
4978             <param name="metadataBuilder"><see cref="T:System.Reflection.Metadata.BlobBuilder"/> containing metadata. Must be populated with data. Linked into the <paramref name="builder"/> and can't be expanded afterwards.</param>
4979             <param name="ilBuilder"><see cref="T:System.Reflection.Metadata.BlobBuilder"/> containing IL stream. Must be populated with data. Linked into the <paramref name="builder"/> and can't be expanded afterwards.</param>
4980             <param name="mappedFieldDataBuilderOpt"><see cref="T:System.Reflection.Metadata.BlobBuilder"/> containing mapped field data. Must be populated with data. Linked into the <paramref name="builder"/> and can't be expanded afterwards.</param>
4981             <param name="resourceBuilderOpt"><see cref="T:System.Reflection.Metadata.BlobBuilder"/> containing managed resource data. Must be populated with data. Linked into the <paramref name="builder"/> and can't be expanded afterwards.</param>
4982             <param name="debugDataBuilderOpt"><see cref="T:System.Reflection.Metadata.BlobBuilder"/> containing PE debug table and data. Must be populated with data. Linked into the <paramref name="builder"/> and can't be expanded afterwards.</param>
4983             <param name="strongNameSignature">Blob reserved in the <paramref name="builder"/> for strong name signature.</param>
4984         </member>
4985         <member name="M:System.Reflection.PortableExecutable.DebugDirectoryBuilder.AddCodeViewEntry(System.String,System.Reflection.Metadata.BlobContentId,System.UInt16)">
4986             <summary>
4987             Adds a CodeView entry.
4988             </summary>
4989             <param name="pdbPath">Path to the PDB. Shall not be empty.</param>
4990             <param name="pdbContentId">Unique id of the PDB content.</param>
4991             <param name="portablePdbVersion">Version of Portable PDB format (e.g. 0x0100 for 1.0), or 0 if the PDB is not portable.</param>
4992             <exception cref="T:System.ArgumentNullException"><paramref name="pdbPath"/> is null.</exception>
4993             <exception cref="T:System.ArgumentException"><paramref name="pdbPath"/> contains NUL character.</exception>
4994             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="portablePdbVersion"/> is smaller than 0x0100.</exception>
4995         </member>
4996         <member name="M:System.Reflection.PortableExecutable.DebugDirectoryBuilder.AddReproducibleEntry">
4997             <summary>
4998             Adds Reproducible entry.
4999             </summary>
5000         </member>
5001         <member name="M:System.Reflection.PortableExecutable.DebugDirectoryBuilder.AddEmbeddedPortablePdbEntry(System.Reflection.Metadata.BlobBuilder,System.UInt16)">
5002             <summary>
5003             Adds Embedded Portable PDB entry.
5004             </summary>
5005             <param name="debugMetadata">Portable PDB metadata builder.</param>
5006             <param name="portablePdbVersion">Version of Portable PDB format (e.g. 0x0100 for 1.0).</param>
5007             <exception cref="T:System.ArgumentNullException"><paramref name="debugMetadata"/> is null.</exception>
5008             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="portablePdbVersion"/> is smaller than 0x0100.</exception>
5009         </member>
5010         <member name="M:System.Reflection.PortableExecutable.DebugDirectoryBuilder.Serialize(System.Reflection.Metadata.BlobBuilder,System.Reflection.PortableExecutable.SectionLocation,System.Int32)">
5011             <summary>
5012             Serialize the Debug Table and Data.
5013             </summary>
5014             <param name="builder">Builder.</param>
5015             <param name="sectionLocation">The containing PE section location.</param>
5016             <param name="sectionOffset">Offset of the table within the containing section.</param>
5017         </member>
5018         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.ExportTable">
5019             <remarks>
5020             Aka IMAGE_DIRECTORY_ENTRY_EXPORT.
5021             </remarks>
5022         </member>
5023         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.ImportTable">
5024             <remarks>
5025             Aka IMAGE_DIRECTORY_ENTRY_IMPORT.
5026             </remarks>
5027         </member>
5028         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.ResourceTable">
5029             <remarks>
5030             Aka IMAGE_DIRECTORY_ENTRY_RESOURCE.
5031             </remarks>
5032         </member>
5033         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.ExceptionTable">
5034             <remarks>
5035             Aka IMAGE_DIRECTORY_ENTRY_EXCEPTION.
5036             </remarks>
5037         </member>
5038         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.BaseRelocationTable">
5039             <remarks>
5040             Aka IMAGE_DIRECTORY_ENTRY_BASERELOC.
5041             </remarks>
5042         </member>
5043         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.DebugTable">
5044             <remarks>
5045             Aka IMAGE_DIRECTORY_ENTRY_DEBUG.
5046             </remarks>
5047         </member>
5048         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.CopyrightTable">
5049             <remarks>
5050             Aka IMAGE_DIRECTORY_ENTRY_COPYRIGHT or IMAGE_DIRECTORY_ENTRY_ARCHITECTURE.
5051             </remarks>
5052         </member>
5053         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.GlobalPointerTable">
5054             <remarks>
5055             Aka IMAGE_DIRECTORY_ENTRY_GLOBALPTR.
5056             </remarks>
5057         </member>
5058         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.ThreadLocalStorageTable">
5059             <remarks>
5060             Aka IMAGE_DIRECTORY_ENTRY_TLS.
5061             </remarks>
5062         </member>
5063         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.LoadConfigTable">
5064             <remarks>
5065             Aka IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG.
5066             </remarks>
5067         </member>
5068         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.BoundImportTable">
5069             <remarks>
5070             Aka IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT.
5071             </remarks>
5072         </member>
5073         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.ImportAddressTable">
5074             <remarks>
5075             Aka IMAGE_DIRECTORY_ENTRY_IAT.
5076             </remarks>
5077         </member>
5078         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.DelayImportTable">
5079             <remarks>
5080             Aka IMAGE_DIRECTORY_ENTRY_DELAY_IMPORT.
5081             </remarks>
5082         </member>
5083         <member name="P:System.Reflection.PortableExecutable.PEDirectoriesBuilder.CorHeaderTable">
5084             <remarks>
5085             Aka IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR.
5086             </remarks>
5087         </member>
5088         <member name="M:System.Reflection.PortableExecutable.PEHeaderBuilder.#ctor(System.Reflection.PortableExecutable.Machine,System.Int32,System.Int32,System.UInt64,System.Byte,System.Byte,System.UInt16,System.UInt16,System.UInt16,System.UInt16,System.UInt16,System.UInt16,System.Reflection.PortableExecutable.Subsystem,System.Reflection.PortableExecutable.DllCharacteristics,System.Reflection.PortableExecutable.Characteristics,System.UInt64,System.UInt64,System.UInt64,System.UInt64)">
5089             <summary>
5090             Creates PE header builder.
5091             </summary>
5092             <exception cref="T:System.ArgumentOutOfRangeException">
5093             <paramref name="fileAlignment"/> is not power of 2 between 512 and 64K, or
5094             <paramref name="sectionAlignment"/> not power of 2 or it's less than <paramref name="fileAlignment"/>.
5095             </exception>
5096         </member>
5097         <member name="T:System.Reflection.PortableExecutable.ResourceSectionBuilder">
5098             <summary>
5099             Base class for PE resource section builder. Implement to provide serialization logic for native resources.
5100             </summary>
5101         </member>
5102         <member name="P:System.Reflection.PortableExecutable.CoffHeader.Machine">
5103             <summary>
5104             The type of target machine.
5105             </summary>
5106         </member>
5107         <member name="P:System.Reflection.PortableExecutable.CoffHeader.NumberOfSections">
5108             <summary>
5109             The number of sections. This indicates the size of the section table, which immediately follows the headers.
5110             </summary>
5111         </member>
5112         <member name="P:System.Reflection.PortableExecutable.CoffHeader.TimeDateStamp">
5113             <summary>
5114             The low 32 bits of the number of seconds since 00:00 January 1, 1970, that indicates when the file was created.
5115             </summary>
5116         </member>
5117         <member name="P:System.Reflection.PortableExecutable.CoffHeader.PointerToSymbolTable">
5118             <summary>
5119             The file pointer to the COFF symbol table, or zero if no COFF symbol table is present. 
5120             This value should be zero for a PE image.
5121             </summary>
5122         </member>
5123         <member name="P:System.Reflection.PortableExecutable.CoffHeader.NumberOfSymbols">
5124             <summary>
5125             The number of entries in the symbol table. This data can be used to locate the string table, 
5126             which immediately follows the symbol table. This value should be zero for a PE image.
5127             </summary>
5128         </member>
5129         <member name="P:System.Reflection.PortableExecutable.CoffHeader.SizeOfOptionalHeader">
5130             <summary>
5131             The size of the optional header, which is required for executable files but not for object files. 
5132             This value should be zero for an object file. 
5133             </summary>
5134         </member>
5135         <member name="P:System.Reflection.PortableExecutable.CoffHeader.Characteristics">
5136             <summary>
5137             The flags that indicate the attributes of the file. 
5138             </summary>
5139         </member>
5140         <member name="T:System.Reflection.PortableExecutable.CorFlags">
5141             <summary>
5142             COR20Flags
5143             </summary>
5144         </member>
5145         <member name="P:System.Reflection.PortableExecutable.CodeViewDebugDirectoryData.Guid">
5146             <summary>
5147             GUID (Globally Unique Identifier) of the associated PDB.
5148             </summary>
5149         </member>
5150         <member name="P:System.Reflection.PortableExecutable.CodeViewDebugDirectoryData.Age">
5151             <summary>
5152             Iteration of the PDB. The first iteration is 1. The iteration is incremented each time the PDB content is augmented.
5153             </summary>
5154         </member>
5155         <member name="P:System.Reflection.PortableExecutable.CodeViewDebugDirectoryData.Path">
5156             <summary>
5157             Path to the .pdb file containing debug information for the PE/COFF file.
5158             </summary>
5159         </member>
5160         <member name="T:System.Reflection.PortableExecutable.DebugDirectoryEntry">
5161             <summary>
5162             Identifies the location, size and format of a block of debug information.
5163             </summary>
5164         </member>
5165         <member name="P:System.Reflection.PortableExecutable.DebugDirectoryEntry.Stamp">
5166             <summary>
5167             The time and date that the debug data was created if the PE/COFF file is not deterministic,
5168             otherwise a value based on the hash of the content. 
5169             </summary>
5170             <remarks>
5171             The algorithm used to calculate this value is an implementation 
5172             detail of the tool that produced the file.
5173             </remarks>
5174         </member>
5175         <member name="P:System.Reflection.PortableExecutable.DebugDirectoryEntry.MajorVersion">
5176             <summary>
5177             The major version number of the debug data format.
5178             </summary>
5179         </member>
5180         <member name="P:System.Reflection.PortableExecutable.DebugDirectoryEntry.MinorVersion">
5181             <summary>
5182             The minor version number of the debug data format.
5183             </summary>
5184         </member>
5185         <member name="P:System.Reflection.PortableExecutable.DebugDirectoryEntry.Type">
5186             <summary>
5187             The format of debugging information. 
5188             </summary>
5189         </member>
5190         <member name="P:System.Reflection.PortableExecutable.DebugDirectoryEntry.DataSize">
5191             <summary>
5192             The size of the debug data (not including the debug directory itself).
5193             </summary>
5194         </member>
5195         <member name="P:System.Reflection.PortableExecutable.DebugDirectoryEntry.DataRelativeVirtualAddress">
5196             <summary>
5197             The address of the debug data when loaded, relative to the image base.
5198             </summary>
5199         </member>
5200         <member name="P:System.Reflection.PortableExecutable.DebugDirectoryEntry.DataPointer">
5201             <summary>
5202             The file pointer to the debug data.
5203             </summary>
5204         </member>
5205         <member name="P:System.Reflection.PortableExecutable.DebugDirectoryEntry.IsPortableCodeView">
5206             <summary>
5207             True if the the entry is a <see cref="F:System.Reflection.PortableExecutable.DebugDirectoryEntryType.CodeView"/> entry pointing to a Portable PDB.
5208             </summary>
5209         </member>
5210         <member name="F:System.Reflection.PortableExecutable.DebugDirectoryEntryType.Unknown">
5211             <summary>
5212             An unknown value that is ignored by all tools.
5213             </summary>
5214         </member>
5215         <member name="F:System.Reflection.PortableExecutable.DebugDirectoryEntryType.Coff">
5216             <summary>
5217             The COFF debug information (line numbers, symbol table, and string table). 
5218             This type of debug information is also pointed to by fields in the file headers.
5219             </summary>
5220         </member>
5221         <member name="F:System.Reflection.PortableExecutable.DebugDirectoryEntryType.CodeView">
5222             <summary>
5223             Associated PDB file description.
5224             </summary>
5225         </member>
5226         <member name="F:System.Reflection.PortableExecutable.DebugDirectoryEntryType.Reproducible">
5227             <summary>
5228             Presence of this entry indicates deterministic PE/COFF file.
5229             </summary>
5230             <remarks>
5231             <para>
5232             The tool that produced the deterministic PE/COFF file guarantees that the entire content of the file 
5233             is based solely on documented inputs given to the tool (such as source files, resource files, compiler options, etc.) 
5234             rather than ambient environment variables (such as the current time, the operating system, 
5235             the bitness of the process running the tool, etc.).
5236             </para>
5237             <para>
5238             The value of field TimeDateStamp in COFF File Header of a deterministic PE/COFF file 
5239             does not indicate the date and time when the file was produced and should not be interpreted that way.
5240             Instead the value of the field is derived from a hash of the file content. The algorithm to calculate 
5241             this value is an implementation detail of the tool that produced the file.
5242             </para>
5243             <para>
5244             The debug directory entry of type <see cref="F:System.Reflection.PortableExecutable.DebugDirectoryEntryType.Reproducible"/> must have all fields, except for Type zeroed.
5245             </para>
5246             </remarks>
5247         </member>
5248         <member name="F:System.Reflection.PortableExecutable.DebugDirectoryEntryType.EmbeddedPortablePdb">
5249             <summary>
5250             The entry points to a blob containing Embedded Portable PDB.
5251             </summary>
5252             <remarks>
5253             The Embedded Portable PDB blob has the following format:
5254             
5255             blob ::= uncompressed-size data
5256             
5257             Data spans the remainder of the blob and contains a Deflate-compressed Portable PDB.
5258             </remarks>
5259         </member>
5260         <member name="F:System.Reflection.PortableExecutable.Machine.Unknown">
5261             <summary>
5262             The target CPU is unknown or not specified.
5263             </summary>
5264         </member>
5265         <member name="F:System.Reflection.PortableExecutable.Machine.I386">
5266             <summary>
5267             Intel 386.
5268             </summary>
5269         </member>
5270         <member name="F:System.Reflection.PortableExecutable.Machine.WceMipsV2">
5271             <summary>
5272             MIPS little-endian WCE v2
5273             </summary>
5274         </member>
5275         <member name="F:System.Reflection.PortableExecutable.Machine.Alpha">
5276             <summary>
5277             Alpha
5278             </summary>
5279         </member>
5280         <member name="F:System.Reflection.PortableExecutable.Machine.SH3">
5281             <summary>
5282             Hitachi SH3 little endian
5283             </summary>
5284         </member>
5285         <member name="F:System.Reflection.PortableExecutable.Machine.SH3Dsp">
5286             <summary>
5287             Hitachi SH3 DSP.
5288             </summary>
5289         </member>
5290         <member name="F:System.Reflection.PortableExecutable.Machine.SH3E">
5291             <summary>
5292             Hitachi SH3 little endian.
5293             </summary>
5294         </member>
5295         <member name="F:System.Reflection.PortableExecutable.Machine.SH4">
5296             <summary>
5297             Hitachi SH4 little endian.
5298             </summary>
5299         </member>
5300         <member name="F:System.Reflection.PortableExecutable.Machine.SH5">
5301             <summary>
5302             Hitachi SH5.
5303             </summary>
5304         </member>
5305         <member name="F:System.Reflection.PortableExecutable.Machine.Arm">
5306             <summary>
5307             ARM little endian
5308             </summary>
5309         </member>
5310         <member name="F:System.Reflection.PortableExecutable.Machine.Thumb">
5311             <summary>
5312             Thumb.
5313             </summary>
5314         </member>
5315         <member name="F:System.Reflection.PortableExecutable.Machine.ArmThumb2">
5316             <summary>
5317             ARM Thumb-2 little endian.
5318             </summary>
5319         </member>
5320         <member name="F:System.Reflection.PortableExecutable.Machine.AM33">
5321             <summary>
5322             Matsushita AM33.
5323             </summary>
5324         </member>
5325         <member name="F:System.Reflection.PortableExecutable.Machine.PowerPC">
5326             <summary>
5327             IBM PowerPC little endian.
5328             </summary>
5329         </member>
5330         <member name="F:System.Reflection.PortableExecutable.Machine.PowerPCFP">
5331             <summary>
5332             PowerPCFP
5333             </summary>
5334         </member>
5335         <member name="F:System.Reflection.PortableExecutable.Machine.IA64">
5336             <summary>
5337             Intel 64
5338             </summary>
5339         </member>
5340         <member name="F:System.Reflection.PortableExecutable.Machine.MIPS16">
5341             <summary>
5342             MIPS
5343             </summary>
5344         </member>
5345         <member name="F:System.Reflection.PortableExecutable.Machine.Alpha64">
5346             <summary>
5347             ALPHA64
5348             </summary>
5349         </member>
5350         <member name="F:System.Reflection.PortableExecutable.Machine.MipsFpu">
5351             <summary>
5352             MIPS with FPU.
5353             </summary>
5354         </member>
5355         <member name="F:System.Reflection.PortableExecutable.Machine.MipsFpu16">
5356             <summary>
5357             MIPS16 with FPU.
5358             </summary>
5359         </member>
5360         <member name="F:System.Reflection.PortableExecutable.Machine.Tricore">
5361             <summary>
5362             Infineon
5363             </summary>
5364         </member>
5365         <member name="F:System.Reflection.PortableExecutable.Machine.Ebc">
5366             <summary>
5367             EFI Byte Code
5368             </summary>
5369         </member>
5370         <member name="F:System.Reflection.PortableExecutable.Machine.Amd64">
5371             <summary>
5372             AMD64 (K8)
5373             </summary>
5374         </member>
5375         <member name="F:System.Reflection.PortableExecutable.Machine.M32R">
5376             <summary>
5377             M32R little-endian
5378             </summary>
5379         </member>
5380         <member name="T:System.Reflection.PortableExecutable.PEBinaryReader">
5381              <summary>
5382              Simple BinaryReader wrapper to:
5383             
5384               1) throw BadImageFormat instead of EndOfStream or ArgumentOutOfRange.
5385               2) limit reads to a subset of the base stream.
5386             
5387              Only methods that are needed to read PE headers are implemented.
5388              </summary>
5389         </member>
5390         <member name="M:System.Reflection.PortableExecutable.PEBinaryReader.ReadNullPaddedUTF8(System.Int32)">
5391             <summary>
5392             Reads a fixed-length byte block as a null-padded UTF8-encoded string.
5393             The padding is not included in the returned string.
5394             
5395             Note that it is legal for UTF8 strings to contain NUL; if NUL occurs
5396             between non-NUL codepoints, it is not considered to be padding and
5397             is included in the result.
5398             </summary>
5399         </member>
5400         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.ProcessInit">
5401             <summary>
5402             Reserved.
5403             </summary>
5404         </member>
5405         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.ProcessTerm">
5406             <summary>
5407             Reserved.
5408             </summary>
5409         </member>
5410         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.ThreadInit">
5411             <summary>
5412             Reserved.
5413             </summary>
5414         </member>
5415         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.ThreadTerm">
5416             <summary>
5417             Reserved.
5418             </summary>
5419         </member>
5420         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.HighEntropyVirtualAddressSpace">
5421             <summary>
5422             Image can handle a high entropy 64-bit virtual address space.
5423             </summary>
5424         </member>
5425         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.DynamicBase">
5426             <summary>
5427             DLL can move.
5428             </summary>
5429         </member>
5430         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.NxCompatible">
5431             <summary>
5432             Image is NX compatible.
5433             </summary>
5434         </member>
5435         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.NoIsolation">
5436             <summary>
5437             Image understands isolation and doesn't want it.
5438             </summary>
5439         </member>
5440         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.NoSeh">
5441             <summary>
5442             Image does not use SEH.  No SE handler may reside in this image.
5443             </summary>
5444         </member>
5445         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.NoBind">
5446             <summary>
5447             Do not bind this image.
5448             </summary>
5449         </member>
5450         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.AppContainer">
5451             <summary>
5452             The image must run inside an AppContainer.
5453             </summary>
5454         </member>
5455         <member name="F:System.Reflection.PortableExecutable.DllCharacteristics.WdmDriver">
5456             <summary>
5457             Driver uses WDM model.
5458             </summary>
5459         </member>
5460         <member name="P:System.Reflection.PortableExecutable.PEHeader.Magic">
5461             <summary>
5462             Identifies the format of the image file.
5463             </summary>
5464         </member>
5465         <member name="P:System.Reflection.PortableExecutable.PEHeader.MajorLinkerVersion">
5466             <summary>
5467             The linker major version number.
5468             </summary>
5469         </member>
5470         <member name="P:System.Reflection.PortableExecutable.PEHeader.MinorLinkerVersion">
5471             <summary>
5472             The linker minor version number.
5473             </summary>
5474         </member>
5475         <member name="P:System.Reflection.PortableExecutable.PEHeader.SizeOfCode">
5476             <summary>
5477             The size of the code (text) section, or the sum of all code sections if there are multiple sections.
5478             </summary>
5479         </member>
5480         <member name="P:System.Reflection.PortableExecutable.PEHeader.SizeOfInitializedData">
5481             <summary>
5482             The size of the initialized data section, or the sum of all such sections if there are multiple data sections.
5483             </summary>
5484         </member>
5485         <member name="P:System.Reflection.PortableExecutable.PEHeader.SizeOfUninitializedData">
5486             <summary>
5487             The size of the uninitialized data section (BSS), or the sum of all such sections if there are multiple BSS sections.
5488             </summary>
5489         </member>
5490         <member name="P:System.Reflection.PortableExecutable.PEHeader.AddressOfEntryPoint">
5491             <summary>
5492             The address of the entry point relative to the image base when the PE file is loaded into memory. 
5493             For program images, this is the starting address. For device drivers, this is the address of the initialization function.
5494             An entry point is optional for DLLs. When no entry point is present, this field must be zero.
5495             </summary>
5496         </member>
5497         <member name="P:System.Reflection.PortableExecutable.PEHeader.BaseOfCode">
5498             <summary>
5499             The address that is relative to the image base of the beginning-of-code section when it is loaded into memory.
5500             </summary>
5501         </member>
5502         <member name="P:System.Reflection.PortableExecutable.PEHeader.BaseOfData">
5503             <summary>
5504             The address that is relative to the image base of the beginning-of-data section when it is loaded into memory.
5505             </summary>
5506         </member>
5507         <member name="P:System.Reflection.PortableExecutable.PEHeader.ImageBase">
5508             <summary>
5509             The preferred address of the first byte of image when loaded into memory; 
5510             must be a multiple of 64K.
5511             </summary>
5512         </member>
5513         <member name="P:System.Reflection.PortableExecutable.PEHeader.SectionAlignment">
5514             <summary>
5515             The alignment (in bytes) of sections when they are loaded into memory. It must be greater than or equal to <see cref="P:System.Reflection.PortableExecutable.PEHeader.FileAlignment"/>. 
5516             The default is the page size for the architecture.
5517             </summary>
5518         </member>
5519         <member name="P:System.Reflection.PortableExecutable.PEHeader.FileAlignment">
5520             <summary>
5521             The alignment factor (in bytes) that is used to align the raw data of sections in the image file. 
5522             The value should be a power of 2 between 512 and 64K, inclusive. The default is 512. 
5523             If the <see cref="P:System.Reflection.PortableExecutable.PEHeader.SectionAlignment"/> is less than the architecture's page size, 
5524             then <see cref="P:System.Reflection.PortableExecutable.PEHeader.FileAlignment"/> must match <see cref="P:System.Reflection.PortableExecutable.PEHeader.SectionAlignment"/>.
5525             </summary>
5526         </member>
5527         <member name="P:System.Reflection.PortableExecutable.PEHeader.MajorOperatingSystemVersion">
5528             <summary>
5529             The major version number of the required operating system.
5530             </summary>
5531         </member>
5532         <member name="P:System.Reflection.PortableExecutable.PEHeader.MinorOperatingSystemVersion">
5533             <summary>
5534             The minor version number of the required operating system.
5535             </summary>
5536         </member>
5537         <member name="P:System.Reflection.PortableExecutable.PEHeader.MajorImageVersion">
5538             <summary>
5539             The major version number of the image.
5540             </summary>
5541         </member>
5542         <member name="P:System.Reflection.PortableExecutable.PEHeader.MinorImageVersion">
5543             <summary>
5544             The minor version number of the image.
5545             </summary>
5546         </member>
5547         <member name="P:System.Reflection.PortableExecutable.PEHeader.MajorSubsystemVersion">
5548             <summary>
5549             The major version number of the subsystem.
5550             </summary>
5551         </member>
5552         <member name="P:System.Reflection.PortableExecutable.PEHeader.MinorSubsystemVersion">
5553             <summary>
5554             The minor version number of the subsystem.
5555             </summary>
5556         </member>
5557         <member name="P:System.Reflection.PortableExecutable.PEHeader.SizeOfImage">
5558             <summary>
5559             The size (in bytes) of the image, including all headers, as the image is loaded in memory. 
5560             It must be a multiple of <see cref="P:System.Reflection.PortableExecutable.PEHeader.SectionAlignment"/>.
5561             </summary>
5562         </member>
5563         <member name="P:System.Reflection.PortableExecutable.PEHeader.SizeOfHeaders">
5564             <summary>
5565             The combined size of an MS DOS stub, PE header, and section headers rounded up to a multiple of FileAlignment.
5566             </summary>
5567         </member>
5568         <member name="P:System.Reflection.PortableExecutable.PEHeader.CheckSum">
5569             <summary>
5570             The image file checksum. 
5571             </summary>
5572         </member>
5573         <member name="P:System.Reflection.PortableExecutable.PEHeader.Subsystem">
5574             <summary>
5575             The subsystem that is required to run this image. 
5576             </summary>
5577         </member>
5578         <member name="P:System.Reflection.PortableExecutable.PEHeader.SizeOfStackReserve">
5579             <summary>
5580             The size of the stack to reserve. Only <see cref="P:System.Reflection.PortableExecutable.PEHeader.SizeOfStackCommit"/> is committed; 
5581             the rest is made available one page at a time until the reserve size is reached.
5582             </summary>
5583         </member>
5584         <member name="P:System.Reflection.PortableExecutable.PEHeader.SizeOfStackCommit">
5585             <summary>
5586             The size of the stack to commit.
5587             </summary>
5588         </member>
5589         <member name="P:System.Reflection.PortableExecutable.PEHeader.SizeOfHeapReserve">
5590             <summary>
5591             The size of the local heap space to reserve. Only <see cref="P:System.Reflection.PortableExecutable.PEHeader.SizeOfHeapCommit"/> is committed; 
5592             the rest is made available one page at a time until the reserve size is reached.
5593             </summary>
5594         </member>
5595         <member name="P:System.Reflection.PortableExecutable.PEHeader.SizeOfHeapCommit">
5596             <summary>
5597             The size of the local heap space to commit.
5598             </summary>
5599         </member>
5600         <member name="P:System.Reflection.PortableExecutable.PEHeader.NumberOfRvaAndSizes">
5601             <summary>
5602             The number of data-directory entries in the remainder of the <see cref="T:System.Reflection.PortableExecutable.PEHeader"/>. Each describes a location and size.
5603             </summary>
5604         </member>
5605         <member name="P:System.Reflection.PortableExecutable.PEHeader.ExportTableDirectory">
5606             <remarks>
5607             Aka IMAGE_DIRECTORY_ENTRY_EXPORT.
5608             </remarks>
5609         </member>
5610         <member name="P:System.Reflection.PortableExecutable.PEHeader.ImportTableDirectory">
5611             <remarks>
5612             Aka IMAGE_DIRECTORY_ENTRY_IMPORT.
5613             </remarks>
5614         </member>
5615         <member name="P:System.Reflection.PortableExecutable.PEHeader.ResourceTableDirectory">
5616             <remarks>
5617             Aka IMAGE_DIRECTORY_ENTRY_RESOURCE.
5618             </remarks>
5619         </member>
5620         <member name="P:System.Reflection.PortableExecutable.PEHeader.ExceptionTableDirectory">
5621             <remarks>
5622             Aka IMAGE_DIRECTORY_ENTRY_EXCEPTION.
5623             </remarks>
5624         </member>
5625         <member name="P:System.Reflection.PortableExecutable.PEHeader.CertificateTableDirectory">
5626             <summary>
5627             The Certificate Table entry points to a table of attribute certificates. 
5628             </summary>
5629             <remarks>
5630             These certificates are not loaded into memory as part of the image.
5631             As such, the first field of this entry, which is normally an RVA, is a file pointer instead.
5632             
5633             Aka IMAGE_DIRECTORY_ENTRY_SECURITY.
5634             </remarks>
5635         </member>
5636         <member name="P:System.Reflection.PortableExecutable.PEHeader.BaseRelocationTableDirectory">
5637             <remarks>
5638             Aka IMAGE_DIRECTORY_ENTRY_BASERELOC.
5639             </remarks>
5640         </member>
5641         <member name="P:System.Reflection.PortableExecutable.PEHeader.DebugTableDirectory">
5642             <remarks>
5643             Aka IMAGE_DIRECTORY_ENTRY_DEBUG.
5644             </remarks>
5645         </member>
5646         <member name="P:System.Reflection.PortableExecutable.PEHeader.CopyrightTableDirectory">
5647             <remarks>
5648             Aka IMAGE_DIRECTORY_ENTRY_COPYRIGHT or IMAGE_DIRECTORY_ENTRY_ARCHITECTURE.
5649             </remarks>
5650         </member>
5651         <member name="P:System.Reflection.PortableExecutable.PEHeader.GlobalPointerTableDirectory">
5652             <remarks>
5653             Aka IMAGE_DIRECTORY_ENTRY_GLOBALPTR.
5654             </remarks>
5655         </member>
5656         <member name="P:System.Reflection.PortableExecutable.PEHeader.ThreadLocalStorageTableDirectory">
5657             <remarks>
5658             Aka IMAGE_DIRECTORY_ENTRY_TLS.
5659             </remarks>
5660         </member>
5661         <member name="P:System.Reflection.PortableExecutable.PEHeader.LoadConfigTableDirectory">
5662             <remarks>
5663             Aka IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG.
5664             </remarks>
5665         </member>
5666         <member name="P:System.Reflection.PortableExecutable.PEHeader.BoundImportTableDirectory">
5667             <remarks>
5668             Aka IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT.
5669             </remarks>
5670         </member>
5671         <member name="P:System.Reflection.PortableExecutable.PEHeader.ImportAddressTableDirectory">
5672             <remarks>
5673             Aka IMAGE_DIRECTORY_ENTRY_IAT.
5674             </remarks>
5675         </member>
5676         <member name="P:System.Reflection.PortableExecutable.PEHeader.DelayImportTableDirectory">
5677             <remarks>
5678             Aka IMAGE_DIRECTORY_ENTRY_DELAY_IMPORT.
5679             </remarks>
5680         </member>
5681         <member name="P:System.Reflection.PortableExecutable.PEHeader.CorHeaderTableDirectory">
5682             <remarks>
5683             Aka IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR.
5684             </remarks>
5685         </member>
5686         <member name="T:System.Reflection.PortableExecutable.PEHeaders">
5687             <summary>
5688             An object used to read PE (Portable Executable) and COFF (Common Object File Format) headers from a stream.
5689             </summary>
5690         </member>
5691         <member name="M:System.Reflection.PortableExecutable.PEHeaders.#ctor(System.IO.Stream)">
5692             <summary>
5693             Reads PE headers from the current location in the stream.
5694             </summary>
5695             <param name="peStream">Stream containing PE image starting at the stream's current position and ending at the end of the stream.</param>
5696             <exception cref="T:System.BadImageFormatException">The data read from stream have invalid format.</exception>
5697             <exception cref="T:System.IO.IOException">Error reading from the stream.</exception>
5698             <exception cref="T:System.ArgumentException">The stream doesn't support seek operations.</exception>
5699             <exception cref="T:System.ArgumentNullException"><paramref name="peStream"/> is null.</exception>
5700         </member>
5701         <member name="M:System.Reflection.PortableExecutable.PEHeaders.#ctor(System.IO.Stream,System.Int32)">
5702             <summary>
5703             Reads PE headers from the current location in the stream.
5704             </summary>
5705             <param name="peStream">Stream containing PE image of the given size starting at its current position.</param>
5706             <param name="size">Size of the PE image.</param>
5707             <exception cref="T:System.BadImageFormatException">The data read from stream have invalid format.</exception>
5708             <exception cref="T:System.IO.IOException">Error reading from the stream.</exception>
5709             <exception cref="T:System.ArgumentException">The stream doesn't support seek operations.</exception>
5710             <exception cref="T:System.ArgumentNullException"><paramref name="peStream"/> is null.</exception>
5711             <exception cref="T:System.ArgumentOutOfRangeException">Size is negative or extends past the end of the stream.</exception>
5712         </member>
5713         <member name="M:System.Reflection.PortableExecutable.PEHeaders.#ctor(System.IO.Stream,System.Int32,System.Boolean)">
5714             <summary>
5715             Reads PE headers from the current location in the stream.
5716             </summary>
5717             <param name="peStream">Stream containing PE image of the given size starting at its current position.</param>
5718             <param name="size">Size of the PE image.</param>
5719             <param name="isLoadedImage">True if the PE image has been loaded into memory by the OS loader.</param>
5720             <exception cref="T:System.BadImageFormatException">The data read from stream have invalid format.</exception>
5721             <exception cref="T:System.IO.IOException">Error reading from the stream.</exception>
5722             <exception cref="T:System.ArgumentException">The stream doesn't support seek operations.</exception>
5723             <exception cref="T:System.ArgumentNullException"><paramref name="peStream"/> is null.</exception>
5724             <exception cref="T:System.ArgumentOutOfRangeException">Size is negative or extends past the end of the stream.</exception>
5725         </member>
5726         <member name="P:System.Reflection.PortableExecutable.PEHeaders.MetadataStartOffset">
5727             <summary>
5728             Gets the offset (in bytes) from the start of the PE image to the start of the CLI metadata.
5729             or -1 if the image does not contain metadata.
5730             </summary>
5731         </member>
5732         <member name="P:System.Reflection.PortableExecutable.PEHeaders.MetadataSize">
5733             <summary>
5734             Gets the size of the CLI metadata 0 if the image does not contain metadata.)
5735             </summary>
5736         </member>
5737         <member name="P:System.Reflection.PortableExecutable.PEHeaders.CoffHeader">
5738             <summary>
5739             Gets the COFF header of the image.
5740             </summary>
5741         </member>
5742         <member name="P:System.Reflection.PortableExecutable.PEHeaders.CoffHeaderStartOffset">
5743             <summary>
5744             Gets the byte offset from the start of the PE image to the start of the COFF header.
5745             </summary>
5746         </member>
5747         <member name="P:System.Reflection.PortableExecutable.PEHeaders.IsCoffOnly">
5748             <summary>
5749             Determines if the image is Coff only.
5750             </summary>
5751         </member>
5752         <member name="P:System.Reflection.PortableExecutable.PEHeaders.PEHeader">
5753             <summary>
5754             Gets the PE header of the image or null if the image is COFF only.
5755             </summary>
5756         </member>
5757         <member name="P:System.Reflection.PortableExecutable.PEHeaders.PEHeaderStartOffset">
5758             <summary>
5759             Gets the byte offset from the start of the image to 
5760             </summary>
5761         </member>
5762         <member name="P:System.Reflection.PortableExecutable.PEHeaders.SectionHeaders">
5763             <summary>
5764             Gets the PE section headers.
5765             </summary>
5766         </member>
5767         <member name="P:System.Reflection.PortableExecutable.PEHeaders.CorHeader">
5768             <summary>
5769             Gets the CLI header or null if the image does not have one.
5770             </summary>
5771         </member>
5772         <member name="P:System.Reflection.PortableExecutable.PEHeaders.CorHeaderStartOffset">
5773             <summary>
5774             Gets the byte offset from the start of the image to the COR header or -1 if the image does not have one.
5775             </summary>
5776         </member>
5777         <member name="P:System.Reflection.PortableExecutable.PEHeaders.IsConsoleApplication">
5778             <summary>
5779             Determines if the image represents a Windows console application.
5780             </summary>
5781         </member>
5782         <member name="P:System.Reflection.PortableExecutable.PEHeaders.IsDll">
5783             <summary>
5784             Determines if the image represents a dynamically linked library.
5785             </summary>
5786         </member>
5787         <member name="P:System.Reflection.PortableExecutable.PEHeaders.IsExe">
5788             <summary>
5789             Determines if the image represents an executable.
5790             </summary>
5791         </member>
5792         <member name="M:System.Reflection.PortableExecutable.PEHeaders.TryGetDirectoryOffset(System.Reflection.PortableExecutable.DirectoryEntry,System.Int32@)">
5793             <summary>
5794             Gets the offset (in bytes) from the start of the image to the given directory data.
5795             </summary>
5796             <param name="directory">PE directory entry</param>
5797             <param name="offset">Offset from the start of the image to the given directory data</param>
5798             <returns>True if the directory data is found, false otherwise.</returns>
5799         </member>
5800         <member name="M:System.Reflection.PortableExecutable.PEHeaders.GetContainingSectionIndex(System.Int32)">
5801             <summary>
5802             Searches sections of the PE image for the one that contains specified Relative Virtual Address.
5803             </summary>
5804             <param name="relativeVirtualAddress">Address.</param>
5805             <returns>
5806             Index of the section that contains <paramref name="relativeVirtualAddress"/>,
5807             or -1 if there is none.
5808             </returns>
5809         </member>
5810         <member name="P:System.Reflection.PortableExecutable.PEMemoryBlock.Pointer">
5811             <summary>
5812             Pointer to the first byte of the block.
5813             </summary>
5814         </member>
5815         <member name="P:System.Reflection.PortableExecutable.PEMemoryBlock.Length">
5816             <summary>
5817             Length of the block.
5818             </summary>
5819         </member>
5820         <member name="M:System.Reflection.PortableExecutable.PEMemoryBlock.GetReader">
5821             <summary>
5822             Creates <see cref="T:System.Reflection.Metadata.BlobReader"/> for a blob spanning the entire block.
5823             </summary>
5824         </member>
5825         <member name="M:System.Reflection.PortableExecutable.PEMemoryBlock.GetReader(System.Int32,System.Int32)">
5826             <summary>
5827             Creates <see cref="T:System.Reflection.Metadata.BlobReader"/> for a blob spanning a part of the block.
5828             </summary>
5829             <exception cref="T:System.ArgumentOutOfRangeException">Specified range is not contained within the block.</exception>
5830         </member>
5831         <member name="M:System.Reflection.PortableExecutable.PEMemoryBlock.GetContent">
5832             <summary>
5833             Reads the content of the entire block into an array.
5834             </summary>
5835         </member>
5836         <member name="M:System.Reflection.PortableExecutable.PEMemoryBlock.GetContent(System.Int32,System.Int32)">
5837             <summary>
5838             Reads the content of a part of the block into an array.
5839             </summary>
5840             <exception cref="T:System.ArgumentOutOfRangeException">Specified range is not contained within the block.</exception>
5841         </member>
5842         <member name="T:System.Reflection.PortableExecutable.PEReader">
5843             <summary>
5844             Portable Executable format reader.
5845             </summary>
5846             <remarks>
5847             The implementation is thread-safe, that is multiple threads can read data from the reader in parallel.
5848             Disposal of the reader is not thread-safe (see <see cref="M:System.Reflection.PortableExecutable.PEReader.Dispose"/>).
5849             </remarks>
5850         </member>
5851         <member name="P:System.Reflection.PortableExecutable.PEReader.IsLoadedImage">
5852             <summary>
5853             True if the PE image has been loaded into memory by the OS loader.
5854             </summary>
5855         </member>
5856         <member name="M:System.Reflection.PortableExecutable.PEReader.#ctor(System.Byte*,System.Int32)">
5857             <summary>
5858             Creates a Portable Executable reader over a PE image stored in memory.
5859             </summary>
5860             <param name="peImage">Pointer to the start of the PE image.</param>
5861             <param name="size">The size of the PE image.</param>
5862             <exception cref="T:System.ArgumentNullException"><paramref name="peImage"/> is <see cref="F:System.IntPtr.Zero"/>.</exception>
5863             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="size"/> is negative.</exception>
5864             <remarks>
5865             The memory is owned by the caller and not released on disposal of the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>.
5866             The caller is responsible for keeping the memory alive and unmodified throughout the lifetime of the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>.
5867             The content of the image is not read during the construction of the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>
5868             </remarks>
5869         </member>
5870         <member name="M:System.Reflection.PortableExecutable.PEReader.#ctor(System.Byte*,System.Int32,System.Boolean)">
5871             <summary>
5872             Creates a Portable Executable reader over a PE image stored in memory.
5873             </summary>
5874             <param name="peImage">Pointer to the start of the PE image.</param>
5875             <param name="size">The size of the PE image.</param>
5876             <param name="isLoadedImage">True if the PE image has been loaded into memory by the OS loader.</param>
5877             <exception cref="T:System.ArgumentNullException"><paramref name="peImage"/> is <see cref="F:System.IntPtr.Zero"/>.</exception>
5878             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="size"/> is negative.</exception>
5879             <remarks>
5880             The memory is owned by the caller and not released on disposal of the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>.
5881             The caller is responsible for keeping the memory alive and unmodified throughout the lifetime of the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>.
5882             The content of the image is not read during the construction of the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>
5883             </remarks>
5884         </member>
5885         <member name="M:System.Reflection.PortableExecutable.PEReader.#ctor(System.IO.Stream)">
5886             <summary>
5887             Creates a Portable Executable reader over a PE image stored in a stream.
5888             </summary>
5889             <param name="peStream">PE image stream.</param>
5890             <exception cref="T:System.ArgumentNullException"><paramref name="peStream"/> is null.</exception>
5891             <remarks>
5892             Ownership of the stream is transferred to the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> upon successful validation of constructor arguments. It will be 
5893             disposed by the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> and the caller must not manipulate it.
5894             </remarks>
5895         </member>
5896         <member name="M:System.Reflection.PortableExecutable.PEReader.#ctor(System.IO.Stream,System.Reflection.PortableExecutable.PEStreamOptions)">
5897             <summary>
5898             Creates a Portable Executable reader over a PE image stored in a stream beginning at its current position and ending at the end of the stream.
5899             </summary>
5900             <param name="peStream">PE image stream.</param>
5901             <param name="options">
5902             Options specifying how sections of the PE image are read from the stream.
5903             
5904             Unless <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.LeaveOpen"/> is specified, ownership of the stream is transferred to the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> 
5905             upon successful argument validation. It will be disposed by the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> and the caller must not manipulate it.
5906             
5907             Unless <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchMetadata"/> or <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchEntireImage"/> is specified no data 
5908             is read from the stream during the construction of the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>. Furthermore, the stream must not be manipulated
5909             by caller while the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> is alive and undisposed.
5910             
5911             If <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchMetadata"/> or <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchEntireImage"/>, the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> 
5912             will have read all of the data requested during construction. As such, if <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.LeaveOpen"/> is also
5913             specified, the caller retains full ownership of the stream and is assured that it will not be manipulated by the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>
5914             after construction.
5915             </param>
5916             <exception cref="T:System.ArgumentNullException"><paramref name="peStream"/> is null.</exception>
5917             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="options"/> has an invalid value.</exception>
5918             <exception cref="T:System.IO.IOException">Error reading from the stream (only when prefetching data).</exception>
5919             <exception cref="T:System.BadImageFormatException"><see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchMetadata"/> is specified and the PE headers of the image are invalid.</exception>
5920         </member>
5921         <member name="M:System.Reflection.PortableExecutable.PEReader.#ctor(System.IO.Stream,System.Reflection.PortableExecutable.PEStreamOptions,System.Int32)">
5922             <summary>
5923             Creates a Portable Executable reader over a PE image of the given size beginning at the stream's current position.
5924             </summary>
5925             <param name="peStream">PE image stream.</param>
5926             <param name="size">PE image size.</param>
5927             <param name="options">
5928             Options specifying how sections of the PE image are read from the stream.
5929             
5930             Unless <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.LeaveOpen"/> is specified, ownership of the stream is transferred to the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> 
5931             upon successful argument validation. It will be disposed by the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> and the caller must not manipulate it.
5932             
5933             Unless <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchMetadata"/> or <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchEntireImage"/> is specified no data 
5934             is read from the stream during the construction of the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>. Furthermore, the stream must not be manipulated
5935             by caller while the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> is alive and undisposed.
5936             
5937             If <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchMetadata"/> or <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchEntireImage"/>, the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> 
5938             will have read all of the data requested during construction. As such, if <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.LeaveOpen"/> is also
5939             specified, the caller retains full ownership of the stream and is assured that it will not be manipulated by the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>
5940             after construction.
5941             </param>
5942             <exception cref="T:System.ArgumentOutOfRangeException">Size is negative or extends past the end of the stream.</exception>
5943             <exception cref="T:System.IO.IOException">Error reading from the stream (only when prefetching data).</exception>
5944             <exception cref="T:System.BadImageFormatException"><see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchMetadata"/> is specified and the PE headers of the image are invalid.</exception>
5945         </member>
5946         <member name="M:System.Reflection.PortableExecutable.PEReader.#ctor(System.Collections.Immutable.ImmutableArray{System.Byte})">
5947             <summary>
5948             Creates a Portable Executable reader over a PE image stored in a byte array.
5949             </summary>
5950             <param name="peImage">PE image.</param>
5951             <remarks>
5952             The content of the image is not read during the construction of the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>
5953             </remarks>
5954             <exception cref="T:System.ArgumentNullException"><paramref name="peImage"/> is null.</exception>
5955         </member>
5956         <member name="M:System.Reflection.PortableExecutable.PEReader.Dispose">
5957             <summary>
5958             Disposes all memory allocated by the reader.
5959             </summary>
5960             <remarks>
5961             <see cref="M:System.Reflection.PortableExecutable.PEReader.Dispose"/>  can be called multiple times (but not in parallel).
5962             It is not safe to call <see cref="M:System.Reflection.PortableExecutable.PEReader.Dispose"/> in parallel with any other operation on the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>
5963             or reading from <see cref="T:System.Reflection.PortableExecutable.PEMemoryBlock"/>s retrieved from the reader.
5964             </remarks>
5965         </member>
5966         <member name="P:System.Reflection.PortableExecutable.PEReader.PEHeaders">
5967             <summary>
5968             Gets the PE headers.
5969             </summary>
5970             <exception cref="T:System.BadImageFormatException">The headers contain invalid data.</exception>
5971             <exception cref="T:System.IO.IOException">Error reading from the stream.</exception>
5972         </member>
5973         <member name="M:System.Reflection.PortableExecutable.PEReader.InitializePEHeaders">
5974             <exception cref="T:System.IO.IOException">Error reading from the stream.</exception>
5975         </member>
5976         <member name="M:System.Reflection.PortableExecutable.PEReader.ReadPEHeadersNoLock(System.IO.Stream,System.Int64,System.Int32,System.Boolean)">
5977             <exception cref="T:System.IO.IOException">Error reading from the stream.</exception>
5978         </member>
5979         <member name="M:System.Reflection.PortableExecutable.PEReader.GetEntireImageBlock">
5980             <summary>
5981             Returns a view of the entire image as a pointer and length.
5982             </summary>
5983             <exception cref="T:System.InvalidOperationException">PE image not available.</exception>
5984         </member>
5985         <member name="M:System.Reflection.PortableExecutable.PEReader.GetMetadataBlock">
5986             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
5987             <exception cref="T:System.InvalidOperationException">PE image doesn't have metadata.</exception>
5988         </member>
5989         <member name="M:System.Reflection.PortableExecutable.PEReader.GetPESectionBlock(System.Int32)">
5990             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
5991             <exception cref="T:System.InvalidOperationException">PE image not available.</exception>
5992         </member>
5993         <member name="P:System.Reflection.PortableExecutable.PEReader.IsEntireImageAvailable">
5994             <summary>
5995             Return true if the reader can access the entire PE image.
5996             </summary>
5997             <remarks>
5998             Returns false if the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> is constructed from a stream and only part of it is prefetched into memory.
5999             </remarks>
6000         </member>
6001         <member name="M:System.Reflection.PortableExecutable.PEReader.GetEntireImage">
6002             <summary>
6003             Gets a pointer to and size of the PE image if available (<see cref="P:System.Reflection.PortableExecutable.PEReader.IsEntireImageAvailable"/>).
6004             </summary>
6005             <exception cref="T:System.InvalidOperationException">The entire PE image is not available.</exception>
6006         </member>
6007         <member name="P:System.Reflection.PortableExecutable.PEReader.HasMetadata">
6008             <summary>
6009             Returns true if the PE image contains CLI metadata.
6010             </summary>
6011             <exception cref="T:System.BadImageFormatException">The PE headers contain invalid data.</exception>
6012             <exception cref="T:System.IO.IOException">Error reading from the underlying stream.</exception>
6013         </member>
6014         <member name="M:System.Reflection.PortableExecutable.PEReader.GetMetadata">
6015             <summary>
6016             Loads PE section that contains CLI metadata.
6017             </summary>
6018             <exception cref="T:System.InvalidOperationException">The PE image doesn't contain metadata (<see cref="P:System.Reflection.PortableExecutable.PEReader.HasMetadata"/> returns false).</exception>
6019             <exception cref="T:System.BadImageFormatException">The PE headers contain invalid data.</exception>
6020             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
6021         </member>
6022         <member name="M:System.Reflection.PortableExecutable.PEReader.GetSectionData(System.Int32)">
6023             <summary>
6024             Loads PE section that contains the specified <paramref name="relativeVirtualAddress"/> into memory
6025             and returns a memory block that starts at <paramref name="relativeVirtualAddress"/> and ends at the end of the containing section.
6026             </summary>
6027             <param name="relativeVirtualAddress">Relative Virtual Address of the data to read.</param>
6028             <returns>
6029             An empty block if <paramref name="relativeVirtualAddress"/> doesn't represent a location in any of the PE sections of this PE image.
6030             </returns>
6031             <exception cref="T:System.BadImageFormatException">The PE headers contain invalid data.</exception>
6032             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
6033             <exception cref="T:System.InvalidOperationException">PE image not available.</exception>
6034             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="relativeVirtualAddress"/> is negative.</exception>
6035         </member>
6036         <member name="M:System.Reflection.PortableExecutable.PEReader.GetSectionData(System.String)">
6037             <summary>
6038             Loads PE section of the specified name into memory and returns a memory block that spans the section.
6039             </summary>
6040             <param name="sectionName">Name of the section.</param>
6041             <returns>
6042             An empty block if no section of the given <paramref name="sectionName"/> exists in this PE image.
6043             </returns>
6044             <exception cref="T:System.ArgumentNullException"><paramref name="sectionName"/> is null.</exception>
6045             <exception cref="T:System.InvalidOperationException">PE image not available.</exception>
6046         </member>
6047         <member name="M:System.Reflection.PortableExecutable.PEReader.ReadDebugDirectory">
6048             <summary>
6049             Reads all Debug Directory table entries.
6050             </summary>
6051             <exception cref="T:System.BadImageFormatException">Bad format of the entry.</exception>
6052             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
6053             <exception cref="T:System.InvalidOperationException">PE image not available.</exception>
6054         </member>
6055         <member name="M:System.Reflection.PortableExecutable.PEReader.ReadCodeViewDebugDirectoryData(System.Reflection.PortableExecutable.DebugDirectoryEntry)">
6056             <summary>
6057             Reads the data pointed to by the specified Debug Directory entry and interprets them as CodeView.
6058             </summary>
6059             <exception cref="T:System.ArgumentException"><paramref name="entry"/> is not a CodeView entry.</exception>
6060             <exception cref="T:System.BadImageFormatException">Bad format of the data.</exception>
6061             <exception cref="T:System.IO.IOException">IO error while reading from the underlying stream.</exception>
6062             <exception cref="T:System.InvalidOperationException">PE image not available.</exception>
6063         </member>
6064         <member name="M:System.Reflection.PortableExecutable.PEReader.ReadEmbeddedPortablePdbDebugDirectoryData(System.Reflection.PortableExecutable.DebugDirectoryEntry)">
6065             <summary>
6066             Reads the data pointed to by the specified Debug Directory entry and interprets them as Embedded Portable PDB blob.
6067             </summary>
6068             <returns>
6069             Provider of a metadata reader reading Portable PDB image.
6070             </returns>
6071             <exception cref="T:System.ArgumentException"><paramref name="entry"/> is not a <see cref="F:System.Reflection.PortableExecutable.DebugDirectoryEntryType.EmbeddedPortablePdb"/> entry.</exception>
6072             <exception cref="T:System.BadImageFormatException">Bad format of the data.</exception>
6073             <exception cref="T:System.InvalidOperationException">PE image not available.</exception>
6074         </member>
6075         <member name="M:System.Reflection.PortableExecutable.PEReader.TryOpenAssociatedPortablePdb(System.String,System.Func{System.String,System.IO.Stream},System.Reflection.Metadata.MetadataReaderProvider@,System.String@)">
6076             <summary>
6077             Opens a Portable PDB associated with this PE image.
6078             </summary>
6079             <param name="peImagePath">
6080             The path to the PE image. The path is used to locate the PDB file located in the directory containing the PE file.
6081             </param>
6082             <param name="pdbFileStreamProvider">
6083             If specified, called to open a <see cref="T:System.IO.Stream"/> for a given file path. 
6084             The provider is expected to either return a readable and seekable <see cref="T:System.IO.Stream"/>, 
6085             or <c>null</c> if the target file doesn't exist or should be ignored for some reason.
6086             
6087             The provider shall throw <see cref="T:System.IO.IOException"/> if it fails to open the file due to an unexpected IO error.
6088             </param>
6089             <param name="pdbReaderProvider">
6090             If successful, a new instance of <see cref="T:System.Reflection.Metadata.MetadataReaderProvider"/> to be used to read the Portable PDB,.
6091             </param>
6092             <param name="pdbPath">
6093             If successful and the PDB is found in a file, the path to the file. Returns <c>null</c> if the PDB is embedded in the PE image itself.
6094             </param>
6095             <returns>
6096             True if the PE image has a PDB associated with it and the PDB has been successfully opened.
6097             </returns>
6098             <remarks>
6099             Implements a simple PDB file lookup based on the content of the PE image Debug Directory.
6100             A sophisticated tool might need to follow up with additional lookup on search paths or symbol server.
6101             
6102             The method looks the PDB up in the following steps in the listed order:
6103             1) Check for a matching PDB file of the name found in the CodeView entry in the directory containing the PE file (the directory of <paramref name="peImagePath"/>).
6104             2) Check for a PDB embedded in the PE image itself.
6105             
6106             The first PDB that matches the information specified in the Debug Directory is returned.
6107             </remarks>
6108             <exception cref="T:System.ArgumentNullException"><paramref name="peImagePath"/> or <paramref name="pdbFileStreamProvider"/> is null.</exception>
6109             <exception cref="T:System.InvalidOperationException">The stream returned from <paramref name="pdbFileStreamProvider"/> doesn't support read and seek operations.</exception>
6110             <exception cref="T:System.BadImageFormatException">No matching PDB file is found due to an error: The PE image or the PDB is invalid.</exception>
6111             <exception cref="T:System.IO.IOException">No matching PDB file is found due to an error: An IO error occurred while reading the PE image or the PDB.</exception>
6112         </member>
6113         <member name="F:System.Reflection.PortableExecutable.PEStreamOptions.Default">
6114             <summary>
6115             By default the stream is disposed when <see cref="T:System.Reflection.PortableExecutable.PEReader"/> is disposed and sections of the PE image are read lazily.
6116             </summary>
6117         </member>
6118         <member name="F:System.Reflection.PortableExecutable.PEStreamOptions.LeaveOpen">
6119             <summary>
6120             Keep the stream open when the <see cref="T:System.Reflection.PortableExecutable.PEReader"/> is disposed.
6121             </summary>
6122         </member>
6123         <member name="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchMetadata">
6124             <summary>
6125             Reads metadata section into memory right away. 
6126             </summary>
6127             <remarks>
6128             Reading from other sections of the file is not allowed (<see cref="T:System.InvalidOperationException"/> is thrown by the <see cref="T:System.Reflection.PortableExecutable.PEReader"/>).
6129             The underlying file may be closed and even deleted after <see cref="T:System.Reflection.PortableExecutable.PEReader"/> is constructed.
6130             
6131             <see cref="T:System.Reflection.PortableExecutable.PEReader"/> closes the stream automatically by the time the constructor returns unless <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.LeaveOpen"/> is specified.
6132             </remarks>
6133         </member>
6134         <member name="F:System.Reflection.PortableExecutable.PEStreamOptions.PrefetchEntireImage">
6135             <summary>
6136             Reads the entire image into memory right away. 
6137             </summary>
6138             <remarks>
6139             <see cref="T:System.Reflection.PortableExecutable.PEReader"/> closes the stream automatically by the time the constructor returns unless <see cref="F:System.Reflection.PortableExecutable.PEStreamOptions.LeaveOpen"/> is specified.
6140             </remarks>
6141         </member>
6142         <member name="F:System.Reflection.PortableExecutable.PEStreamOptions.IsLoadedImage">
6143             <summary>
6144             Indicates that the underlying PE image has been loaded into memory by the OS loader.
6145             </summary>
6146         </member>
6147         <member name="P:System.Reflection.PortableExecutable.SectionHeader.Name">
6148             <summary>
6149             The name of the section.
6150             </summary>
6151         </member>
6152         <member name="P:System.Reflection.PortableExecutable.SectionHeader.VirtualSize">
6153             <summary>
6154             The total size of the section when loaded into memory. 
6155             If this value is greater than <see cref="P:System.Reflection.PortableExecutable.SectionHeader.SizeOfRawData"/>, the section is zero-padded. 
6156             This field is valid only for PE images and should be set to zero for object files.
6157             </summary>
6158         </member>
6159         <member name="P:System.Reflection.PortableExecutable.SectionHeader.VirtualAddress">
6160             <summary>
6161             For PE images, the address of the first byte of the section relative to the image base when the 
6162             section is loaded into memory. For object files, this field is the address of the first byte before
6163             relocation is applied; for simplicity, compilers should set this to zero. Otherwise, 
6164             it is an arbitrary value that is subtracted from offsets during relocation.
6165             </summary>
6166         </member>
6167         <member name="P:System.Reflection.PortableExecutable.SectionHeader.SizeOfRawData">
6168             <summary>
6169             The size of the section (for object files) or the size of the initialized data on disk (for image files).
6170             For PE images, this must be a multiple of <see cref="P:System.Reflection.PortableExecutable.PEHeader.FileAlignment"/>.
6171             If this is less than <see cref="P:System.Reflection.PortableExecutable.SectionHeader.VirtualSize"/>, the remainder of the section is zero-filled. 
6172             Because the <see cref="P:System.Reflection.PortableExecutable.SectionHeader.SizeOfRawData"/> field is rounded but the <see cref="P:System.Reflection.PortableExecutable.SectionHeader.VirtualSize"/> field is not, 
6173             it is possible for <see cref="P:System.Reflection.PortableExecutable.SectionHeader.SizeOfRawData"/> to be greater than <see cref="P:System.Reflection.PortableExecutable.SectionHeader.VirtualSize"/> as well.
6174              When a section contains only uninitialized data, this field should be zero.
6175             </summary>
6176         </member>
6177         <member name="P:System.Reflection.PortableExecutable.SectionHeader.PointerToRawData">
6178             <summary>
6179             The file pointer to the first page of the section within the COFF file. 
6180             For PE images, this must be a multiple of <see cref="P:System.Reflection.PortableExecutable.PEHeader.FileAlignment"/>. 
6181             For object files, the value should be aligned on a 4 byte boundary for best performance. 
6182             When a section contains only uninitialized data, this field should be zero.
6183             </summary>
6184         </member>
6185         <member name="P:System.Reflection.PortableExecutable.SectionHeader.PointerToRelocations">
6186             <summary>
6187             The file pointer to the beginning of relocation entries for the section.
6188             This is set to zero for PE images or if there are no relocations.
6189             </summary>
6190         </member>
6191         <member name="P:System.Reflection.PortableExecutable.SectionHeader.PointerToLineNumbers">
6192             <summary>
6193             The file pointer to the beginning of line-number entries for the section. 
6194             This is set to zero if there are no COFF line numbers. 
6195             This value should be zero for an image because COFF debugging information is deprecated.
6196             </summary>
6197         </member>
6198         <member name="P:System.Reflection.PortableExecutable.SectionHeader.NumberOfRelocations">
6199             <summary>
6200             The number of relocation entries for the section. This is set to zero for PE images.
6201             </summary>
6202         </member>
6203         <member name="P:System.Reflection.PortableExecutable.SectionHeader.NumberOfLineNumbers">
6204             <summary>
6205             The number of line-number entries for the section.
6206              This value should be zero for an image because COFF debugging information is deprecated.
6207             </summary>
6208         </member>
6209         <member name="P:System.Reflection.PortableExecutable.SectionHeader.SectionCharacteristics">
6210             <summary>
6211             The flags that describe the characteristics of the section. 
6212             </summary>
6213         </member>
6214         <member name="F:System.Reflection.MethodSemanticsAttributes.Setter">
6215             <summary>
6216             Used to modify the value of the property.
6217             CLS-compliant setters are named with set_ prefix.
6218             </summary>
6219         </member>
6220         <member name="F:System.Reflection.MethodSemanticsAttributes.Getter">
6221             <summary>
6222             Used to read the value of the property.
6223             CLS-compliant getters are named with get_ prefix.
6224             </summary>
6225         </member>
6226         <member name="F:System.Reflection.MethodSemanticsAttributes.Other">
6227             <summary>
6228             Other method for property (not getter or setter) or event (not adder, remover, or raiser).
6229             </summary>
6230         </member>
6231         <member name="F:System.Reflection.MethodSemanticsAttributes.Adder">
6232             <summary>
6233             Used to add a handler for an event.
6234             Corresponds to the AddOn flag in the Ecma 335 CLI specification.
6235             CLS-compliant adders are named with add_ prefix.
6236             </summary>
6237         </member>
6238         <member name="F:System.Reflection.MethodSemanticsAttributes.Remover">
6239             <summary>
6240             Used to remove a handler for an event.
6241             Corresponds to the RemoveOn flag in the Ecma 335 CLI specification.
6242             CLS-compliant removers are named with remove_ prefix.
6243             </summary>
6244         </member>
6245         <member name="F:System.Reflection.MethodSemanticsAttributes.Raiser">
6246             <summary>
6247             Used to indicate that an event has occurred.
6248             Corresponds to the Fire flag in the Ecma 335 CLI specification.
6249             CLS-compliant raisers are named with raise_ prefix.
6250             </summary>
6251         </member>
6252         <member name="T:System.Reflection.DeclarativeSecurityAction">
6253             <summary>
6254             Specifies the security actions that can be performed using declarative security.
6255             </summary>
6256         </member>
6257         <member name="F:System.Reflection.DeclarativeSecurityAction.None">
6258             <summary>
6259             No declarative security action.
6260             </summary>
6261         </member>
6262         <member name="F:System.Reflection.DeclarativeSecurityAction.Demand">
6263             <summary>
6264             Check that all callers in the call chain have been granted specified permission,
6265             </summary>
6266         </member>
6267         <member name="F:System.Reflection.DeclarativeSecurityAction.Assert">
6268             <summary>
6269             The calling code can access the resource identified by the current permission object, even if callers higher in the stack have not been granted permission to access the resource.
6270             </summary>
6271         </member>
6272         <member name="F:System.Reflection.DeclarativeSecurityAction.Deny">
6273             <summary>
6274             Without further checks refuse Demand for the specified permission.
6275             </summary>
6276         </member>
6277         <member name="F:System.Reflection.DeclarativeSecurityAction.PermitOnly">
6278             <summary>
6279             Without further checks, refuse Demand for all permissions other than those specified.
6280             </summary>
6281         </member>
6282         <member name="F:System.Reflection.DeclarativeSecurityAction.LinkDemand">
6283             <summary>
6284             Check that the immediate caller has been granted the specified permission;
6285             </summary>
6286         </member>
6287         <member name="F:System.Reflection.DeclarativeSecurityAction.InheritanceDemand">
6288             <summary>
6289             The derived class inheriting the class or overriding a method is required to have been granted the specified permission.
6290             </summary>
6291         </member>
6292         <member name="F:System.Reflection.DeclarativeSecurityAction.RequestMinimum">
6293             <summary>
6294             The request for the minimum permissions required for code to run. This action can only be used within the scope of the assembly.
6295             </summary>
6296         </member>
6297         <member name="F:System.Reflection.DeclarativeSecurityAction.RequestOptional">
6298             <summary>
6299             The request for additional permissions that are optional (not required to run). This request implicitly refuses all other permissions not specifically requested. This action can only be used within the scope of the assembly. 
6300             </summary>
6301         </member>
6302         <member name="F:System.Reflection.DeclarativeSecurityAction.RequestRefuse">
6303             <summary>
6304             The request that permissions that might be misused will not be granted to the calling code. This action can only be used within the scope of the assembly.
6305             </summary>
6306         </member>
6307         <member name="F:System.Reflection.ManifestResourceAttributes.Public">
6308             <summary>
6309             The Resource is exported from the Assembly
6310             </summary>
6311         </member>
6312         <member name="F:System.Reflection.ManifestResourceAttributes.Private">
6313             <summary>
6314             The Resource is not exported from the Assembly
6315             </summary>
6316         </member>
6317         <member name="F:System.Reflection.ManifestResourceAttributes.VisibilityMask">
6318             <summary>
6319             Masks just the visibility-related attributes.
6320             </summary>
6321         </member>
6322         <member name="T:System.Reflection.AssemblyHashAlgorithm">
6323             <summary>
6324             Specifies all the hash algorithms used for hashing assembly files and for generating the strong name.
6325             </summary>
6326         </member>
6327         <member name="F:System.Reflection.AssemblyHashAlgorithm.None">
6328             <summary>
6329             A mask indicating that there is no hash algorithm. If you specify None for a multi-module assembly, the common language runtime defaults to the SHA1 algorithm, since multi-module assemblies need to generate a hash.
6330             </summary>
6331         </member>
6332         <member name="F:System.Reflection.AssemblyHashAlgorithm.MD5">
6333             <summary>
6334             Retrieves the MD5 message-digest algorithm. MD5 was developed by Rivest in 1991. It is basically MD4 with safety-belts and while it is slightly slower than MD4, it helps provide more security. The algorithm consists of four distinct rounds, which has a slightly different design from that of MD4. Message-digest size, as well as padding requirements, remain the same.
6335             </summary>
6336         </member>
6337         <member name="F:System.Reflection.AssemblyHashAlgorithm.Sha1">
6338             <summary>
6339             Retrieves a revision of the Secure Hash Algorithm that corrects an unpublished flaw in SHA.
6340             </summary>
6341         </member>
6342         <member name="F:System.Reflection.AssemblyHashAlgorithm.Sha256">
6343             <summary>
6344             Retrieves a version of the Secure Hash Algorithm with a hash size of 256 bits.
6345             </summary>
6346         </member>
6347         <member name="F:System.Reflection.AssemblyHashAlgorithm.Sha384">
6348             <summary>
6349             Retrieves a version of the Secure Hash Algorithm with a hash size of 384 bits.
6350             </summary>
6351         </member>
6352         <member name="F:System.Reflection.AssemblyHashAlgorithm.Sha512">
6353             <summary>
6354             Retrieves a version of the Secure Hash Algorithm with a hash size of 512 bits.
6355             </summary>
6356         </member>
6357         <member name="F:System.Reflection.AssemblyFlags.PublicKey">
6358             <summary>
6359             The assembly reference holds the full (unhashed) public key.
6360             Not applicable on assembly definition.
6361             </summary>
6362         </member>
6363         <member name="F:System.Reflection.AssemblyFlags.Retargetable">
6364             <summary>
6365             The implementation of the referenced assembly used at runtime is not expected to match the version seen at compile time.
6366             </summary>
6367         </member>
6368         <member name="F:System.Reflection.AssemblyFlags.WindowsRuntime">
6369             <summary>
6370             The assembly contains Windows Runtime code.
6371             </summary>
6372         </member>
6373         <member name="F:System.Reflection.AssemblyFlags.ContentTypeMask">
6374             <summary>
6375             Content type mask. Masked bits correspond to values of <see cref="T:System.Reflection.AssemblyContentType"/>.
6376             </summary>
6377         </member>
6378         <member name="F:System.Reflection.AssemblyFlags.DisableJitCompileOptimizer">
6379             <summary>
6380             Specifies that just-in-time (JIT) compiler optimization is disabled for the assembly.
6381             </summary>
6382         </member>
6383         <member name="F:System.Reflection.AssemblyFlags.EnableJitCompileTracking">
6384             <summary>
6385             Specifies that just-in-time (JIT) compiler tracking is enabled for the assembly.
6386             </summary>
6387         </member>
6388     </members>
6389 </doc>