Commit Graph

158 Commits

Author SHA1 Message Date
Oliver Booth 35591b05e2
Add ReadOnlySpan<char> overload for TimeSpanParser
Also tidies up the code here to reduce complexity
2022-12-22 20:19:52 +00:00
Oliver Booth 9d6dbaaa23
Add Quaternion.ToAxisAngle and Quaternion.ToVector3 2022-12-06 01:08:35 +00:00
Oliver Booth b60fdc495b
Add IReadOnlyList<T>.Slice 2022-12-01 13:51:30 +00:00
Oliver Booth e02fd3b1b4
Add IReadOnlyList<T>.IndexOf 2022-12-01 12:28:33 +00:00
Oliver Booth 9c2f77b203
Remove invalid DirectoryInfo.Clear test 2022-12-01 12:28:05 +00:00
Oliver Booth 7776138909
Remove calls to no-longer-existing Clear(bool) 2022-11-29 17:27:33 +00:00
Oliver Booth 271305b056
Add .NET 7 target 2022-11-29 15:51:22 +00:00
Oliver Booth 53e8b2ff64
Repurpose Span<T>.Split to accept generic 2022-11-29 12:39:34 +00:00
Oliver Booth ed8651172b
Add [ReadOnly]Span<char>.Split
This commit also migrates CountSubstring from StringExtensions to CharSpanExtensions
2022-11-28 02:59:46 +00:00
Oliver Booth 9cce13727d
Add CountSubstring 2022-11-26 09:31:36 +00:00
Oliver Booth 3847d53120
Add more LINQ-esque methods
* IEnumerable<T>.CountWhereNot(Func<T, bool>)
* IEnumerable<T>.FirstWhereNot(Func<T, bool>)
* IEnumerable<T>.FirstWhereNotOrDefault(Func<T, bool>)
* IEnumerable<T>.LastWhereNot(Func<T, bool>)
* IEnumerable<T>.LastWhereNotOrDefault(Func<T, bool>)
* IEnumerable<T>.WhereNot(Func<T, bool>)
2022-07-30 23:53:35 +01:00
Oliver Booth 02765b8b19
Add IList<T>.Swap (#62) 2022-07-14 10:22:37 +01:00
Oliver Booth c0395feba3
Add GetClosestConsoleColor (#66) 2022-07-13 14:18:12 +01:00
Oliver Booth 46bfa17b93
Add vector and point component rounding (#65) 2022-07-13 12:09:37 +01:00
Oliver Booth b1eadf61f4
Add PopCount for built-in integer types 2022-07-08 13:09:34 +01:00
Oliver Booth 2e8626a32b
Add DirectoryInfo.Clear (#63) 2022-06-21 13:57:20 +01:00
Oliver Booth 3d896ea5d1
Add IList<T>.RemoveRange(Range) 2022-06-03 11:53:40 +01:00
Oliver Booth 3b78235957
Add tests for 3D shapes 2022-06-01 19:43:52 +01:00
Oliver Booth f02de2ad14
Refer to points as vertices in unit tests 2022-06-01 19:43:24 +01:00
Oliver Booth 0b3bf01fa0
Convert Polygon/F to class
This change also now refers to "Points" as "Vertices"
2022-06-01 18:30:48 +01:00
Oliver Booth b0cce087b3
Add additional ctor overloads for Ellipse/F 2022-06-01 17:05:25 +01:00
Oliver Booth ea56f2be48
Add Line3D 2022-06-01 16:47:03 +01:00
Oliver Booth b666b272a1
Add missing unit tests, bumps coverage to 99% 2022-06-01 15:36:45 +01:00
Oliver Booth 5e835e10f1
Add Ellipse struct 2022-06-01 15:36:18 +01:00
Oliver Booth b5227f58d3
Code cleanup for X10D.Tests 2022-06-01 15:35:00 +01:00
Oliver Booth e9b0ed08d4
Add primitive 2D structs to complement System.Drawing types 2022-06-01 13:46:22 +01:00
Oliver Booth f35f398d7f
Add conversions between Size(F)/Point(F)/Vector and Rect/Rectangle(F) 2022-05-28 14:19:46 +01:00
Oliver Booth 7ca206721b
Add MathUtility.InverseLerp (#60) 2022-05-23 10:33:52 +01:00
Oliver Booth 683e02cc2a
Add RoundUpToPowerOf2 2022-05-18 11:55:47 +01:00
Oliver Booth d312d05f7a
Add vector tuple deconstruction 2022-05-16 10:30:55 +01:00
Oliver Booth 23e07b65b8
Add [ReadOnly]Span<T>.Count(Predicate<T>) 2022-05-12 13:52:04 +01:00
Oliver Booth 4d19e2f64c
Add Vector.With* methods (resolves #56) 2022-05-09 10:33:21 +01:00
Oliver Booth d904daf431
Add Color.With* methods (resolves #55) 2022-05-09 10:01:03 +01:00
Oliver Booth 176ad9fa09
[ci skip] Define colors as fields 2022-05-09 09:59:03 +01:00
Oliver Booth aa30abea93
Add Color.Inverted (#54) 2022-05-08 19:52:49 +01:00
Oliver Booth d405faf6e2
Add IsEmoji method
Emoji validation is performed by using a regex which is generated from Twemoji. Source: https://raw.githubusercontent.com/twitter/twemoji-parser/master/src/lib/regex.js
2022-05-07 23:37:14 +01:00
Oliver Booth ed2920f8a0
Multi-target X10D.Tests 2022-05-07 23:16:06 +01:00
Oliver Booth 39ccf1f198
Denote CLS-noncompliant tests as such 2022-05-07 23:14:07 +01:00
Oliver Booth 0e726e9cd8
Cast sbyte values
Rename test file to SByteTests.cs
2022-05-07 23:12:28 +01:00
Oliver Booth adf2281f21
Add DisposeAll(Async) and ClearAndDisposeAll(Async) 2022-05-02 22:31:09 +01:00
Oliver Booth fd53b41610
Move EnumerableTests to Collections namespace 2022-05-02 22:27:21 +01:00
Oliver Booth 5d3a82a33a
Add IEnumerable<T>.For and ForEach (#50) 2022-05-01 22:25:37 +01:00
Oliver Booth 6505299c00
Move Stream extensions to IO namespace (#7)
* Finalizes unit tests, 99% coverage
* Update CHANGELOG
2022-04-30 13:52:34 +01:00
Oliver Booth a6139a5720
Migrate string extensions to appropriate namespaces (#7)
Introduces more tests
2022-04-30 13:08:39 +01:00
Oliver Booth c13cc934b6
Move ListOfByteExtensions to IO namespace
Also introduces unit tests
2022-04-30 11:59:03 +01:00
Oliver Booth 5d5bc1e384
Add tests for NextUnitVector2/3 and NextRotation(Uniform) 2022-04-30 11:34:15 +01:00
Oliver Booth 8ba5a5ad19
Remove empty lines and unnecessary namespace imports 2022-04-30 11:33:48 +01:00
Oliver Booth a7631b0efe
Add MultiplicativePersistence for integer types 2022-04-30 11:29:09 +01:00
Oliver Booth 3ae2827fd5
Fix precision errors by specifying delta 1e-6 2022-04-30 11:07:57 +01:00
Oliver Booth 7577fc1c99
"Fix" weird edge-case with Atanh returning incorrect value 1x10^-16 2022-04-30 10:41:27 +01:00