Small refactoring

master
Paul Loyd 2017-11-28 20:43:22 +03:00
parent 418f997d31
commit 87979aa328
1 changed files with 33 additions and 35 deletions

View File

@ -1,40 +1,38 @@
import {invariant} from './utils';
import type {Type} from './types';
export default {
Object(params: (?Type)[]): ?Type {
invariant(params.length === 0);
function object(params: (?Type)[]): ?Type {
invariant(params.length === 0);
return {
kind: 'map',
keys: {kind: 'mixed'},
values: {kind: 'mixed'},
};
},
Buffer(params: (?Type)[]): ?Type {
invariant(params.length === 0);
return {
kind: 'reference',
to: ['Buffer'],
};
},
Array(params: (?Type)[]): ?Type {
invariant(params.length === 1);
invariant(params[0]);
return {
kind: 'array',
items: params[0],
};
},
$ReadOnlyArray(params: (?Type)[]): ?Type {
invariant(params.length === 1);
invariant(params[0]);
return {
kind: 'array',
items: params[0],
};
},
return {
kind: 'map',
keys: {kind: 'mixed'},
values: {kind: 'mixed'},
};
}
function buffer(params: (?Type)[]): ?Type {
invariant(params.length === 0);
return {
kind: 'reference',
to: ['Buffer'],
};
}
function array(params: (?Type)[]): ?Type {
invariant(params.length === 1);
invariant(params[0]);
return {
kind: 'array',
items: params[0],
};
}
export default {
Object: object,
Buffer: buffer,
Array: array,
$ReadOnlyArray: array,
};