Example #1
0
        private static object InvokeUrnaryOperator <TIn1, TResult>(object x, UrnaryOperatorCallback <TIn1, TResult> eval)
            where TIn1 : IMeasurement <TIn1> where TResult : IMeasurement <TResult>
        {
            if (x is TIn1 in1)
            {
                return(eval(in1));
            }

            return(null);
        }
Example #2
0
        public static Operator CreateUrnaryPositive <TIn, TResult>(UrnaryOperatorCallback <TIn, TResult> eval)
            where TIn : IMeasurement <TIn>
            where TResult : IMeasurement <TResult>
        {
            Validate.NonNull(eval, nameof(eval));

            return(new UrnaryOperator(
                       typeof(TIn),
                       UrnaryOperatorType.Positation,
                       (x) => InvokeUrnaryOperator(x, eval)
                       ));
        }