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;
 }
Esempio n. 2
0
 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));
                }
            }
Esempio n. 4
0
            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");
            }
Esempio n. 5
0
 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();
     }
 }
Esempio n. 6
0
            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));
                }
            }
Esempio n. 7
0
 protected abstract IPropertyMethodMember GetPropertyMethod(PropertyMethodType propertyMethodType);
Esempio n. 8
0
 protected abstract IPropertySignatureMethodMember GetIndexerMethod(PropertyMethodType propertyMethodType);
Esempio n. 9
0
 internal Method(CliInterfaceType parent, ICliMetadataMethodDefinitionTableRow metadataEntry, PropertyMethodType propertyMethodType, IGeneralGenericSignatureMemberUniqueIdentifier uniqueIdentifier)
     : base(parent, metadataEntry, uniqueIdentifier)
 {
     this.propertyMethodType = propertyMethodType;
 }
Esempio n. 10
0
 public IndexerMethodMember(PropertyMethodType methodType, IndexerMember owner)
     : base(methodType, owner)
 {
 }
Esempio n. 11
0
 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));
                }
            }
Esempio n. 15
0
 public PropertyMethodMember(PropertyMethodType methodType, PropertyMember owner, TInstanceIntermediateType parent)
     : base(methodType, owner, parent)
 {
 }
Esempio n. 16
0
            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);
Esempio n. 18
0
 public MethodMember(ICliMetadataMethodDefinitionTableRow metadataEntry, _ICliAssembly assembly, IStructType parent, IGeneralGenericSignatureMemberUniqueIdentifier uniqueIdentifier, PropertyMethodType methodType)
     : base(metadataEntry, assembly, parent, uniqueIdentifier)
 {
     this.methodType = methodType;
 }
 public PropertyMethod(PropertyMethodType propertyMethodType, uint propertyMethodToken)
 {
     this.PropertyMethodType = propertyMethodType;
     this.PropertyMethodToken = propertyMethodToken;
 }
Esempio n. 20
0
 /// <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);
Esempio n. 21
0
 public PropertyMethodMember(PropertyMethodType methodType, IntermediateClassPropertyMember <TInstanceIntermediateType> owner, TInstanceIntermediateType parent)
     : base(parent)
 {
     this.methodType = methodType;
     this.Owner      = owner;
 }