rescript-compiler icon indicating copy to clipboard operation
rescript-compiler copied to clipboard

The compiler for ReScript.

Results 500 rescript-compiler issues
Sort by recently updated
recently updated
newest added

A lot of the recent features in rescript make use of subtyping in various ways. But, the error messages around subtyping aren't great, they mostly just say that x is...

```res type t0 = {x?: int} let a = None let fa = v => switch v { | Some(v) => {x: v} | None => {x: ?a} } Js.log(fa(a))...

I'm proposing a generic JSX transform where you bring your own JSX assets (functions to call, types for JSX nodes, etc), that ReScript can delegate to. This will both enable...

I encountered this issue while trying to migrate from `10.1.4` to `11.0.0`. These are the possible `imports` depending on how the module was used (more in reproduction repo): ```ts import...

Since the new ReScript allows spreading variants in the definitions, should we also be able to match them like polymorphic variants? ###### Polymorphic variants ```res type ex1A = [#X |...

It would be great if we could special case code generation so that trailing `undefined`s are omitted from function invocations. Example: Consider the following bindings (uncurried mode): ```rescript type dateFormatOptions...

Imagin some code generator that transforms GraphQL schema into ReScript type definitions For given GraphQL schema: ```graphql interface Node { id: ID! } type User implements Node { id: ID!...

enhancement

### Discussed in https://github.com/rescript-lang/rescript-compiler/discussions/6273 Originally posted by **glennsl** May 28, 2023 I've been trying to model GeoJSON using rescript@11 types, just to see if I can, and am stumbling on...

enhancement

Use case: to represent GraphQL union value ```res type user = { id: string, } type chat = { id: string, } type message = { id: string, } @tag("__typename")...

enhancement

## Motivation JavaScript doesn't support labeled arguments, but ReScript does. So `let add: (~a, ~b)` in ReScript compiled to `function add(a, b)`, so the labels `a` and `b` cannot be...