rescript-compiler
rescript-compiler copied to clipboard
The compiler for ReScript.
See https://github.com/jmagaram/gentype-issue. Look at `TestModule.gen.tsx`. Notice that the function result from the `mathOperation` is type `a` for the React component, which is a type error. There is no such problem...
When one forgets to configure the JSX settings in `rescript.json` and tries to compile a ReScript source file containing JSX, one gets the following error: > Fatal error: exception Failure("Pexp_jsx_element...
I wonder if this is normal but it has caught me off-guard a few times. The gist: `"🚀" == (#"🚀" :> string)` is false. See https://rescript-lang.org/try?version=v12.0.0-alpha.8&module=esmodule&code=C4TwDgpgBMULxQNoGIBEheDcAF7qA+yQC6AUADYSwAeAXDPFGlqqeVCDcAvkQFIDOAdCQD2AcwAUGbPARiKUKgD4ovYACcAlgDsRASh08Bw8ahCppUMSHlKVG7XqA
We currently have the following special directives for external function definitions: ```rescript @return(nullable) external someFunc1: unit => option = "someFunc" @return(null_undefined_to_opt) external someFunc2: unit => option = "someFunc" @return(undefined_to_opt) external...
Hi there, Could it be possible to not output any JS code when doing `external` only bindings inside a nested module. [Example](https://rescript-lang.org/try?version=v11.1.4&code=C4TwDgpgBAhgdiAUI0koBsCWBnYE4QBOyq0EAbvsACoyEDmEwUAvFAN4C+yAtgPYATAK7poAUUpwadRszbtEUKAAFs+AYqgQAHnkJwY6WAIESqAGRx4ChAFxQAFBSq0GTADRRchTHHqesXHwiAEpWAD4oIThMOU0lACIYEzMpSyCbBMRuIA) ```res type any type listener type eventTarget =...
As suggested in #7435 and various other places, we should move from our "homegrown" JSON parser to yojson.
As a further step towards what's outlined in #6183: - Move the runtime artifacts (including Js, Belt, ...) from the `rescript` npm package into `@rescript/runtime`. - So behavior will always...
I don't have a minimal repro as I only have a huge couple of files from production code rescript.json has .res.js as suffix if i put @genType on a function,...
This was observed in v11: If I have a component `Test.res` with the following code: ```rescript @react.component let make = (~size=#large) => { let className = switch size { |...
When JSX preserve mode is active, the import statement ```js import * as JsxRuntime from "react/jsx-runtime"; ``` is still emitted to the JS output, but is unused there.