I find it weird to put `{}` together. So I figured I would change it to have an empty line and ask for feedback :)

Beware: most of the test cases are not representative of real code, you almost never define blocks with no content in practice.
63 lines
1.1 KiB
Plaintext
63 lines
1.1 KiB
Plaintext
exports[`test exports_optional_prop.js 1`] = `
|
|
"// @flow
|
|
|
|
declare class Foo {
|
|
bar?: () => string
|
|
}
|
|
|
|
export {Foo};
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// @flow
|
|
|
|
declare class Foo { bar?: () => string }
|
|
|
|
export { Foo };
|
|
"
|
|
`;
|
|
|
|
exports[`test test.js 1`] = `
|
|
"class C {
|
|
C() { }
|
|
foo() { }
|
|
static bar() { }
|
|
qux() { this.constructor.x; }
|
|
}
|
|
C.x;
|
|
(new C).foo.x;
|
|
C.bar.x;
|
|
|
|
import {Foo} from \'./exports_optional_prop\';
|
|
const foo = new Foo();
|
|
(foo.bar(): string); // error, could be undefined
|
|
|
|
function f(x) {
|
|
(x.bar(): string); // error. caused by \`f(foo)\`; annotate x to track it down.
|
|
}
|
|
f(foo);
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
class C {
|
|
C() {
|
|
}
|
|
foo() {
|
|
}
|
|
static bar() {
|
|
}
|
|
qux() {
|
|
this.constructor.x;
|
|
}
|
|
}
|
|
C.x;
|
|
new C().foo.x;
|
|
C.bar.x;
|
|
|
|
import { Foo } from \"./exports_optional_prop\";
|
|
const foo = new Foo();
|
|
(foo.bar(): string);
|
|
// error, could be undefined
|
|
function f(x) {
|
|
(x.bar(): string); // error. caused by \`f(foo)\`; annotate x to track it down.
|
|
}
|
|
f(foo);
|
|
"
|
|
`;
|