Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add readmes for System.Runtime, System.Runtime.Numerics, System.Buffers, System.Runtime.Intrinsics #77332

Merged
merged 10 commits into from
Nov 30, 2022
16 changes: 16 additions & 0 deletions src/libraries/System.Buffers/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# System.Buffers
Contains types used in creating and managing memory buffers, such as those represented by `Span<T>` and `Memory<T>`.

Documentation can be found here: https://learn.microsoft.com/en-us/dotnet/api/system.buffers.

## Contribution Bar
- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)

See the [Help Wanted](https://github.com/dotnet/runtime/issues?q=is%3Aissue+is%3Aopen+label%3Aarea-System.Buffers+label%3A%22help+wanted%22+) issues.

## Source
* [../../coreclr/System.Private.CoreLib/src/System](../../coreclr/System.Private.CoreLib/src/System)
dakersnar marked this conversation as resolved.
Show resolved Hide resolved
* Tests for this library live in [./tests](./tests). TODO do they live anywhere else?
dakersnar marked this conversation as resolved.
Show resolved Hide resolved

## Deployment
[System.Buffers](https://www.nuget.org/packages/System.Buffers) is included in the shared framework. The package does not need to be installed into any project compatible with .NET Standard 2.1; it only needs to be installed when targeting .NET Standard 2.0.
20 changes: 20 additions & 0 deletions src/libraries/System.Runtime.Intrinsics/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# System.Runtime.Intrinsics
Contains types used to create and convey register states in various sizes and formats for use with instruction-set extensions. Also exposes select instruction-set extensions for various architectures (`x86`, `Arm`, `Wasm`).

Documentation can be found here: https://learn.microsoft.com/en-us/dotnet/api/system.runtime.intrinsics.

## Contribution Bar
- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)

See the [Help Wanted](https://github.com/dotnet/runtime/issues?q=is%3Aissue+is%3Aopen+label%3Aarea-System.Runtime.Intrinsics+label%3A%22help+wanted%22+) issues.

## Source
* `Vector64/128/256/512`: [../../coreclr/System.Private.CoreLib/src/System/Runtime/Intrinsics](../../coreclr/System.Private.CoreLib/src/System/Runtime/Intrinsics)
* Tests live in [./tests/Vectors](./tests/Vectors)
* `Arm` intrinsics: [../../coreclr/System.Private.CoreLib/src/System/Runtime/Intrinsics/Arm](../../coreclr/System.Private.CoreLib/src/System/Runtime/Intrinsics/Arm)
dakersnar marked this conversation as resolved.
Show resolved Hide resolved
* `Wasm` intrinsics: [../../coreclr/System.Private.CoreLib/src/System/Runtime/Intrinsics/Wasm](../../coreclr/System.Private.CoreLib/src/System/Runtime/Intrinsics/Wasm)
* `x86` intrinsics: [../../coreclr/System.Private.CoreLib/src/System/Runtime/Intrinsics/x86](../../coreclr/System.Private.CoreLib/src/System/Runtime/Intrinsics/x86)
TODO where do other tests for this library live?
dakersnar marked this conversation as resolved.
Show resolved Hide resolved

## Deployment
`System.Runtime.Intrinsics` is included in the shared framework.
25 changes: 25 additions & 0 deletions src/libraries/System.Runtime.Numerics/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# System.Runtime.Numerics
Contains additional numeric types that complement the numeric primitives (such as `Byte`, `Double`, and `Int32`) that are defined by .NET. This includes:

* The `BigInteger` structure, which is a non-primitive integral type that supports arbitrarily large integers.
* The `Complex` structure, which represents a complex number. A complex number is a number in the form *a* + *b*i, where *a* is the real part, and *b* is the imaginary part.
* The SIMD-enabled vector types, which include `Vector2`, `Vector3`, `Vector4`, `Matrix3x2`, `Matrix4x4`, `Plane`, and `Quaternion`.

Documentation can be found here: https://learn.microsoft.com/en-us/dotnet/api/system.numerics.

This area also includes all of the interfaces that make up Generic Math, which is discussed more here: https://learn.microsoft.com/en-us/dotnet/standard/generics/math.

## Contribution Bar
- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)

See the [Help Wanted](https://github.com/dotnet/runtime/issues?q=is%3Aissue+is%3Aopen+label%3Aarea-System.Numerics+label%3A%22help+wanted%22+) issues.


## Source
* `BigInteger` and `Complex`: [./src/System/Numerics](./src/System/Numerics).
* Everything else: [../../coreclr/System.Private.CoreLib/src/System/Numerics](../../coreclr/System.Private.CoreLib/src/System/Numerics)
dakersnar marked this conversation as resolved.
Show resolved Hide resolved
dakersnar marked this conversation as resolved.
Show resolved Hide resolved
* TODO: Where do the tests for these live?
dakersnar marked this conversation as resolved.
Show resolved Hide resolved
TODO: am I missing anything? For example, should we mention the globalization stuff for BigInteger that lives in [./src/System/Globalization](./src/System/Globalization)?
dakersnar marked this conversation as resolved.
Show resolved Hide resolved

## Deployment
[System.Runtime.Numerics](https://www.nuget.org/packages/System.Runtime.Numerics) is included in the shared framework. The package does not need to be installed into any project compatible with .NET Standard 2.0.
18 changes: 18 additions & 0 deletions src/libraries/System.Runtime/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# System.Runtime
Contains fundamental classes and base classes that define commonly-used value and reference data types, events and event handlers, interfaces, attributes, and processing exceptions.

Documentation can be found here: https://learn.microsoft.com/en-us/dotnet/api/system?view=net-7.0.

TODO should we have a README for System.Private.CoreLib?
dakersnar marked this conversation as resolved.
Show resolved Hide resolved

## Contribution Bar
- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)

See the [Help Wanted](https://github.com/dotnet/runtime/issues?q=is%3Aissue+is%3Aopen+label%3Aarea-System.Runtime+label%3A%22help+wanted%22+) issues.

## Source
* [../../coreclr/System.Private.CoreLib/src/System](../../coreclr/System.Private.CoreLib/src/System)
dakersnar marked this conversation as resolved.
Show resolved Hide resolved
dakersnar marked this conversation as resolved.
Show resolved Hide resolved
* Tests for this library live in [./tests](./tests). TODO do they live anywhere else?
dakersnar marked this conversation as resolved.
Show resolved Hide resolved

## Deployment
[System.Runtime](https://www.nuget.org/packages/System.Runtime) is included in the shared framework. The package does not need to be installed into any project compatible with .NET Standard 2.0.