Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- InfoCardSymmetricCrypto.cs
- TraceInternal.cs
- TableCell.cs
- ResourceProperty.cs
- TemplatedAdorner.cs
- CLRBindingWorker.cs
- JsonServiceDocumentSerializer.cs
- AggregationMinMaxHelpers.cs
- ZoneLinkButton.cs
- ListDictionary.cs
- CompiledELinqQueryState.cs
- BitmapEncoder.cs
- XmlSerializationReader.cs
- AccessViolationException.cs
- FacetValueContainer.cs
- AdapterUtil.cs
- Message.cs
- CompilationSection.cs
- SessionPageStatePersister.cs
- WebPartCollection.cs
- Storyboard.cs
- Menu.cs
- EFAssociationProvider.cs
- MissingFieldException.cs
- TreeIterator.cs
- SqlClientWrapperSmiStreamChars.cs
- Opcode.cs
- RequestQueue.cs
- Socket.cs
- ControlParameter.cs
- CallbackValidatorAttribute.cs
- TypeHelper.cs
- DataGridTextBox.cs
- PersonalizablePropertyEntry.cs
- CallbackValidator.cs
- DataGridViewSelectedCellsAccessibleObject.cs
- XmlQualifiedNameTest.cs
- XmlSignatureProperties.cs
- AutomationAttributeInfo.cs
- PrintPageEvent.cs
- MDIWindowDialog.cs
- ValidatedControlConverter.cs
- Utility.cs
- BindingsCollection.cs
- GridViewRowCollection.cs
- TextEditorLists.cs
- OdbcConnection.cs
- IPGlobalProperties.cs
- DataKey.cs
- BindValidationContext.cs
- MatrixUtil.cs
- Publisher.cs
- TCPListener.cs
- DBCSCodePageEncoding.cs
- SqlWorkflowPersistenceService.cs
- SystemColorTracker.cs
- StreamReader.cs
- NewExpression.cs
- SqlSupersetValidator.cs
- IntegerValidatorAttribute.cs
- FileDialogCustomPlacesCollection.cs
- ExceptionRoutedEventArgs.cs
- PerformanceCounterPermissionEntry.cs
- MetadataPropertyCollection.cs
- CfgArc.cs
- MinimizableAttributeTypeConverter.cs
- MessageBox.cs
- MethodImplAttribute.cs
- UMPAttributes.cs
- DataBindingCollection.cs
- WrappedIUnknown.cs
- RegexReplacement.cs
- DesignerWebPartChrome.cs
- DependencyStoreSurrogate.cs
- regiisutil.cs
- ButtonChrome.cs
- SmtpSection.cs
- RightsManagementEncryptedStream.cs
- CriticalFinalizerObject.cs
- TextCollapsingProperties.cs
- XmlReaderSettings.cs
- Misc.cs
- Int16KeyFrameCollection.cs
- HostedElements.cs
- EmbeddedObject.cs
- GenericParameterDataContract.cs
- DocumentPageView.cs
- QilNode.cs
- XNodeValidator.cs
- RuleSettingsCollection.cs
- TemplatePartAttribute.cs
- RuntimeWrappedException.cs
- XNodeNavigator.cs
- FontUnitConverter.cs
- GridEntryCollection.cs
- FileLoadException.cs
- AppDomainUnloadedException.cs
- ErrorHandler.cs
- MessageQueuePermissionAttribute.cs
- AdPostCacheSubstitution.cs