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
- BindingContext.cs
- DesignerToolboxInfo.cs
- FrameworkContentElement.cs
- CngProperty.cs
- FloaterParagraph.cs
- WinFormsComponentEditor.cs
- SymmetricAlgorithm.cs
- QilChoice.cs
- FontInfo.cs
- CodeDirectoryCompiler.cs
- DataObject.cs
- UserControlParser.cs
- Attributes.cs
- HttpWebRequest.cs
- FormatSettings.cs
- IdentifierElement.cs
- ConfigurationManagerHelperFactory.cs
- AbstractExpressions.cs
- ColumnBinding.cs
- GlyphTypeface.cs
- PreviewPrintController.cs
- ExpandableObjectConverter.cs
- DWriteFactory.cs
- base64Transforms.cs
- ListControl.cs
- ConfigXmlWhitespace.cs
- HijriCalendar.cs
- OleDbEnumerator.cs
- ToolStripSystemRenderer.cs
- WebServiceHandler.cs
- GraphicsState.cs
- TextDecorationLocationValidation.cs
- SmtpClient.cs
- ConfigurationCollectionAttribute.cs
- PropertyManager.cs
- Constraint.cs
- WpfXamlLoader.cs
- PngBitmapDecoder.cs
- __FastResourceComparer.cs
- InheritanceAttribute.cs
- ObjectDataSourceWizardForm.cs
- MasterPage.cs
- ObjectViewEntityCollectionData.cs
- Vector3D.cs
- QueryOperatorEnumerator.cs
- TdsParserStaticMethods.cs
- RoutedEventArgs.cs
- _NtlmClient.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- ListViewAutomationPeer.cs
- NewItemsContextMenuStrip.cs
- TemplatePagerField.cs
- ChannelManager.cs
- AppliedDeviceFiltersEditor.cs
- Currency.cs
- BrowserDefinition.cs
- MonthCalendar.cs
- SrgsSemanticInterpretationTag.cs
- BitmapFrameEncode.cs
- SqlDataSourceFilteringEventArgs.cs
- ControlBuilder.cs
- DefaultTextStoreTextComposition.cs
- NameTable.cs
- XmlMembersMapping.cs
- SimplePropertyEntry.cs
- StrongNameKeyPair.cs
- MULTI_QI.cs
- FrameworkObject.cs
- SqlProfileProvider.cs
- Condition.cs
- Listbox.cs
- ControlSerializer.cs
- TypeConvertions.cs
- MarshalByValueComponent.cs
- Simplifier.cs
- SmiSettersStream.cs
- EmptyEnumerable.cs
- XmlSchemaAny.cs
- DocumentViewerAutomationPeer.cs
- SolidBrush.cs
- AutomationPatternInfo.cs
- Errors.cs
- ValueType.cs
- ObjectHandle.cs
- EdmToObjectNamespaceMap.cs
- Style.cs
- DataGridViewButtonCell.cs
- SettingsProviderCollection.cs
- ZipFileInfoCollection.cs
- KeyNotFoundException.cs
- Validator.cs
- ZoneIdentityPermission.cs
- ControlBindingsCollection.cs
- LogReservationCollection.cs
- LayoutTable.cs
- XPathNodeInfoAtom.cs
- Attribute.cs
- StringCollection.cs
- X509Certificate2Collection.cs
- ExternalFile.cs