Beispiel #1
0
			void AddExplicitInterfaceImplementations(OverrideCollection overrides, IMember targetMember)
			{
				foreach (MethodReference overrideRef in overrides) {
					if (overrideRef.Name == targetMember.Name && targetMember.IsPublic) {
						continue; // is like implicit interface implementation / normal override
					}
					targetMember.InterfaceImplementations.Add(new ExplicitInterfaceImplementation(
						CreateType(this.ProjectContent, targetMember, overrideRef.DeclaringType),
						overrideRef.Name
					));
				}
			}
Beispiel #2
0
 public virtual void VisitOverrideCollection(OverrideCollection meth)
 {
 }
		public override void VisitOverrideCollection (OverrideCollection meth)
		{
			VisitCollection (meth);
		}
        public override void VisitOverrideCollection(OverrideCollection meths)
        {
            if (meths.Count == 0)
                return;

            MethodImplTable miTable = m_tableWriter.GetMethodImplTable ();
            foreach (MethodReference ov in meths) {
                MethodImplRow miRow = m_rowWriter.CreateMethodImplRow (
                    GetRidFor (meths.Container.DeclaringType as TypeDefinition),
                    new MetadataToken (TokenType.Method, GetRidFor (meths.Container)),
                    ov.MetadataToken);

                miTable.Rows.Add (miRow);
            }
        }
		public override void VisitOverrideCollection (OverrideCollection meth)
		{
			VisitCollection (meth);
			for (int i = 0; i < meth.Count; i++)
				meth [i] = GetMethodReference (meth [i]);
		}
        public virtual void VisitOverrideCollection(OverrideCollection meth)
        {

        }
 public virtual void VisitOverrideCollection(OverrideCollection overrides)
 {
     foreach (MethodReference method in overrides)
     {
         VisitOverride(method);
     }
 }