Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Thanks to
bs.as
allowingundefined
in BS 8.2.0 I changed the API forunsetValue
functions tosetValueToNull
/SetValueToUndefined
which is a bit nicer to use I think and allows 0 runtime cost bindings.I also cleaned the bindings again, used the naming convention we agreed on for internal raw types and functions, and use bs.obj and bs.deriving abstract instead of Js.t objects to have a more robust type-check and to avoid undefined fields in objects.
I think we're pretty close to not having to clean objects to remove undefined fields, maybe all that's left is to change the type of connections.
The next round of cleanup could be focused on reducing the number of
Curry
calls in the generated JS.