stdlib-js / stdlib-js/stdlib

[RFC]: add `fill` method to `array/fixed-endian-factory`

オープン
#3,139 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
Accepted difficulty: 2 Feature Good First Issue Help Wanted JavaScript priority: Normal RFC
主要言語
JavaScript
スター
6k
フォーク
1.3k
平均マージ
1日 3時間
マージ済み PR(30日)
611

説明

### Description

This RFC proposes adding support for a `fill` method to [`@stdlib/array/fixed-endian-factory`](https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/array/fixed-endian-factory).

This method is the equivalent of the [`TypedArray.prototype.fill`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/fill) method, but for fixed-endian typed arrays.

When adding support, the following tasks should be completed:

1. The `./lib/main.js` file should be updated with the added method.
2. A new test file should be created which includes unit tests testing against expected behavior.
3. Two benchmark files should be added: one measuring baseline performance and another measuring performance as the array length increases.
4. The README should be updated to include documentation for the added method.

To provide a concrete example of what a PR adding the desired method should contain, see https://github.com/stdlib-js/stdlib/commit/956a4624c788689b1bca285856b987ea3aa32eb6, which is a commit adding `forEach` support. This should provide an idea of what is expected.

For an example of specialized typed arrays having customized methods, see

- [`@stdlib/array/bool`](https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/array/bool)
- [`@stdlib/array/complex128`](https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/array/complex128)
- [`@stdlib/array/complex64`](https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/array/complex64)

While the method proposed in this RFC will likely **not** match the implementations found in the above packages, those packages should provide a conceptual idea of what is desired. Do **not** simply copy-paste the code found in those packages.

### Notes

- If you are interested in contributing a PR which addresses this RFC and are a **first-time contributor** or not yet familiar with our project conventions, please do **not** submit LLM-generated code. Please consult our [contributing guidelines](https://github.com/stdlib-js/stdlib/blob/develop/CONTRIBUTING.md) and the associated [development guide](https://github.com/stdlib-js/stdlib/blob/develop/docs/development.md). Failure to respect project conventions will result in your PR being rejected without review. Thank you for understanding!

### Checklist

- [X] I have read and understood the [Code of Conduct](https://github.com/stdlib-js/stdlib/blob/develop/CODE_OF_CONDUCT.md).
- [X] Searched for existing issues and pull requests.
- [X] The issue name begins with `[RFC]:`.

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

Start with lib/main.js in @stdlib/array/fixed-endian-factory and compare the referenced forEach commit and specialized typed-array packages. Add the method, a unit-test file, two benchmark files, and README documentation covering the expected TypedArray.prototype.fill behavior. Done means the tests, benchmarks, and documentation are included.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
javascript
領域
api
issue の種類
機能追加
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
明確に書かれている
初心者へのやさしさ
38/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。