From fb3cefb7c8959c22f20d649cfca88b497c1511ec Mon Sep 17 00:00:00 2001 From: mctaylors Date: Thu, 28 Dec 2023 10:10:23 +0300 Subject: [PATCH] small changes Signed-off-by: mctaylors --- src/Commands/RemindCommandGroup.cs | 2 +- src/Parsers/TimeSpanParser.cs | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/Commands/RemindCommandGroup.cs b/src/Commands/RemindCommandGroup.cs index 5a8c3fb..1a6b496 100644 --- a/src/Commands/RemindCommandGroup.cs +++ b/src/Commands/RemindCommandGroup.cs @@ -17,7 +17,7 @@ using Remora.Discord.Extensions.Embeds; using Remora.Discord.Extensions.Formatting; using Remora.Rest.Core; using Remora.Results; -using TimeSpanParser = Octobot.Parsers.TimeSpanParser; +using Octobot.Parsers; namespace Octobot.Commands; diff --git a/src/Parsers/TimeSpanParser.cs b/src/Parsers/TimeSpanParser.cs index a8d2aa5..f6651c5 100644 --- a/src/Parsers/TimeSpanParser.cs +++ b/src/Parsers/TimeSpanParser.cs @@ -22,13 +22,14 @@ public partial class TimeSpanParser : AbstractTypeParser public static Result TryParse(string timeSpanString, CancellationToken ct = default) { + var timeSpan = TimeSpan.Zero; + timeSpanString = timeSpanString.Trim(); + if (timeSpanString.StartsWith('-')) { - return TimeSpan.Zero; + return timeSpan; } - timeSpanString = timeSpanString.Trim(); - if (TimeSpan.TryParse(timeSpanString, DateTimeFormatInfo.InvariantInfo, out var parsedTimeSpan)) { return parsedTimeSpan; @@ -37,10 +38,9 @@ public partial class TimeSpanParser : AbstractTypeParser var matches = ParseRegex().Matches(timeSpanString); if (matches.Count is 0) { - return TimeSpan.Zero; + return timeSpan; } - var timeSpan = TimeSpan.Zero; foreach (var groups in matches.Select(match => match.Groups .Cast() .Where(g => g.Success) @@ -50,7 +50,7 @@ public partial class TimeSpanParser : AbstractTypeParser foreach ((var key, var groupValue) in groups) { return !double.TryParse(groupValue, out var parsedGroupValue) - ? TimeSpan.Zero + ? timeSpan : ParseFromRegex(timeSpan, key, groupValue, parsedGroupValue); } }