コード例 #1
0
        public static IValueConstraint <T> ValueConstraint <T>(Func <T, T> constraintFunction)
        {
            IValueConstraint <T> output = Laminar.New <IValueConstraint <T> >();

            output.MyFunc = constraintFunction;

            return(output);
        }
コード例 #2
0
        public static ITypeDefinitionConstructor <T> WithConstraint <T>(this ITypeDefinitionConstructor <T> typeDefinitionConstructor, Func <T, T> constraint)
        {
            IValueConstraint <T> valueConstraint = Constructor.ValueConstraint(constraint);

            typeDefinitionConstructor.AddConstraint(valueConstraint);

            return(typeDefinitionConstructor);
        }
コード例 #3
0
        /// <summary>
        /// Adds this constraint to the end of a chain of constraints
        /// </summary>
        /// <param name="constraint">The chain of constraints to add this to</param>
        public void AddToEndOfChain(IValueConstraint <T> constraint)
        {
            if (constraint is null)
            {
                return;
            }

            Func <T, T> PreviousTotal = constraint.TotalFunc;

            TotalFunc = (x) => MyFunc(PreviousTotal(x));;
        }
コード例 #4
0
 public bool CanProvideErrorMessageFor(IValueConstraint constraint)
 {
     return _valueConstraintErrorMessageProviderThatCanRender.CanProvideErrorMessageFor(constraint);
 }