示例#1
0
        public static TypeExtractor <T> Extract <S>(Expression <Func <S> > expression)
        {
            var visitor = new TypeExtractor <T>();

            visitor.Visit(expression);
            return(visitor);
        }
示例#2
0
        public ExpressionAwaitable(Expression <Func <bool> > expression)
        {
            _predicate = expression.Compile();
            if (!_predicate())
            {
                _wasFalse = true;
            }

            _iNotifyPropChangedItems = TypeExtractor <INotifyPropertyChanged>
                                       .Extract(expression).ExtractedItems.ToList();

            _iNotifyCollectionChangedItems = TypeExtractor <INotifyCollectionChanged>
                                             .Extract(expression).ExtractedItems.ToList();

            _iDPItems = DependencyPropertyExtractor.Extract(expression).ExtractedItems.ToList();

            HookEvents();
        }