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
- PreviewPageInfo.cs
- FileClassifier.cs
- MetadataSerializer.cs
- XPathExpr.cs
- ButtonField.cs
- CfgSemanticTag.cs
- DesignerTransactionCloseEvent.cs
- ConfigurationException.cs
- ImageBrush.cs
- SmtpReplyReader.cs
- RequestBringIntoViewEventArgs.cs
- DataSvcMapFile.cs
- HTTPNotFoundHandler.cs
- SecuritySessionSecurityTokenProvider.cs
- RenderTargetBitmap.cs
- GC.cs
- TraceUtils.cs
- StringCollection.cs
- RemoteTokenFactory.cs
- SchemaImporterExtensionsSection.cs
- SuspendDesigner.cs
- RowToFieldTransformer.cs
- GridViewRowEventArgs.cs
- FieldNameLookup.cs
- TypeContext.cs
- Image.cs
- BaseAddressElement.cs
- HandlerWithFactory.cs
- GroupByQueryOperator.cs
- CompoundFileDeflateTransform.cs
- DiagnosticsConfiguration.cs
- PeerCustomResolverElement.cs
- DesignTimeTemplateParser.cs
- XhtmlTextWriter.cs
- RelationshipNavigation.cs
- ComboBox.cs
- EventBuilder.cs
- CollectionDataContractAttribute.cs
- SqlStream.cs
- WindowsGrip.cs
- StoreItemCollection.cs
- GridViewRowPresenterBase.cs
- DataGridTableCollection.cs
- SQLMoney.cs
- UDPClient.cs
- oledbmetadatacolumnnames.cs
- PathFigureCollectionValueSerializer.cs
- WinEventTracker.cs
- SessionEndedEventArgs.cs
- ConnectionDemuxer.cs
- XmlObjectSerializerWriteContext.cs
- PersonalizationProvider.cs
- UserNameSecurityTokenProvider.cs
- BuilderPropertyEntry.cs
- FrameworkContentElement.cs
- HandledEventArgs.cs
- StorageComplexPropertyMapping.cs
- MSAANativeProvider.cs
- DesignerActionItem.cs
- DoubleIndependentAnimationStorage.cs
- CopyNodeSetAction.cs
- ColumnResult.cs
- UInt32Converter.cs
- PeerSecurityManager.cs
- WmpBitmapDecoder.cs
- CharacterHit.cs
- ResourceCategoryAttribute.cs
- TextServicesCompartmentContext.cs
- IISMapPath.cs
- SymLanguageType.cs
- WebPartConnectionsEventArgs.cs
- BoundsDrawingContextWalker.cs
- TemplateAction.cs
- HtmlEncodedRawTextWriter.cs
- EncryptedPackage.cs
- ActivationArguments.cs
- VerticalAlignConverter.cs
- GifBitmapEncoder.cs
- DocumentsTrace.cs
- _Rfc2616CacheValidators.cs
- ProtectedConfiguration.cs
- HwndProxyElementProvider.cs
- ParameterCollection.cs
- PointConverter.cs
- SchemaCompiler.cs
- GiveFeedbackEvent.cs
- COM2Properties.cs
- JsonMessageEncoderFactory.cs
- ArraySegment.cs
- XmlSchemaSimpleTypeList.cs
- SpnegoTokenProvider.cs
- DataSource.cs
- HttpCapabilitiesEvaluator.cs
- LineBreakRecord.cs
- CompositeFontParser.cs
- NavigationWindow.cs
- LogSwitch.cs
- WbmpConverter.cs
- ContentDisposition.cs
- ConnectionPointGlyph.cs