Vertesaur.Generation.Expressions.SquaredDistanceExpression.Reduce C# (CSharp) Méthode

Reduce() public méthode

public Reduce ( ) : Expression
Résultat System.Linq.Expressions.Expression
        public override Expression Reduce() {
            Contract.Ensures(Contract.Result<Expression>() != null);
            var gen = ReductionExpressionGenerator;
            var halfCount = Components.Length / 2;
            var deltas = new Expression[halfCount];
            for (int i = 0; i < halfCount; i++) {
                Contract.Assume(halfCount + i < Components.Length);
                deltas[i] = ReductionExpressionGenerator.GenerateOrThrow(
                    "SUBTRACT",
                    Components[i],
                    Components[halfCount + i]);
            }
            return gen.Generate("SQUAREDMAGNITUDE", deltas)
                ?? new SquaredMagnitudeExpression(deltas, gen);
        }