1
0
mirror of https://github.com/oliverbooth/X10D synced 2024-11-10 03:25:41 +00:00
Commit Graph

632 Commits

Author SHA1 Message Date
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
5f21a2102d
feat: pack README.md in nupkg 2023-04-01 21:16:57 +01:00
e52e9096e0
feat: expose ComplexSqrt to all frameworks 2023-04-01 18:54:04 +01:00
5714ef73c1
test: 100% coverage on stream Read/Write methods 2023-04-01 18:17:50 +01:00
fa2236e72a
fix: write float, not double, in Stream.WriteSingle
This was a side effect of 2815c505c3 since I had copy/pasted the blocks. Oops.
2023-04-01 17:14:46 +01:00
990f860b39
perf: accept ReadOnlySpan<byte> in WriteInternal
This method does not mutate the input span in any way, and so its input can be read-only.
2023-04-01 17:11:47 +01:00
2815c505c3
fix: fix incorrect float/double being written for netstandard2.1
The call to _To_Bits yields the result containing the same bytes, but not the same value. This value was then stored as-is into the parameter, which causes a conversion on how the value is stored, ultimately causing the wrong value to be written to the stream.
2023-04-01 17:11:05 +01:00