Skip to content

refactor: use constants/float64/nan in stats/base/dists/levy/mode - #16381

Merged
kgryte merged 1 commit into
stdlib-js:developfrom
hardikguptaofficialgit:refactor/levy-mode-nan
Oct 30, 2026
Merged

kgryte merged 1 commit into
stdlib-js:developfrom
hardikguptaofficialgit:refactor/levy-mode-nan

Conversation

@hardikguptaofficialgit

@hardikguptaofficialgit hardikguptaofficialgit commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Resolves None.

Description

What is the purpose of this pull request?

This pull request:

  • replaces inline NaN generation in the C implementation of stats/base/dists/levy/mode with STDLIB_CONSTANT_FLOAT64_NAN
  • adds @stdlib/constants/float64/nan to the build, benchmark, and examples manifest entries

Related Issues

Does this pull request have any related issues?

This pull request has the following related issues:

Reference Packages

Did the content of this pull request follow one or more existing packages? Answering is optional.

This pull request followed these packages:

What carried over from the reference(s)?

  • include placement after is_nan.h, the macro swap, and the manifest dependency updates

What differed, or what did you have to work out yourself?

  • the build and examples entries only had is-nan, so the new dependency goes at the end there; the benchmark entry keeps eps last
  • README, benchmark, and example C files have no inline NaN, so src/main.c is the only source change

Questions

Any questions for reviewers of this pull request?

No.

Other

Any other information relevant to this pull request? This may include screenshots, references, and/or implementation notes.

Built src/main.c with gcc -Wall -Wextra and no warnings. mode( 0.0, 1.0 ) still gives ~0.333, and c <= 0 or NaN inputs still give NaN.

Checklist

Please ensure the following tasks are completed before submitting this pull request.

AI Assistance

When authoring the changes proposed in this PR, did you use any kind of AI assistance?

  • Yes
  • No

If you answered "yes" above, how did you use AI assistance?

  • Code generation (e.g., when writing an implementation or fixing a bug)
  • Test/benchmark generation
  • Documentation (including examples)
  • Research and understanding

Disclosure

If you answered "yes" to using AI assistance, please provide a short disclosure indicating how you used AI assistance. This helps reviewers determine how much scrutiny to apply when reviewing your contribution.

I used an AI assistant to make the edit following #16372, then checked the diff and compiled and ran the C implementation myself.


@stdlib-js/reviewers

@hardikguptaofficialgit
hardikguptaofficialgit requested review from a team and a balanced review from Copilot October 30, 2026 07:12

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review any files in this pull request. Check if the Files changed in this pull request are included in default exclusions.

@stdlib-bot stdlib-bot added Statistics Issue or pull request related to statistical functionality. Needs Review A pull request which needs code review. Good First PR A pull request resolving a Good First Issue. and removed Needs Review A pull request which needs code review. labels Oct 30, 2026
@stdlib-bot

Copy link
Copy Markdown
Contributor

Coverage Report

Package Statements Branches Functions Lines
stats/base/dists/levy/mode $\\color{green}175/175$
$\\color{green}+100.00\\%$
$\\color{green}9/9$
$\\color{green}+100.00\\%$
$\\color{green}2/2$
$\\color{green}+100.00\\%$
$\\color{green}175/175$
$\\color{green}+100.00\\%$

The above coverage report was generated for the changes in this PR.

@kgryte kgryte added difficulty: 1 Low degree of difficulty. Should be straightforward to implement and/or resolve. review: 5 and removed Needs Review A pull request which needs code review. labels Oct 30, 2026

@kgryte kgryte left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@kgryte
kgryte merged commit 729ec95 into stdlib-js:develop Oct 30, 2026
135 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

difficulty: 1 Low degree of difficulty. Should be straightforward to implement and/or resolve. Good First PR A pull request resolving a Good First Issue. review: 5 Statistics Issue or pull request related to statistical functionality.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants