示例#1
0
        /// <summary>
        /// Writes the method impl table.
        /// </summary>
        /// <param name="metadataSource">The metadata source.</param>
        /// <param name="metadataWriter">The metadata writer.</param>
        private static void WriteMethodImplTable(IMetadataProvider metadataSource, MetadataBuilderStage metadataWriter)
        {
            MethodImplRow row;

            WriteTable(TokenTypes.MethodImpl, metadataSource, token =>
            {
                metadataSource.Read(token, out row);

                metadataWriter.Write(row.ClassTableIdx);
                metadataWriter.WriteMethodDefOrRefIndex(row.MethodBodyTableIdx);
                metadataWriter.WriteMethodDefOrRefIndex(row.MethodDeclarationTableIdx);
            });
        }
示例#2
0
        /// <summary>
        /// Writes the method spec table.
        /// </summary>
        /// <param name="metadataSource">The metadata source.</param>
        /// <param name="metadataWriter">The metadata writer.</param>
        private static void WriteMethodSpecTable(IMetadataProvider metadataSource, MetadataBuilderStage metadataWriter)
        {
            MethodSpecRow row;

            WriteTable(TokenTypes.MethodSpec, metadataSource, token =>
            {
                metadataSource.Read(token, out row);

                metadataWriter.WriteMethodDefOrRefIndex(row.MethodTableIdx);
                metadataWriter.Write(row.InstantiationBlobIdx);
            });
        }
        /// <summary>
        /// Writes the method spec table.
        /// </summary>
        /// <param name="metadataSource">The metadata source.</param>
        /// <param name="metadataWriter">The metadata writer.</param>
        private static void WriteMethodSpecTable(IMetadataProvider metadataSource, MetadataBuilderStage metadataWriter)
        {
            MethodSpecRow row;

            WriteTable(TokenTypes.MethodSpec, metadataSource, token =>
            {
                metadataSource.Read(token, out row);

                metadataWriter.WriteMethodDefOrRefIndex(row.MethodTableIdx);
                metadataWriter.Write(row.InstantiationBlobIdx);
            });
        }
        /// <summary>
        /// Writes the method impl table.
        /// </summary>
        /// <param name="metadataSource">The metadata source.</param>
        /// <param name="metadataWriter">The metadata writer.</param>
        private static void WriteMethodImplTable(IMetadataProvider metadataSource, MetadataBuilderStage metadataWriter)
        {
            MethodImplRow row;

            WriteTable(TokenTypes.MethodImpl, metadataSource, token =>
            {
                metadataSource.Read(token, out row);

                metadataWriter.Write(row.ClassTableIdx);
                metadataWriter.WriteMethodDefOrRefIndex(row.MethodBodyTableIdx);
                metadataWriter.WriteMethodDefOrRefIndex(row.MethodDeclarationTableIdx);
            });
        }