Пример #1
0
        public void ComposeTwoFunctionalParametersUsingApplyBind()
        {
            IFunction composed = new ComposeFunction(new ParameterFunction(0, 1), new ParameterFunction(1, 1));

            IFunction applied = composed.Apply(new ConstantFunction(1));

            IFunction result = applied.Bind(new IFunction[] { new IncrementFunction(), new IncrementFunction() });

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result, typeof(ConstantFunction));
            Assert.AreEqual(3, result.Value);
        }