Skip to content

Use optional arguments in bindings #206

Closed
@cknitt

Description

@cknitt

Many JavaScript APIs have methods with trailing optional args and are currently bound in Core as multiple different functions for different argument counts.

However, since ReScript 11, we can have trailing optional args in functions/bindings without needing a () at the end anymore. This allows us to create more idiomatic bindings for such cases, corresponding more closely to the original JS API.

I have already created the following PRs for a some such cases:

There are quite a few other bindings left that should be changed in a similar way (e.g., Date.make).

For some such functions, the trailing undefineds emitted by the 11.0 compiler for the omitted arguments will be problematic and therefore ReScript 11.1 will be required.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions