internal static TypeMatchingConstructorArgument CreateTypeMatchingConstructorArgument(
     ArgumentData argument,
     bool inherited)
 {
     return new TypeMatchingConstructorArgument(
         argument.ParameterType,
         (ctx, target) => argument.ArgumentValue,
         inherited);
 }
 public abstract IEnumerable<IParameter> RetrieveParameters(ArgumentData argument);
        public override Func<IBindingMetadata, bool> CreateConstraint(ArgumentData argument)
        {
            var name = (string)argument.ArgumentValue;

            return x => x.Name == name;
        }
 public override IEnumerable<IParameter> RetrieveParameters(ArgumentData argument)
 {
     yield return new ConstructorArgument(argument.ParameterName, argument.ArgumentValue, this.Inherited);
 }
 public override IEnumerable<IParameter> RetrieveParameters(ArgumentData argument)
 {
     yield return CreateTypeMatchingConstructorArgument(argument, this.Inherited);
 }
 public abstract Func<IBindingMetadata, bool> CreateConstraint(ArgumentData argument);