Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / clr / src / BCL / System / Reflection / Emit / MethodBuilderInstantiation.cs / 1 / MethodBuilderInstantiation.cs
using System; using System.Reflection; using System.Reflection.Emit; using System.Collections; using System.Globalization; namespace System.Reflection.Emit { internal sealed class MethodBuilderInstantiation : MethodInfo { #region Static Members internal static MethodInfo MakeGenericMethod(MethodInfo method, Type[] inst) { if (!method.IsGenericMethodDefinition) throw new InvalidOperationException(); return new MethodBuilderInstantiation(method, inst); } #endregion #region Private Data Mebers internal MethodInfo m_method; private Type[] m_inst; #endregion #region Constructor internal MethodBuilderInstantiation(MethodInfo method, Type[] inst) { m_method = method; m_inst = inst; } #endregion internal override Type[] GetParameterTypes() { return m_method.GetParameterTypes(); } #region MemberBase public override MemberTypes MemberType { get { return m_method.MemberType; } } public override String Name { get { return m_method.Name; } } public override Type DeclaringType { get { return m_method.DeclaringType; } } public override Type ReflectedType { get { return m_method.ReflectedType; } } public override Object[] GetCustomAttributes(bool inherit) { return m_method.GetCustomAttributes(inherit); } public override Object[] GetCustomAttributes(Type attributeType, bool inherit) { return m_method.GetCustomAttributes(attributeType, inherit); } public override bool IsDefined(Type attributeType, bool inherit) { return m_method.IsDefined(attributeType, inherit); } internal override int MetadataTokenInternal { get { throw new NotSupportedException(); } } public override Module Module { get { return m_method.Module; } } public new Type GetType() { return base.GetType(); } #endregion #region MethodBase Members public override ParameterInfo[] GetParameters() { throw new NotSupportedException(); } public override MethodImplAttributes GetMethodImplementationFlags() { return m_method.GetMethodImplementationFlags(); } public override RuntimeMethodHandle MethodHandle { get { throw new NotSupportedException(Environment.GetResourceString("NotSupported_DynamicModule")); } } public override MethodAttributes Attributes { get { return m_method.Attributes; } } public override Object Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) { throw new NotSupportedException(); } public override CallingConventions CallingConvention { get { return m_method.CallingConvention; } } public override Type[] GetGenericArguments() { return m_inst; } public override MethodInfo GetGenericMethodDefinition() { return m_method; } public override bool IsGenericMethodDefinition { get { return false; } } public override bool ContainsGenericParameters { get { for (int i = 0; i < m_inst.Length; i++) { if (m_inst[i].ContainsGenericParameters) return true; } if (DeclaringType != null && DeclaringType.ContainsGenericParameters) return true; return false; } } public override MethodInfo MakeGenericMethod(params Type[] arguments) { throw new InvalidOperationException(Environment.GetResourceString("Arg_NotGenericMethodDefinition")); } public override bool IsGenericMethod { get { return true; } } #endregion #region Public Abstract\Virtual Members internal override Type GetReturnType() { return m_method.GetReturnType(); } public override ParameterInfo ReturnParameter { get { throw new NotSupportedException(); } } public override ICustomAttributeProvider ReturnTypeCustomAttributes { get { throw new NotSupportedException(); } } public override MethodInfo GetBaseDefinition() { throw new NotSupportedException(); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Reflection; using System.Reflection.Emit; using System.Collections; using System.Globalization; namespace System.Reflection.Emit { internal sealed class MethodBuilderInstantiation : MethodInfo { #region Static Members internal static MethodInfo MakeGenericMethod(MethodInfo method, Type[] inst) { if (!method.IsGenericMethodDefinition) throw new InvalidOperationException(); return new MethodBuilderInstantiation(method, inst); } #endregion #region Private Data Mebers internal MethodInfo m_method; private Type[] m_inst; #endregion #region Constructor internal MethodBuilderInstantiation(MethodInfo method, Type[] inst) { m_method = method; m_inst = inst; } #endregion internal override Type[] GetParameterTypes() { return m_method.GetParameterTypes(); } #region MemberBase public override MemberTypes MemberType { get { return m_method.MemberType; } } public override String Name { get { return m_method.Name; } } public override Type DeclaringType { get { return m_method.DeclaringType; } } public override Type ReflectedType { get { return m_method.ReflectedType; } } public override Object[] GetCustomAttributes(bool inherit) { return m_method.GetCustomAttributes(inherit); } public override Object[] GetCustomAttributes(Type attributeType, bool inherit) { return m_method.GetCustomAttributes(attributeType, inherit); } public override bool IsDefined(Type attributeType, bool inherit) { return m_method.IsDefined(attributeType, inherit); } internal override int MetadataTokenInternal { get { throw new NotSupportedException(); } } public override Module Module { get { return m_method.Module; } } public new Type GetType() { return base.GetType(); } #endregion #region MethodBase Members public override ParameterInfo[] GetParameters() { throw new NotSupportedException(); } public override MethodImplAttributes GetMethodImplementationFlags() { return m_method.GetMethodImplementationFlags(); } public override RuntimeMethodHandle MethodHandle { get { throw new NotSupportedException(Environment.GetResourceString("NotSupported_DynamicModule")); } } public override MethodAttributes Attributes { get { return m_method.Attributes; } } public override Object Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) { throw new NotSupportedException(); } public override CallingConventions CallingConvention { get { return m_method.CallingConvention; } } public override Type[] GetGenericArguments() { return m_inst; } public override MethodInfo GetGenericMethodDefinition() { return m_method; } public override bool IsGenericMethodDefinition { get { return false; } } public override bool ContainsGenericParameters { get { for (int i = 0; i < m_inst.Length; i++) { if (m_inst[i].ContainsGenericParameters) return true; } if (DeclaringType != null && DeclaringType.ContainsGenericParameters) return true; return false; } } public override MethodInfo MakeGenericMethod(params Type[] arguments) { throw new InvalidOperationException(Environment.GetResourceString("Arg_NotGenericMethodDefinition")); } public override bool IsGenericMethod { get { return true; } } #endregion #region Public Abstract\Virtual Members internal override Type GetReturnType() { return m_method.GetReturnType(); } public override ParameterInfo ReturnParameter { get { throw new NotSupportedException(); } } public override ICustomAttributeProvider ReturnTypeCustomAttributes { get { throw new NotSupportedException(); } } public override MethodInfo GetBaseDefinition() { throw new NotSupportedException(); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CriticalFinalizerObject.cs
- WindowsHyperlink.cs
- PersonalizableTypeEntry.cs
- SafeArrayTypeMismatchException.cs
- CacheOutputQuery.cs
- PopOutPanel.cs
- ToolStripButton.cs
- StackSpiller.Generated.cs
- FigureParaClient.cs
- NewItemsContextMenuStrip.cs
- ToggleButton.cs
- CustomValidator.cs
- WebControlAdapter.cs
- FormsAuthenticationUserCollection.cs
- DynamicResourceExtension.cs
- SplashScreen.cs
- FactoryGenerator.cs
- KernelTypeValidation.cs
- WebPartMenu.cs
- PackWebRequestFactory.cs
- MatrixTransform3D.cs
- EndpointInstanceProvider.cs
- assemblycache.cs
- ColumnMap.cs
- Expander.cs
- OperationAbortedException.cs
- PackageStore.cs
- ConfigurationSectionCollection.cs
- CodeThrowExceptionStatement.cs
- Quaternion.cs
- StrokeIntersection.cs
- RequestCachingSection.cs
- MapPathBasedVirtualPathProvider.cs
- PathFigure.cs
- XmlNullResolver.cs
- LinqDataSourceHelper.cs
- EdmValidator.cs
- ListBase.cs
- InvokeProviderWrapper.cs
- DtdParser.cs
- ClientWindowsAuthenticationMembershipProvider.cs
- WebPartConnectionsCloseVerb.cs
- SpecularMaterial.cs
- CatalogZoneBase.cs
- ReadOnlyDataSource.cs
- TextTreeRootNode.cs
- PrefixQName.cs
- HMACMD5.cs
- JpegBitmapDecoder.cs
- SqlDataReaderSmi.cs
- TextViewSelectionProcessor.cs
- LinkConverter.cs
- CodeMethodReturnStatement.cs
- SymLanguageVendor.cs
- ListViewInsertionMark.cs
- ResourcesChangeInfo.cs
- IndexOutOfRangeException.cs
- PropertyCollection.cs
- SiteMapNodeItem.cs
- DispatcherExceptionEventArgs.cs
- SspiSafeHandles.cs
- TrackingProfileCache.cs
- ToolStripControlHost.cs
- EntityDataSourceQueryBuilder.cs
- DesigntimeLicenseContext.cs
- SqlInternalConnectionSmi.cs
- ColumnReorderedEventArgs.cs
- TableRow.cs
- KerberosTicketHashIdentifierClause.cs
- InkSerializer.cs
- ArrayMergeHelper.cs
- QueryOpcode.cs
- AutoResetEvent.cs
- ArgumentException.cs
- ArgumentNullException.cs
- PieceDirectory.cs
- CompilerState.cs
- Panel.cs
- BindingElementCollection.cs
- EmptyStringExpandableObjectConverter.cs
- HatchBrush.cs
- OracleColumn.cs
- TextShapeableCharacters.cs
- TextEndOfSegment.cs
- BinaryObjectWriter.cs
- RsaSecurityToken.cs
- PostBackTrigger.cs
- GcHandle.cs
- UnmanagedBitmapWrapper.cs
- Context.cs
- IndexedEnumerable.cs
- TextElementCollectionHelper.cs
- Int32Storage.cs
- PropertyEntry.cs
- Utils.cs
- FamilyTypefaceCollection.cs
- ColorAnimation.cs
- XMLDiffLoader.cs
- DataRowView.cs
- MatrixTransform3D.cs