<commit_before>﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Evbpc.Framework.Utilities.Extensions
{
    /// <summary>
    /// Provides certain extension methods for the <code>TimeSpan</code> structure.
    /// </summary>
    public static class TimeSpanExtensions
    {
        /// <summary>
        /// Calculates how far into the target <code>TimeSpan</code> the current <code>TimeSpan</code> is.
        /// </summary>
        /// <param name="t">The <code>TimeSpan</code> to test.</param>
        /// <param name="target">The target <code>TimeSpan</code>.</param>
        /// <returns>A <code>double</code> value representing how long into the target the <code>TimeSpan</code> is.</returns>
        public static double PercentComplete(this TimeSpan t, TimeSpan target) => t.TotalMilliseconds / target.TotalMilliseconds;
    }
}<commit_msg>Fixed `TimeSpanExtensions.PercentComplete` to use `TimeSpan.Ticks` and actual return a `double`.<commit_after>﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Evbpc.Framework.Utilities.Extensions
{
    /// <summary>
    /// Provides certain extension methods for the <code>TimeSpan</code> structure.
    /// </summary>
    public static class TimeSpanExtensions
    {
        /// <summary>
        /// Calculates how far into the target <code>TimeSpan</code> the current <code>TimeSpan</code> is.
        /// </summary>
        /// <param name="t">The <code>TimeSpan</code> to test.</param>
        /// <param name="target">The target <code>TimeSpan</code>.</param>
        /// <returns>A <code>double</code> value representing how long into the target the <code>TimeSpan</code> is.</returns>
        public static double PercentComplete(this TimeSpan t, TimeSpan target) => (double)t.Ticks / target.Ticks;
    }
}
{'fraction_non_alphanumeric': 0.14147391070467993, 'fraction_numerical': 0.0, 'mean_word_length': 3.161073825503356, 'pattern_counts': {'":': 0, '<': 51, '<?xml version=': 0, '>': 53, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3747454', 'n_tokens_mistral': 520, 'n_tokens_neox': 520, 'n_words': 145}