Пример #1
0
        public Task AddMatcherAsync(MatcherBase matcher, int Order)
        {
            if (null == matcher)
            {
                throw new ArgumentNullException("matcher");
            }

            return(Task.Run(() =>
            {
                while (0 != Interlocked.CompareExchange(ref Changing, 1, 0))
                {
                    locker.SpinOnce();
                }

                mMatchList.Add(Order, matcher);
                Changing = 0;
            }));
        }
Пример #2
0
 public IIFMatcher(MatcherBase predicate, MatcherBase truePredicate, MatcherBase falsePredicate)
 {
     Predicate = predicate;
     True      = truePredicate;
     False     = falsePredicate;
 }
Пример #3
0
 public OrMatcher(MatcherBase left, MatcherBase right) : base(left, right)
 {
 }
Пример #4
0
 public OperandMatcherBase(MatcherBase left, MatcherBase right)
 {
     Left  = left;
     Right = right;
 }