public IndexerMethodMember(PropertyMethodType methodType, IndexerMember owner) : base(owner == null ? null : owner.Parent) { if (owner == null) { throw new ArgumentNullException("parent"); } this.owner = owner; this.methodType = methodType; }
public IndexerMethodMember(PropertyMethodType methodType, IntermediateStructIndexerMember <TInstanceIntermediateType> owner) : base(owner == null ? null : (TInstanceIntermediateType)owner.Parent) { if (owner == null) { throw new ArgumentNullException("parent"); } this.owner = owner; this.methodType = methodType; }
protected override IndexerMethod GetMethodSignatureMember(PropertyMethodType methodType) { switch (methodType) { case PropertyMethodType.SetMethod: return(new IndexerSetMethod(this)); default: case PropertyMethodType.GetMethod: return(new IndexerMethod(this)); } }
protected override IPropertyMethodMember GetPropertyMethod(PropertyMethodType methodType) { switch (methodType) { case PropertyMethodType.GetMethod: return(new MethodMember(this.MetadataEntry.GetMethod, (_ICliAssembly)this.Parent.Assembly, this.Parent, CliMemberExtensions.GetMethodIdentifier(this.MetadataEntry.GetMethod, this.Parent, (_ICliManager)this.Parent.IdentityManager, () => this.GetMethod), methodType)); case PropertyMethodType.SetMethod: return(new MethodMember(this.MetadataEntry.SetMethod, (_ICliAssembly)this.Parent.Assembly, this.Parent, CliMemberExtensions.GetMethodIdentifier(this.MetadataEntry.SetMethod, this.Parent, (_ICliManager)this.Parent.IdentityManager, () => this.SetMethod), methodType)); } throw new ArgumentOutOfRangeException("methodType"); }
protected override IPropertySignatureMethodMember GetIndexerMethod(PropertyMethodType propertyMethodType) { switch (propertyMethodType) { case PropertyMethodType.GetMethod: return new Method((CliInterfaceType)this.Parent, this.MetadataEntry.GetMethod, propertyMethodType, CliMemberExtensions.GetMethodIdentifier(this.MetadataEntry.GetMethod, this.Parent, (_ICliManager)this.Parent.IdentityManager, () => this.GetMethod)); case PropertyMethodType.SetMethod: return new Method((CliInterfaceType)this.Parent, this.MetadataEntry.SetMethod, propertyMethodType, CliMemberExtensions.GetMethodIdentifier(this.MetadataEntry.SetMethod, this.Parent, (_ICliManager)this.Parent.IdentityManager, () => this.SetMethod)); default: throw new NotSupportedException(); } }
protected override IntermediateClassPropertyMember <TInstanceIntermediateType> .PropertyMethodMember GetMethodMember(PropertyMethodType methodType) { switch (methodType) { case PropertyMethodType.SetMethod: return(new PropertySetMethodMember(this, (TInstanceIntermediateType)this.Parent)); default: case PropertyMethodType.GetMethod: return(new PropertyMethodMember(PropertyMethodType.GetMethod, this, (TInstanceIntermediateType)this.Parent)); } }
protected abstract IPropertyMethodMember GetPropertyMethod(PropertyMethodType propertyMethodType);
protected abstract IPropertySignatureMethodMember GetIndexerMethod(PropertyMethodType propertyMethodType);
internal Method(CliInterfaceType parent, ICliMetadataMethodDefinitionTableRow metadataEntry, PropertyMethodType propertyMethodType, IGeneralGenericSignatureMemberUniqueIdentifier uniqueIdentifier) : base(parent, metadataEntry, uniqueIdentifier) { this.propertyMethodType = propertyMethodType; }
public IndexerMethodMember(PropertyMethodType methodType, IndexerMember owner) : base(methodType, owner) { }
public PropertyMethodMember(PropertyMethodType methodType, IntermediateStructPropertyMember <TInstanceIntermediateType> owner) : base(owner == null ? null : (TInstanceIntermediateType)(owner.Parent)) { this.methodType = methodType; this.owner = owner; }
public PropertyMethod(PropertyMethodType propertyMethodType, uint propertyMethodToken) { this.PropertyMethodType = propertyMethodType; this.PropertyMethodToken = propertyMethodToken; }
public PropertyMethodMember(PropertyMethodType methodType, PropertyMember owner) : base(owner.Parent) { this.Owner = owner; this.MethodType = methodType; }
protected override PropertyMember.PropertyMethodMember GetMethodSignatureMember(PropertyMethodType methodType) { switch (methodType) { case PropertyMethodType.SetMethod: return(new PropertySetMethodMember(this)); case PropertyMethodType.GetMethod: default: return(new PropertyMethodMember(PropertyMethodType.GetMethod, this)); } }
public PropertyMethodMember(PropertyMethodType methodType, PropertyMember owner, TInstanceIntermediateType parent) : base(methodType, owner, parent) { }
protected override IntermediateClassIndexerMember <TInstanceIntermediateType> .IndexerMethodMember GetMethodMember(PropertyMethodType methodType) { switch (methodType) { case PropertyMethodType.SetMethod: return(new IndexerSetMethodMember(this)); default: case PropertyMethodType.GetMethod: return(new IndexerMethodMember(PropertyMethodType.GetMethod, this)); } }
protected abstract TMethodMember GetMethodMember(PropertyMethodType methodType);
public MethodMember(ICliMetadataMethodDefinitionTableRow metadataEntry, _ICliAssembly assembly, IStructType parent, IGeneralGenericSignatureMemberUniqueIdentifier uniqueIdentifier, PropertyMethodType methodType) : base(metadataEntry, assembly, parent, uniqueIdentifier) { this.methodType = methodType; }
/// <summary> /// Obtains the <typeparamref name="TPropertyMethod"/> for the <paramref name="methodType"/> provided. /// </summary> /// <param name="methodType">The type of property method to obtain the property wrapper /// method for.</param> /// <returns>An instance of <typeparamref name="TPropertyMethod"/> /// if successful.</returns> protected abstract TPropertyMethod OnGetMethod(PropertyMethodType methodType);
public PropertyMethodMember(PropertyMethodType methodType, IntermediateClassPropertyMember <TInstanceIntermediateType> owner, TInstanceIntermediateType parent) : base(parent) { this.methodType = methodType; this.Owner = owner; }