Files
test-repo/tests/flow/const_params/test.js
T
Christopher Chedeau 3375cfe605 Move tests around (#454)
* new_tests

* move_all_clobbered_tests

* remove all the tests that no longer exist

* re-run flow tests

* Move all the flow tests to tests/flow and prettier to tests/

* Move prettier tests to their own folders

* Add jsfmt files

* run prettier snapshot tests
2017-01-24 14:35:37 -08:00

30 lines
642 B
JavaScript

/**
* test handling of const params
* - reassignment prohibited
* - durable refinements
*
* Currently gated in .flowconfig:
*
* [options]
* experimental.const_params
*
* Syntax to follow
*
* @flow
*/
function cannot_reassign(x: string) {
x = "hey"; // error, const param cannot be reassigned
}
// Note: const params use the same machinery as explicit
// const bindings, which are tested more extensively elsewhere.
// Here we're just making sure the machinery is hooked up.
//
function durable_refi(x: ?number) {
if (x) {
// ok: if x is truthy here, it's truthy everywhere
return () => { var y:number = x; };
}
}