private IConstraint AddEvaluationToAllConstraints(QConEvaluation eval) { if (i_constraints.Size() == 0) { _trans.Container().ClassCollection().IterateTopLevelClasses(new _IVisitor4_139(this )); } IEnumerator i = IterateConstraints(); while (i.MoveNext()) { ((QCon)i.Current).AddConstraint(eval); } // FIXME: should return valid Constraint object return(null); }
/// <summary>Search for slot that corresponds to class.</summary> /// <remarks> /// Search for slot that corresponds to class. <br />If not found add it. /// <br />Constrain it. <br /> /// </remarks> public virtual IConstraint Constrain(object example) { lock (StreamLock()) { IReflectClass claxx = ReflectClassForClass(example); if (claxx != null) { return(AddClassConstraint(claxx)); } QConEvaluation eval = Platform4.EvaluationCreate(_trans, example); if (eval != null) { return(AddEvaluationToAllConstraints(eval)); } Collection4 constraints = new Collection4(); AddConstraint(constraints, example); return(ToConstraint(constraints)); } }
private IConstraint AddEvaluationToAllConstraints(QConEvaluation eval) { if (i_constraints.Size() == 0) { _trans.Container().ClassCollection().IterateTopLevelClasses(new _IVisitor4_139(this )); } var i = IterateConstraints(); while (i.MoveNext()) { ((QCon) i.Current).AddConstraint(eval); } // FIXME: should return valid Constraint object return null; }