Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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 } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DesigntimeLicenseContext.cs
- WebBrowser.cs
- DataObjectEventArgs.cs
- WSDualHttpBinding.cs
- CodeDomLoader.cs
- Debug.cs
- TypeForwardedFromAttribute.cs
- DefaultEvaluationContext.cs
- HttpModuleActionCollection.cs
- XmlHierarchicalEnumerable.cs
- VScrollProperties.cs
- XamlRtfConverter.cs
- Clock.cs
- UidPropertyAttribute.cs
- SafeProcessHandle.cs
- StylusPlugInCollection.cs
- MemberHolder.cs
- TextRunProperties.cs
- RectAnimationClockResource.cs
- OleDbWrapper.cs
- ContentDisposition.cs
- PropertyMetadata.cs
- ParameterModifier.cs
- PeerNameRecordCollection.cs
- AutomationFocusChangedEventArgs.cs
- XPathMessageContext.cs
- StreamInfo.cs
- IconHelper.cs
- BaseDataBoundControl.cs
- FullTextLine.cs
- PartDesigner.cs
- UnaryNode.cs
- UnsafeNativeMethodsMilCoreApi.cs
- DataGridTemplateColumn.cs
- SafeNativeMethodsMilCoreApi.cs
- ActionItem.cs
- FunctionQuery.cs
- ValidationService.cs
- InteropEnvironment.cs
- RegexTree.cs
- DetectEofStream.cs
- VersionedStream.cs
- Validator.cs
- ImageCollectionCodeDomSerializer.cs
- SchemaType.cs
- Aggregates.cs
- CompModSwitches.cs
- ImmutableCommunicationTimeouts.cs
- ResXBuildProvider.cs
- ItemType.cs
- CurrentChangingEventArgs.cs
- FormViewInsertedEventArgs.cs
- SqlProvider.cs
- TrackingLocationCollection.cs
- QueueSurrogate.cs
- WindowsGraphics2.cs
- DummyDataSource.cs
- DesignerDataRelationship.cs
- WebConfigurationFileMap.cs
- InstrumentationTracker.cs
- PermissionAttributes.cs
- CodeCatchClauseCollection.cs
- ReadOnlyDictionary.cs
- CompositeControl.cs
- VisualBasicSettingsConverter.cs
- SamlAttributeStatement.cs
- Int32Storage.cs
- AttachInfo.cs
- XomlSerializationHelpers.cs
- MouseOverProperty.cs
- XmlTextEncoder.cs
- XPathMessageContext.cs
- OleStrCAMarshaler.cs
- ControlParameter.cs
- Win32.cs
- ClientTargetCollection.cs
- panel.cs
- OdbcError.cs
- PropertyGroupDescription.cs
- SimpleHandlerBuildProvider.cs
- Activator.cs
- ArraySortHelper.cs
- WebPartEditVerb.cs
- Image.cs
- RelationshipEnd.cs
- FixedPageAutomationPeer.cs
- PermissionSetEnumerator.cs
- Line.cs
- XPathScanner.cs
- WebPartChrome.cs
- SingleAnimationBase.cs
- LambdaCompiler.ControlFlow.cs
- Debugger.cs
- SecuritySessionSecurityTokenProvider.cs
- XmlTextAttribute.cs
- SchemaAttDef.cs
- _IPv4Address.cs
- AliasedSlot.cs
- DataTableNewRowEvent.cs
- SqlCachedBuffer.cs