コード例 #1
0
        public virtual void CollectIDs(CollectIdContext context, IPredicate4 predicate)
        {
            ITraverseAspectCommand command = new _MarshallingInfoTraverseAspectCommand_311(predicate
                                                                                           , context, EnsureFieldList(context));

            TraverseAllAspects(context, command);
        }
コード例 #2
0
ファイル: NonblockingQueue.cs プロジェクト: erdincay/db4o
		public virtual object NextMatching(IPredicate4 condition)
		{
			if (null == condition)
			{
				throw new ArgumentNullException();
			}
			List4 current = _next;
			List4 previous = null;
			while (null != current)
			{
				object element = ((object)current._element);
				if (condition.Match(element))
				{
					if (previous == null)
					{
						RemoveNext();
					}
					else
					{
						previous._next = ((List4)current._next);
					}
					return element;
				}
				previous = current;
				current = ((List4)current._next);
			}
			return null;
		}
コード例 #3
0
        public virtual object NextMatching(IPredicate4 condition)
        {
            if (null == condition)
            {
                throw new ArgumentNullException();
            }
            List4 current  = _next;
            List4 previous = null;

            while (null != current)
            {
                object element = ((object)current._element);
                if (condition.Match(element))
                {
                    if (previous == null)
                    {
                        RemoveNext();
                    }
                    else
                    {
                        previous._next = ((List4)current._next);
                    }
                    return(element);
                }
                previous = current;
                current  = ((List4)current._next);
            }
            return(null);
        }
コード例 #4
0
ファイル: Iterators.cs プロジェクト: masroore/db4o
 public static bool Any(IEnumerator iterator, IPredicate4 condition)
 {
     while (iterator.MoveNext())
     {
         if (condition.Match(iterator.Current))
         {
             return true;
         }
     }
     return false;
 }
コード例 #5
0
		public static void All(IEnumerable values, IPredicate4 condition)
		{
			IEnumerator iterator = values.GetEnumerator();
			while (iterator.MoveNext())
			{
				if (!condition.Match(iterator.Current))
				{
					Assert.Fail("Condition does not hold for for value '" + iterator.Current + "'.");
				}
			}
		}
コード例 #6
0
 public static bool Any(IEnumerator iterator, IPredicate4 condition)
 {
     while (iterator.MoveNext())
     {
         if (condition.Match(iterator.Current))
         {
             return(true);
         }
     }
     return(false);
 }
コード例 #7
0
        public static void All(IEnumerable values, IPredicate4 condition)
        {
            IEnumerator iterator = values.GetEnumerator();

            while (iterator.MoveNext())
            {
                if (!condition.Match(iterator.Current))
                {
                    Assert.Fail("Condition does not hold for for value '" + iterator.Current + "'.");
                }
            }
        }
コード例 #8
0
ファイル: NativeCollections.cs プロジェクト: Galigator/db4o
		public static IList Filter(IList items, IPredicate4 predicate)
		{
			IList filtered = new ArrayList();
			for (IEnumerator itemIter = items.GetEnumerator(); itemIter.MoveNext(); )
			{
				object item = itemIter.Current;
				if (predicate.Match(item))
				{
					filtered.Add(item);
				}
			}
			return filtered;
		}
コード例 #9
0
ファイル: NativeCollections.cs プロジェクト: danfma/db4o-net
        public static IList Filter(IList items, IPredicate4 predicate)
        {
            IList filtered = new ArrayList();

            for (IEnumerator itemIter = items.GetEnumerator(); itemIter.MoveNext();)
            {
                object item = itemIter.Current;
                if (predicate.Match(item))
                {
                    filtered.Add(item);
                }
            }
            return(filtered);
        }
コード例 #10
0
ファイル: Tree.cs プロジェクト: dan-laskowski/OBD_Projekt
 public Tree Filter(IPredicate4 a_filter)
 {
     if (_preceding != null)
     {
         _preceding = _preceding.Filter(a_filter);
     }
     if (_subsequent != null)
     {
         _subsequent = _subsequent.Filter(a_filter);
     }
     if (!a_filter.Match(this))
     {
         return(Remove());
     }
     return(this);
 }
コード例 #11
0
ファイル: IteratorsTestCase.cs プロジェクト: erdincay/db4o
		private void AssertFilter(string[] expected, string[] actual, IPredicate4 filter)
		{
			Iterator4Assert.AreEqual(expected, Iterators.Filter(actual, filter));
		}
コード例 #12
0
 public virtual void CollectIDs(CollectIdContext context, IPredicate4 predicate)
 {
 }
コード例 #13
0
 public virtual void CollectIDs(CollectIdContext context, IPredicate4 predicate)
 {
     ITraverseAspectCommand command = new _MarshallingInfoTraverseAspectCommand_311(predicate
         , context, EnsureFieldList(context));
     TraverseAllAspects(context, command);
 }
コード例 #14
0
 public _MarshallingInfoTraverseAspectCommand_311(IPredicate4 predicate, CollectIdContext
     context, IMarshallingInfo baseArg1) : base(baseArg1)
 {
     this.predicate = predicate;
     this.context = context;
 }
コード例 #15
0
 public static IEnumerator Filter(IEnumerator iterator, IPredicate4 predicate)
 {
     return(new FilteredIterator(iterator, predicate));
 }
コード例 #16
0
ファイル: ClassMetadata.cs プロジェクト: masroore/db4o
 private void CollectIDs(CollectIdContext context, IPredicate4 predicate)
 {
     if (!StandardReferenceTypeHandlerIsUsed())
     {
         throw new InvalidOperationException();
     }
     ((StandardReferenceTypeHandler) CorrectHandlerVersion(context)).CollectIDs(context
         , predicate);
 }
コード例 #17
0
ファイル: BlockingQueue.cs プロジェクト: superyfwy/db4o
			public _IClosure4_95(BlockingQueue _enclosing, IPredicate4 condition)
			{
				this._enclosing = _enclosing;
				this.condition = condition;
			}
コード例 #18
0
 public virtual void CollectIDs(CollectIdContext context, IPredicate4 predicate)
 {
 }
コード例 #19
0
		public static IEnumerable Filter(IEnumerable source, IPredicate4 predicate)
		{
			return new _IEnumerable_112(source, predicate);
		}
コード例 #20
0
ファイル: FilteredIterator.cs プロジェクト: pondyond/db4o
 public FilteredIterator(IEnumerator iterator, IPredicate4 filter) : base(iterator
                                                                          )
 {
     _filter = filter;
 }
コード例 #21
0
		public static IEnumerator Filter(IEnumerator iterator, IPredicate4 predicate)
		{
			return new FilteredIterator(iterator, predicate);
		}
コード例 #22
0
 public _IClosure4_95(BlockingQueue _enclosing, IPredicate4 condition)
 {
     this._enclosing = _enclosing;
     this.condition  = condition;
 }
コード例 #23
0
 public virtual object NextMatching(IPredicate4 condition)
 {
     return(_lock.Run(new _IClosure4_95(this, condition)));
 }
コード例 #24
0
 public virtual object NextMatching(IPredicate4 condition)
 {
     return(queue.NextMatching(condition));
 }
コード例 #25
0
 public _IEnumerable_112(IEnumerable source, IPredicate4 predicate)
 {
     this.source    = source;
     this.predicate = predicate;
 }
コード例 #26
0
		public static IEnumerator Filter(object[] array, IPredicate4 predicate)
		{
			return Filter(new ArrayIterator4(array), predicate);
		}
コード例 #27
0
ファイル: FilteredIterator.cs プロジェクト: masroore/db4o
 public FilteredIterator(IEnumerator iterator, IPredicate4 filter) : base(iterator
     )
 {
     _filter = filter;
 }
コード例 #28
0
			public _IEnumerable_112(IEnumerable source, IPredicate4 predicate)
			{
				this.source = source;
				this.predicate = predicate;
			}
コード例 #29
0
		public virtual object NextMatching(IPredicate4 condition)
		{
			return queue.NextMatching(condition);
		}
コード例 #30
0
 public _MarshallingInfoTraverseAspectCommand_311(IPredicate4 predicate, CollectIdContext
                                                  context, IMarshallingInfo baseArg1) : base(baseArg1)
 {
     this.predicate = predicate;
     this.context   = context;
 }
コード例 #31
0
 public static IEnumerator Filter(object[] array, IPredicate4 predicate)
 {
     return(Filter(new ArrayIterator4(array), predicate));
 }
コード例 #32
0
 private void AssertFilter(string[] expected, string[] actual, IPredicate4 filter)
 {
     Iterator4Assert.AreEqual(expected, Iterators.Filter(actual, filter));
 }
コード例 #33
0
 public static IEnumerable Filter(IEnumerable source, IPredicate4 predicate)
 {
     return(new _IEnumerable_112(source, predicate));
 }
コード例 #34
0
ファイル: Tree.cs プロジェクト: erdincay/db4o
		public Tree Filter(IPredicate4 a_filter)
		{
			if (_preceding != null)
			{
				_preceding = _preceding.Filter(a_filter);
			}
			if (_subsequent != null)
			{
				_subsequent = _subsequent.Filter(a_filter);
			}
			if (!a_filter.Match(this))
			{
				return Remove();
			}
			return this;
		}
コード例 #35
0
ファイル: BlockingQueue.cs プロジェクト: superyfwy/db4o
		public virtual object NextMatching(IPredicate4 condition)
		{
			return _lock.Run(new _IClosure4_95(this, condition));
		}