Commit 51ba273a authored by Mehmet Umut Kürtül's avatar Mehmet Umut Kürtül
Browse files

Initial commit

parents
Copyright (c) .NET Foundation and Contributors
All Rights Reserved
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.
"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:
You must give any other recipients of the Work or Derivative Works a copy of this License; and
You must cause any modified files to carry prominent notices stating that You changed the files; and
You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.
You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
Dynamic Language Runtime
========================
The Dynamic Language Runtime enables language developers to more easily create dynamic languages for the .NET platform. In addition to being a pluggable back-end for dynamic language compilers, the DLR provides language interop for dynamic operations on objects. The DLR has common hosting APIs for using dynamic languages as libraries or for scripting in your .NET applications.
| **What?** | **Where?** |
| --------: | :------------: |
| **Windows/Linux/macOS Builds** | [![Build status](https://dotnet.visualstudio.com/IronLanguages/_apis/build/status/DLR)](https://dotnet.visualstudio.com/IronLanguages/_build/latest?definitionId=41) [![Github build status](https://github.com/IronLanguages/dlr/workflows/CI/badge.svg)](https://github.com/IronLanguages/dlr/actions?workflow=CI) |
| **Downloads** | [![NuGet](https://img.shields.io/nuget/v/DynamicLanguageRuntime.svg)](https://www.nuget.org/packages/DynamicLanguageRuntime/) [![Release](https://img.shields.io/github/release/IronLanguages/dlr.svg)](https://github.com/IronLanguages/dlr/releases/latest)|
| **Help** | [![Gitter chat](https://badges.gitter.im/IronLanguages/ironpython.svg)](https://gitter.im/IronLanguages/ironpython) [![StackExchange](https://img.shields.io/stackexchange/stackoverflow/t/dynamic-language-runtime.svg)](http://stackoverflow.com/questions/tagged/dynamic-language-runtime) |
Code of Conduct
---------------
This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community.
For more information see the [.NET Foundation Code of Conduct](https://dotnetfoundation.org/code-of-conduct).
Installation
------------
The best way to install the DLR is through the NuGet DynamicLanguageRuntime package.
Documentation
-------------
The best current documentation is in the Docs/ directory, in Word and PDF format (it *was* a Microsoft project, after all).
Help
----
If you have any questions, [open an issue](https://github.com/IronLanguages/dlr/issues/new), even if it's not an actual bug. The issues are an acceptable discussion forum as well.
History
-------
The original DLR site is at [CodePlex](http://dlr.codeplex.com). The DLR was part of a much larger repository containing IronPython and IronRuby as well; you can find it at the [main](https://github.com/IronLanguages/main) repository. This is a smaller repository containing just the DLR, which makes it easier to package and should make it easier to do more regular releases.
Build
-----
You will need to have Visual Studio 2019 16.4.0 or later installed on your machine.
On Windows machines, start a Visual Studio command prompt and type:
> make
On Unix machines, make sure Mono is installed and in the PATH, and type:
$ make
Since the main development is on Windows, Mono bugs may inadvertantly be introduced
- please report them!
This source diff could not be displayed because it is too large. You can view the blob instead.
<?xml version="1.0"?>
<doc>
<assembly>
<name>Microsoft.Scripting.Metadata</name>
</assembly>
<members>
<member name="T:Microsoft.Scripting.Metadata.MemoryBlock">
<summary>
Represents a block in memory.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.MemoryReader">
<summary>
Reads data from a memory block. Maintains a position.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MemoryReader.ReadAscii(System.Int32)">
<summary>
Reads zero terminated sequence of bytes of given maximal length and converts it into an ASCII string.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.MetadataName">
<summary>
Zero terminated, UTF8 encoded sequence of bytes representing a name in metadata (a type name, a member name, etc).
The name is bound to the module it was retrieved from. The module is kept alive until all its metadata names are collected.
Doesn't cache hashcode, byte or character count.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MetadataTables.Module">
<summary>
Gets the module whose metadata tables this instance represents.
Null if the tables reflect unloaded module file.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MetadataTables.Path">
<summary>
Gets the path of the module whose metadata tables this instance represents.
Null for in-memory modules that are not backed by a file.
</summary>
<exception cref="T:System.Security.SecurityException">The path is not accessible in partial trust.</exception>
</member>
<member name="P:Microsoft.Scripting.Metadata.MetadataTables.AssemblyDef">
<summary>
Returns AssemblyDef for manifest modules, null token otherwise.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MetadataRecord.IsValid">
<summary>
Token is null or represents a row in a metadata table.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MetadataTableView.GetCount">
<summary>
Gets the number of records in the view.
If the view is over an entire table this operation is O(1),
otherwise it might take up to O(log(#records in the table)).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.ModuleDef">
<summary>
Module table entry (0x00 tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.TypeRef">
<summary>
TypeRef table entry (0x01 tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.TypeRef.ResolutionScope">
<summary>
AssemblyRef:
If the target type is defined in a different Assembly from the current module.
TypeRef:
Target type is nested in TypeRef.
ModuleRef:
Target type is defined in another module within the same Assembly as this one.
ModuleDef:
If the target type is defined in the current module (this should not occur in a CLI "compressed metadata" module).
Null token:
There shall be a row in the ExportedType table for this Type - its Implementation field shall contain
a File token or an AssemblyRef token that says where the type is defined.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.TypeDef">
<summary>
TypeDef table entry (0x02 tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.TypeDef.Attributes">
<summary>
Flags field in TypeDef table.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.TypeDef.FindDeclaringType">
<summary>
Finds a nesting type-def. The search time is logarithmic in the number of nested types defined in the owning module.
Returns a null token if this is not a nested type-def.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.TypeDef.GetGenericParameterCount">
<summary>
O(log(#generic parameters in module))
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.TypeDef.IsGlobal">
<summary>
This typedef represents a container of global functions and fields (manufactured &lt;Module&gt; type).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.FieldDef">
<summary>
Combines Field (0x04 tokens), FieldRVA (0x1d tokens) and Constant (0x0B) table entries.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.FieldDef.Attributes">
<summary>
Flags field in the Field table.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.FieldDef.GetDefaultValue">
<summary>
O(log(#fields, parameters and properties with default value)).
Returns <see cref="F:System.Reflection.Missing.Value"/> if the field doesn't have a default value.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.FieldDef.GetData(System.Int32)">
<summary>
Returns null reference iff the field has no RVA.
If size is 0 the memory block will span over the rest of the data section.
O(log(#fields with RVAs)).
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.FieldDef.FindDeclaringType">
<summary>
Finds type-def that declares this field. The search time is logarithmic in the number of types defined in the owning module.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.MethodDef">
<summary>
MethodDef table entry (0x06 tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MethodDef.ImplAttributes">
<summary>
ImplFlags field in the MethodDef table.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MethodDef.Attributes">
<summary>
Flags field in the MethodDef table.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MethodDef.GetBody">
<summary>
Returns a null reference iff the method has no body.
If size is 0 the memory block will span over the rest of the data section.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MethodDef.FindDeclaringType">
<summary>
Finds type-def that declares this method. The search time is logarithmic in the number of types defined in the owning module.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MethodDef.GetGenericParameterCount">
<summary>
O(log(#generic parameters in module))
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.ParamDef">
<summary>
Param table entry (0x08 tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.ParamDef.Index">
<summary>
Value greater or equal to zero and less than or equal to the number of parameters in owner method.
A value of 0 refers to the owner method's return type; its parameters are then numbered from 1 onwards.
Not all parameters need to have a corresponding ParamDef entry.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.ParamDef.GetDefaultValue">
<summary>
O(log(#fields, parameters and properties with default value)).
Returns <see cref="F:System.Reflection.Missing.Value"/> if the field doesn't have a default value.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.ParamDef.FindDeclaringMethod">
<summary>
Binary searches MethodDef table for a method that declares this parameter.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.InterfaceImpl">
<summary>
InterfaceImpl table entry (0x09 tokens).
TODO: we might not need this - TypeDef.ImplementedInterfaces might be a special enumerator that directly returns InterfaceType tokens.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.InterfaceImpl.ImplementingType">
<summary>
Could be a null token in EnC scenarios.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.InterfaceImpl.InterfaceType">
<summary>
TypeDef, TypeRef, or TypeSpec.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.MemberRef">
<summary>
MemberRef table entry (0x0A tokens).
Stores MethodRefs and FieldRefs.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MemberRef.Class">
<summary>
TypeRef or TypeDef:
If the class that defines the member is defined in another module.
Note that it is unusual, but valid, to use a TypeRef token when the member is defined in this same module,
in which case, its TypeDef token can be used instead.
ModuleRef:
If the member is defined, in another module of the same assembly, as a global function or variable.
MethodDef:
When used to supply a call-site signature for a vararg method that is defined in this module.
The Name shall match the Name in the corresponding MethodDef row.
The Signature shall match the Signature in the target method definition
TypeSpec:
If the member is a member of a generic type
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.CustomAttributeDef">
<summary>
CustomAttribute table entry (0x0C tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.CustomAttributeDef.Parent">
<summary>
Any token except the CustomAttribute.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.CustomAttributeDef.Constructor">
<summary>
Returns the value of Type column in the CustomAttribute table.
MethodDef or MemberRef.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.CustomAttributeDef.Value">
<summary>
Value blob.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.SignatureDef">
<summary>
StandAloneSig table entry (0x11 token).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.PropertyDef">
<summary>
Combines information from PropertyMap (0x15), MethodSemantics (0x18) and Property (0x17) tables.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.PropertyDef.GetDefaultValue">
<summary>
O(log(#fields, parameters and properties with default value)).
Returns <see cref="F:System.Reflection.Missing.Value"/> if the field doesn't have a default value.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.PropertyDef.FindDeclaringType">
<summary>
Finds type-def that declares this property. The search time is logarithmic in the number of types with properties defined in the owning module.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.EventDef">
<summary>
Combines information from EventMap (0x15), MethodSemantics (0x18) and Event (0x17) tables.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.EventDef.FindDeclaringType">
<summary>
Finds type-def that declares this event. The search time is logarithmic in the number of types with events defined in the owning module.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.ModuleRef">
<summary>
ModuleRef table entry (0x1A tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.TypeSpec">
<summary>
TypeSpec table entry (0x1B tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.AssemblyDef">
<summary>
Assembly table entry (0x20 tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.AssemblyRef">
<summary>
Assembly table entry (0x23 tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.FileDef">
<summary>
File table entry (0x26 tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.TypeExport">
<summary>
ExportedType table entry (0x27 tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.TypeExport.Implementation">
<summary>
Forwarded type: AssemblyRef
Nested types: ExportedType
Type in another module of this assembly: FileDef
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.ManifestResourceDef">
<summary>
ManifestResource table entry (0x28 tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.TypeNesting">
<summary>
NestedClass table entry (0x29 tokens).
TODO: Don't need if we exposed nested types enumeration on type-def directly and build TypeNesting mapping lazily.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.GenericParamDef">
<summary>
GenericParam table entry (0x2A tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.GenericParamDef.Index">
<summary>
Value greater or equal to zero and less than or equal to the number of parameters in owner method/type.
All generic parameters are listed in the table.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.GenericParamDef.Owner">
<summary>
TypeDef or MethodDef.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.GenericParamConstraint">
<summary>
GenericParamConstraint table entry (0x2C tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.GenericParamConstraint.Constraint">
<summary>
TypeDef, TypeRef, or TypeSpec.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.MethodSpec">
<summary>
MethodSpec table entry (0x2B tokens).
Used when decoding IL instructions.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MethodSpec.GenericMethod">
<summary>
MethodDef or MethodRef.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MetadataToken.#ctor(System.Int32)">
<summary>
We need to be able to construct tokens out of byte-code.
</summary>
</member>
</members>
</doc>
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
<?xml version="1.0"?>
<doc>
<assembly>
<name>Microsoft.Scripting.Metadata</name>
</assembly>
<members>
<member name="T:Microsoft.Scripting.Metadata.MemoryBlock">
<summary>
Represents a block in memory.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.MemoryReader">
<summary>
Reads data from a memory block. Maintains a position.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MemoryReader.ReadAscii(System.Int32)">
<summary>
Reads zero terminated sequence of bytes of given maximal length and converts it into an ASCII string.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.MetadataName">
<summary>
Zero terminated, UTF8 encoded sequence of bytes representing a name in metadata (a type name, a member name, etc).
The name is bound to the module it was retrieved from. The module is kept alive until all its metadata names are collected.
Doesn't cache hashcode, byte or character count.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MetadataTables.Module">
<summary>
Gets the module whose metadata tables this instance represents.
Null if the tables reflect unloaded module file.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MetadataTables.Path">
<summary>
Gets the path of the module whose metadata tables this instance represents.
Null for in-memory modules that are not backed by a file.
</summary>
<exception cref="T:System.Security.SecurityException">The path is not accessible in partial trust.</exception>
</member>
<member name="P:Microsoft.Scripting.Metadata.MetadataTables.AssemblyDef">
<summary>
Returns AssemblyDef for manifest modules, null token otherwise.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MetadataRecord.IsValid">
<summary>
Token is null or represents a row in a metadata table.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MetadataTableView.GetCount">
<summary>
Gets the number of records in the view.
If the view is over an entire table this operation is O(1),
otherwise it might take up to O(log(#records in the table)).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.ModuleDef">
<summary>
Module table entry (0x00 tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.TypeRef">
<summary>
TypeRef table entry (0x01 tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.TypeRef.ResolutionScope">
<summary>
AssemblyRef:
If the target type is defined in a different Assembly from the current module.
TypeRef:
Target type is nested in TypeRef.
ModuleRef:
Target type is defined in another module within the same Assembly as this one.
ModuleDef:
If the target type is defined in the current module (this should not occur in a CLI "compressed metadata" module).
Null token:
There shall be a row in the ExportedType table for this Type - its Implementation field shall contain
a File token or an AssemblyRef token that says where the type is defined.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.TypeDef">
<summary>
TypeDef table entry (0x02 tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.TypeDef.Attributes">
<summary>
Flags field in TypeDef table.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.TypeDef.FindDeclaringType">
<summary>
Finds a nesting type-def. The search time is logarithmic in the number of nested types defined in the owning module.
Returns a null token if this is not a nested type-def.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.TypeDef.GetGenericParameterCount">
<summary>
O(log(#generic parameters in module))
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.TypeDef.IsGlobal">
<summary>
This typedef represents a container of global functions and fields (manufactured &lt;Module&gt; type).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.FieldDef">
<summary>
Combines Field (0x04 tokens), FieldRVA (0x1d tokens) and Constant (0x0B) table entries.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.FieldDef.Attributes">
<summary>
Flags field in the Field table.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.FieldDef.GetDefaultValue">
<summary>
O(log(#fields, parameters and properties with default value)).
Returns <see cref="F:System.Reflection.Missing.Value"/> if the field doesn't have a default value.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.FieldDef.GetData(System.Int32)">
<summary>
Returns null reference iff the field has no RVA.
If size is 0 the memory block will span over the rest of the data section.
O(log(#fields with RVAs)).
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.FieldDef.FindDeclaringType">
<summary>
Finds type-def that declares this field. The search time is logarithmic in the number of types defined in the owning module.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.MethodDef">
<summary>
MethodDef table entry (0x06 tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MethodDef.ImplAttributes">
<summary>
ImplFlags field in the MethodDef table.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MethodDef.Attributes">
<summary>
Flags field in the MethodDef table.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MethodDef.GetBody">
<summary>
Returns a null reference iff the method has no body.
If size is 0 the memory block will span over the rest of the data section.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MethodDef.FindDeclaringType">
<summary>
Finds type-def that declares this method. The search time is logarithmic in the number of types defined in the owning module.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MethodDef.GetGenericParameterCount">
<summary>
O(log(#generic parameters in module))
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.ParamDef">
<summary>
Param table entry (0x08 tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.ParamDef.Index">
<summary>
Value greater or equal to zero and less than or equal to the number of parameters in owner method.
A value of 0 refers to the owner method's return type; its parameters are then numbered from 1 onwards.
Not all parameters need to have a corresponding ParamDef entry.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.ParamDef.GetDefaultValue">
<summary>
O(log(#fields, parameters and properties with default value)).
Returns <see cref="F:System.Reflection.Missing.Value"/> if the field doesn't have a default value.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.ParamDef.FindDeclaringMethod">
<summary>
Binary searches MethodDef table for a method that declares this parameter.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.InterfaceImpl">
<summary>
InterfaceImpl table entry (0x09 tokens).
TODO: we might not need this - TypeDef.ImplementedInterfaces might be a special enumerator that directly returns InterfaceType tokens.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.InterfaceImpl.ImplementingType">
<summary>
Could be a null token in EnC scenarios.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.InterfaceImpl.InterfaceType">
<summary>
TypeDef, TypeRef, or TypeSpec.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.MemberRef">
<summary>
MemberRef table entry (0x0A tokens).
Stores MethodRefs and FieldRefs.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MemberRef.Class">
<summary>
TypeRef or TypeDef:
If the class that defines the member is defined in another module.
Note that it is unusual, but valid, to use a TypeRef token when the member is defined in this same module,
in which case, its TypeDef token can be used instead.
ModuleRef:
If the member is defined, in another module of the same assembly, as a global function or variable.
MethodDef:
When used to supply a call-site signature for a vararg method that is defined in this module.
The Name shall match the Name in the corresponding MethodDef row.
The Signature shall match the Signature in the target method definition
TypeSpec:
If the member is a member of a generic type
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.CustomAttributeDef">
<summary>
CustomAttribute table entry (0x0C tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.CustomAttributeDef.Parent">
<summary>
Any token except the CustomAttribute.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.CustomAttributeDef.Constructor">
<summary>
Returns the value of Type column in the CustomAttribute table.
MethodDef or MemberRef.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.CustomAttributeDef.Value">
<summary>
Value blob.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.SignatureDef">
<summary>
StandAloneSig table entry (0x11 token).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.PropertyDef">
<summary>
Combines information from PropertyMap (0x15), MethodSemantics (0x18) and Property (0x17) tables.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.PropertyDef.GetDefaultValue">
<summary>
O(log(#fields, parameters and properties with default value)).
Returns <see cref="F:System.Reflection.Missing.Value"/> if the field doesn't have a default value.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.PropertyDef.FindDeclaringType">
<summary>
Finds type-def that declares this property. The search time is logarithmic in the number of types with properties defined in the owning module.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.EventDef">
<summary>
Combines information from EventMap (0x15), MethodSemantics (0x18) and Event (0x17) tables.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.EventDef.FindDeclaringType">
<summary>
Finds type-def that declares this event. The search time is logarithmic in the number of types with events defined in the owning module.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.ModuleRef">
<summary>
ModuleRef table entry (0x1A tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.TypeSpec">
<summary>
TypeSpec table entry (0x1B tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.AssemblyDef">
<summary>
Assembly table entry (0x20 tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.AssemblyRef">
<summary>
Assembly table entry (0x23 tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.FileDef">
<summary>
File table entry (0x26 tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.TypeExport">
<summary>
ExportedType table entry (0x27 tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.TypeExport.Implementation">
<summary>
Forwarded type: AssemblyRef
Nested types: ExportedType
Type in another module of this assembly: FileDef
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.ManifestResourceDef">
<summary>
ManifestResource table entry (0x28 tokens).
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.TypeNesting">
<summary>
NestedClass table entry (0x29 tokens).
TODO: Don't need if we exposed nested types enumeration on type-def directly and build TypeNesting mapping lazily.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.GenericParamDef">
<summary>
GenericParam table entry (0x2A tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.GenericParamDef.Index">
<summary>
Value greater or equal to zero and less than or equal to the number of parameters in owner method/type.
All generic parameters are listed in the table.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.GenericParamDef.Owner">
<summary>
TypeDef or MethodDef.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.GenericParamConstraint">
<summary>
GenericParamConstraint table entry (0x2C tokens).
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.GenericParamConstraint.Constraint">
<summary>
TypeDef, TypeRef, or TypeSpec.
</summary>
</member>
<member name="T:Microsoft.Scripting.Metadata.MethodSpec">
<summary>
MethodSpec table entry (0x2B tokens).
Used when decoding IL instructions.
</summary>
</member>
<member name="P:Microsoft.Scripting.Metadata.MethodSpec.GenericMethod">
<summary>
MethodDef or MethodRef.
</summary>
</member>
<member name="M:Microsoft.Scripting.Metadata.MetadataToken.#ctor(System.Int32)">
<summary>
We need to be able to construct tokens out of byte-code.
</summary>
</member>
</members>
</doc>
  • Glad to have the trusted blogging updates for the people who need the help about coding easily grab it here. I’m sure the information on https://bestwritingsclues.com/reviews/elitewritings-review/ blog quite updated and we able to learn something new. Thanks for the wise recommendation keep posting such trusted updates here.

Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment