9d26f3da60
feat: add TextWriter.WriteNoAlloc/WriteLineNoAlloc
...
Allows writing of integer types without allocating a string.
2023-04-06 19:11:54 +01:00
172380c57d
[ci skip] chore: add meta services
...
This class library will contain attributes for future source generation.
2023-04-06 16:58:38 +01:00
5289bd2595
chore: move SourceGenerator to tools folder
2023-04-06 16:03:20 +01:00
9791fd23bb
feat: add CountDigit for integer types
2023-04-06 14:40:27 +01:00
0621c246a0
feat: add Span<T>.Replace
2023-04-06 02:31:22 +01:00
8e6796607c
docs: explain use of ref return
2023-04-05 23:19:08 +01:00
b819e6a418
refactor: revert 47f3a138aa
...
Generic math features will be built in a feature branch to avoid merge conflicts with develop.
2023-04-05 15:13:21 +01:00
47f3a138aa
feat: add Unpack for IBinaryInteger<T>
...
This introduces an experiment, to add support for generic math in X10D. So far, build and tests remain passing - this is a good sign. There is potential here.
This API is subject to change and may be removed without warning.
2023-04-05 15:06:02 +01:00
3ab1ab0b41
style: remove redundant CLSCompliant on internal methods
2023-04-05 13:42:02 +01:00
dc1b9d6c04
feat: add math extensions for BigInteger
2023-04-05 11:05:53 +01:00
5e4af9a9e1
style: move MethodImplOptions to resource file
...
Prevents repetition through #if directives in every file
2023-04-04 10:34:16 +01:00
b8c3a5121a
feat: add DateOnly extensions
2023-04-04 10:10:55 +01:00
a717976229
style!: rename parameter for DateTime.Age and DateTimeOffset.Age
...
BREAKING CHANGE: "asOf" has been renamed to "referenceDate". Consumers using named parameters beware.
2023-04-03 18:20:21 +01:00
86f72b9d43
build: bump to 4.0.0
2023-04-03 18:14:03 +01:00
514e5b12b0
feat: add MathUtility.Pulse ( resolves #60 )
2023-04-03 17:26:03 +01:00
1939bbe4ba
feat: add MathUtility.Sawtooth ( #60 )
2023-04-03 17:15:11 +01:00
c7370c39fd
feat: add MathUtility.Sigmoid ( #60 )
2023-04-03 16:38:58 +01:00
654d5b5b08
feat: Add MathUtility.ExponentialDecay ( #60 )
2023-04-03 16:21:43 +01:00
9cf003481c
refactor: move exception messages to resource file ( #27 )
2023-04-03 15:57:31 +01:00
3c85ae6f64
refactor: move old exception messages from Resources.resx ( #27 )
2023-04-03 15:50:35 +01:00
d27f4caef7
feat: add MathUtility.SmoothStep ( #60 )
2023-04-03 15:47:18 +01:00
3f147c98b2
feat: add double overload for Bias ( #60 )
2023-04-03 15:00:13 +01:00
f131c281cf
feat: add MathUtility.Bias ( #60 )
2023-04-03 14:41:32 +01:00
a748010a38
refactor: remove TODOs ( resolves #71 )
2023-04-03 14:19:47 +01:00
b68c804b46
test: exclude uncoverable Age overload from coverage
2023-04-03 14:18:02 +01:00
15d0f93f8b
refactor: remove Polyhedron.IsConvex
2023-04-03 14:16:31 +01:00
9417ee6be1
test: bring coverage to 100% for Drawing
2023-04-03 14:13:32 +01:00
6ef48fc3b9
test: 100% coverage on IntrinsicUtility ( #73 )
2023-04-03 13:41:41 +01:00
783c4b0f8e
test: add tests for integer Pack ( #73 )
2023-04-03 01:28:01 +01:00
cbbfa6d947
fix: fix SSE2 implementation of PackInt32
...
Credit due to @RealityProgrammer, thank you.
2023-04-03 00:42:29 +01:00
22d5f07215
test: add tests for ReadOnlySpan.Pack ( #73 )
...
1 failing test: PackInt32Internal_Sse2_ShouldReturnCorrectInt32_GivenReadOnlySpan
This will fail the dotnet workflow.
2023-04-02 23:14:38 +01:00
78cebbce8b
test: add unit tests for Span.Contains(Enum) ( #73 )
2023-04-02 22:11:45 +01:00
312ce725c2
ci: suppress uncoverable lines in StreamExtensions
2023-04-02 21:03:15 +01:00
cb48dd2551
build: conditionally reference dotCover ( fixes #75 )
...
For CI runs, this package must not be referenced, or symbol validation will fail.
2023-04-02 19:54:09 +01:00
da220c2242
build: partial revert 58c333a173
( #75 )
...
Removes the reference to JetBrains.dotCover.MSBuild.
2023-04-02 19:40:25 +01:00
ebc8734410
build: partial revert 58c333a173
( #75 ))
2023-04-02 17:34:24 +01:00
e2a608f11d
build: output debug symbols for all projects ( #75 )
2023-04-02 17:06:18 +01:00
fdc0c6aa35
perf: fix performance of intrisics
...
This changes removes the CPU-arch support provider interfaces that were introduced with 87b6dbdd56
. That commit worsened the performance of the intrinsic methods because it resulted in a box when upcasting the System_SupportProvider value type to an interface, removing the potential for JIT to optimise the code path.
2023-04-02 15:17:28 +01:00
6b1dc2837a
test: bring coverage to 100% for Collections, Linq, Math, and Text
2023-04-02 04:16:33 +01:00
918b0b7612
ci: exclude cpu-arch support providers from coverage
2023-04-02 03:44:35 +01:00
08a4df0c64
perf: remove local method, exclude coverage for default arm
2023-04-02 02:56:50 +01:00
bfd3a5663d
[ci skip] ci: enable .NET analyzers for all projects
2023-04-02 01:11:14 +01:00
58c333a173
ci: exclude default arm of Rune.Repeat from coverage
2023-04-02 01:05:27 +01:00
586057ba3d
test: add tests for ReverseElements ( #73 )
2023-04-01 23:48:08 +01:00
6f16c0df3c
test: add tests for CorrectBoolean ( #73 )
2023-04-01 23:40:41 +01:00
34c49a2228
fix: fix bug introduced by d29663f081
...
Since value is a ref returned value, mutating it before returning was actually intended behaviour, since the reassignment causes the dictionary value to be mutated too.
Also, what game was this ref watching?!
2023-04-01 22:32:02 +01:00
8a4e053c85
fix: expose internals to X10D.Tests project
2023-04-01 22:12:16 +01:00
d29663f081
style: cleanup DictionaryExtensions
...
* Explicit type is used where type is not evident.
* Conditions are inlined with a ternary and the return value is used directly.
* System.Runtime.InteropServices is only imported for .NET >= 6.0
2023-04-01 22:05:10 +01:00
b79435211a
style: remove redundant else branches
2023-04-01 22:01:07 +01:00
87b6dbdd56
test: bring coverage to 100% for integer Unpack ( #70 )
2023-04-01 21:56:45 +01:00