private void AssertContainsNull(Collection4 c) { Assert.IsTrue(c.Contains(null)); Assert.IsNull(c.Get(null)); int size = c.Size(); c.Ensure(null); Assert.AreEqual(size, c.Size()); }
private void AssertNotContainsNull(Collection4 c) { Assert.IsFalse(c.Contains(null)); Assert.IsNull(c.Get(null)); var size = c.Size(); c.Ensure(null); Assert.AreEqual(size + 1, c.Size()); c.Remove(null); Assert.AreEqual(size, c.Size()); }
internal virtual IConstraint Join1(QCon a_with, bool a_and) { if (a_with is QConstraints) { var j = 0; var joinHooks = new Collection4(); var constraints = ((QConstraints)a_with).ToArray(); for (j = 0; j < constraints.Length; j++) { joinHooks.Ensure(((QCon)constraints[j]). JoinHook()); } var joins = new IConstraint[joinHooks.Size()]; j = 0; var i = joinHooks.GetEnumerator(); while (i.MoveNext()) { joins[j++] = Join((IConstraint)i.Current, a_and); } return(new QConstraints(i_trans, joins)); } var myHook = JoinHook(); var otherHook = a_with.JoinHook(); if (myHook == otherHook) { // You might like to check out, what happens, if you // remove this line. It seems to open a bug in an // StOr testcase. return(myHook); } var cj = new QConJoin(i_trans, myHook, otherHook, a_and); myHook.AddJoin(cj); otherHook.AddJoin(cj); return(cj); }
internal virtual QCon ProduceTopLevelJoin () { if (!HasJoins()) { return(this); } var i = IterateJoins(); if (i_joins.Size() == 1) { i.MoveNext(); return(((QCon)i.Current).ProduceTopLevelJoin ()); } var col = new Collection4(); while (i.MoveNext()) { col.Ensure(((QCon)i.Current).ProduceTopLevelJoin ()); } i = col.GetEnumerator(); i.MoveNext(); var qcon = (QCon )i.Current; if (col.Size() == 1) { return(qcon); } while (i.MoveNext()) { qcon = (QCon)qcon.And((IConstraint)i.Current ); } return(qcon); }
internal virtual Db4objects.Db4o.Internal.Query.Processor.QCon ProduceTopLevelJoin () { if (!HasJoins()) { return(this); } IEnumerator i = IterateJoins(); if (i_joins.Size() == 1) { i.MoveNext(); return(((Db4objects.Db4o.Internal.Query.Processor.QCon)i.Current).ProduceTopLevelJoin ()); } Collection4 col = new Collection4(); while (i.MoveNext()) { col.Ensure(((Db4objects.Db4o.Internal.Query.Processor.QCon)i.Current).ProduceTopLevelJoin ()); } i = col.GetEnumerator(); i.MoveNext(); Db4objects.Db4o.Internal.Query.Processor.QCon qcon = (Db4objects.Db4o.Internal.Query.Processor.QCon )i.Current; if (col.Size() == 1) { return(qcon); } while (i.MoveNext()) { qcon = (Db4objects.Db4o.Internal.Query.Processor.QCon)qcon.And((IConstraint)i.Current ); } return(qcon); }
internal override QE Add(QE evaluator) { i_evaluators.Ensure(evaluator); return(this); }
public virtual void Ensure(ObjectContainerBase container) { _containers.Ensure(container); }