public IWeightedTermConstructionFlow ProximityTerm(Func <ProximityOperandEndpoint, IProximityOperandsConstructionFlow> proximityComposer) { var constructionFlow = proximityComposer.Invoke(new ProximityOperandEndpoint()); var operand = SearchConditionNodeFactory.CreateGenericProximityTerm(rootOperator, constructionFlow.Operands); weightedOperands.Add(operand, null); return(this); }
/// <inheritdoc/> public IProximityTerm GenericProximityTerm(Func <ProximityOperandEndpoint, IProximityOperandsConstructionFlow> proximityTermsConstructor) { ArgumentValidator.EnsureArgumentNotNull(proximityTermsConstructor, "proximityTermsConstructor"); var proximityOperandRoot = new ProximityOperandEndpoint(); var constructionFlow = proximityTermsConstructor.Invoke(proximityOperandRoot); return(SearchConditionNodeFactory.CreateGenericProximityTerm(this, constructionFlow.Operands)); }