zoukankan      html  css  js  c++  java
  • 规约

        public static class Spec
        {
            /// <summary>
            /// True条件。
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <returns>True条件</returns>
            public static Expression<Func<T, bool>> True<T>() { return f => true; }
    
            /// <summary>
            /// False条件。
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <returns>False条件</returns>
            public static Expression<Func<T, bool>> False<T>() { return f => false; }
    
            /// <summary>
            /// 逻辑或。
            /// </summary>
            /// <param name="left">左逻辑。</param>
            /// <param name="right">右逻辑。</param>
            /// <returns>逻辑表达式。</returns>
            public static Expression<Func<T, bool>> Or<T>(this Expression<Func<T, bool>> left, Expression<Func<T, bool>> right)
            {
                var invokedExpr = Expression.Invoke(right, left.Parameters);
                return Expression.Lambda<Func<T, bool>>(Expression.Or(left.Body, invokedExpr), left.Parameters);
            }
    
            /// <summary>
            /// 逻辑与。
            /// </summary>
            /// <param name="left">左逻辑。</param>
            /// <param name="right">右逻辑。</param>
            /// <returns>逻辑表达式。</returns>
            public static Expression<Func<T, bool>> And<T>(this Expression<Func<T, bool>> left, Expression<Func<T, bool>> right)
            {
                var invokedExpr = Expression.Invoke(right, left.Parameters);
                return Expression.Lambda<Func<T, bool>>(Expression.And(left.Body, invokedExpr), left.Parameters);
            }
        }
    
  • 相关阅读:
    【测试方法】之模拟cpu/mem/io使用率
    【数据库原理】之clickhouse学习笔记
    python每日一练
    栈的压入、弹出序列
    包含min函数的栈
    顺时针打印矩阵
    二叉树的镜像
    树的子结构*
    调整数组顺序使奇数位于偶数前面
    在O(1)时间内删除链表节点
  • 原文地址:https://www.cnblogs.com/krockey/p/14592387.html
Copyright © 2011-2022 走看看