Skip to content

Commit d9f2071

Browse files
committed
Sync changes to upstream
1 parent b5af774 commit d9f2071

File tree

16 files changed

+89
-0
lines changed

16 files changed

+89
-0
lines changed

Makefile

+1
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ build-flowlib-archive:
118118

119119
copy-flow-files: build-flow $(FILES_TO_COPY)
120120
mkdir -p bin
121+
cp -r examples bin/examples
121122
ifeq ($(OS), Linux)
122123
objcopy --add-section flowlib=bin/flowlib.tar.gz _build/src/flow.native bin/flow
123124
else

examples/01_HelloWorld/.flowconfig

Whitespace-only changes.
+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
/* @flow */
2+
3+
function foo(x) {
4+
return x*10;
5+
}
6+
7+
// This is fine, because we're passing a number now
8+
foo(10);

examples/01_HelloWorld/hello.js

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
/* @flow */
2+
3+
function foo(x) {
4+
return x*10;
5+
}
6+
7+
foo("Hello, world!");

examples/02_TypeAnnotations/.flowconfig

Whitespace-only changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
/* @flow */
2+
3+
// Changing the return type to number fixes the error
4+
function foo(x: string, y: number): number {
5+
return x.length * y;
6+
}
7+
8+
foo("Hello", 42);
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
/* @flow */
2+
3+
function foo(x: string, y: number): string {
4+
return x.length * y;
5+
}
6+
7+
foo("Hello", 42);

examples/03_Null/.flowconfig

Whitespace-only changes.

examples/03_Null/answer/nulls.js

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
/* @flow */
2+
3+
function length(x) {
4+
if (x !== null) {
5+
return x.length;
6+
} else {
7+
return 0;
8+
}
9+
}
10+
11+
var total = length("Hello") + length(null);

examples/03_Null/nulls.js

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
/* @flow */
2+
3+
function length(x) {
4+
return x.length;
5+
}
6+
7+
var total = length("Hello") + length(null);

examples/04_Arrays/.flowconfig

Whitespace-only changes.

examples/04_Arrays/answer/arrays.js

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
/* @flow */
2+
3+
function total(numbers: Array<number>) {
4+
var result = 0;
5+
for (var i = 0; i < numbers.length; i++) {
6+
result += numbers[i];
7+
}
8+
return result;
9+
}
10+
11+
total([1, 2, 3, 4]);

examples/04_Arrays/arrays.js

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
/* @flow */
2+
3+
function total(numbers: Array<number>) {
4+
var result = 0;
5+
for (var i = 0; i < numbers.length; i++) {
6+
result += numbers[i];
7+
}
8+
return result;
9+
}
10+
11+
total([1, 2, 3, "Hello"]);

examples/05_DynamicCode/.flowconfig

Whitespace-only changes.
+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
/* @flow */
2+
3+
function foo(x) {
4+
if (typeof(x) === 'string') {
5+
return x.length;
6+
} else {
7+
return x;
8+
}
9+
}
10+
11+
var res = foo("Hello") + foo(42);

examples/05_DynamicCode/dynamic.js

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
/* @flow */
2+
3+
function foo(x) {
4+
return x.length;
5+
}
6+
7+
var res = foo("Hello") + foo(42);

0 commit comments

Comments
 (0)