public void ApplyNonIntroduced(Type implementedInterface, bool explicitSuppression)
        {
            NonInterfaceIntroductionDefinition nonIntroducedInterface =
                new NonInterfaceIntroductionDefinition(implementedInterface, _mixin, explicitSuppression);

            _mixin.NonInterfaceIntroductions.Add(nonIntroducedInterface);
        }
Ejemplo n.º 2
0
        public static NonInterfaceIntroductionDefinition CreateNonInterfaceIntroductionDefinition(MixinDefinition definition)
        {
            ArgumentUtility.CheckNotNull("definition", definition);

            var nonInterfaceIntroduction = new NonInterfaceIntroductionDefinition(typeof(IBT1Mixin1), definition, true);

            PrivateInvoke.InvokeNonPublicMethod(definition.NonInterfaceIntroductions, "Add", nonInterfaceIntroduction);
            return(nonInterfaceIntroduction);
        }
Ejemplo n.º 3
0
 public void ImplicitlyNonIntroducedInterface()
 {
     using (MixinConfiguration.BuildFromActive().ForClass <ClassImplementingSimpleInterface> ().Clear().AddMixins(typeof(MixinImplementingSimpleInterface)).EnterScope())
     {
         TargetClassDefinition definition = DefinitionObjectMother.GetActiveTargetClassDefinition(typeof(ClassImplementingSimpleInterface));
         NonInterfaceIntroductionDefinition nonIntroductionDefinition =
             definition.Mixins[typeof(MixinImplementingSimpleInterface)].NonInterfaceIntroductions[typeof(ISimpleInterface)];
         Assert.That(nonIntroductionDefinition.IsExplicitlySuppressed, Is.False);
         Assert.That(nonIntroductionDefinition.IsShadowed, Is.True);
         Assert.That(nonIntroductionDefinition.InterfaceType, Is.SameAs(typeof(ISimpleInterface)));
         Assert.That(nonIntroductionDefinition.Parent, Is.SameAs(definition.Mixins[typeof(MixinImplementingSimpleInterface)]));
     }
 }
 public void Visit(NonInterfaceIntroductionDefinition nonIntroductionDefinition)
 {
     ArgumentUtility.CheckNotNull("nonIntroductionDefinition", nonIntroductionDefinition);
     CheckRules(_nonIntroductedInterfaceRules, nonIntroductionDefinition);
 }