Initial commit
[yaffs-website] / node_modules / js-yaml / lib / js-yaml / common.js
1 'use strict';
2
3
4 function isNothing(subject) {
5   return (typeof subject === 'undefined') || (subject === null);
6 }
7
8
9 function isObject(subject) {
10   return (typeof subject === 'object') && (subject !== null);
11 }
12
13
14 function toArray(sequence) {
15   if (Array.isArray(sequence)) return sequence;
16   else if (isNothing(sequence)) return [];
17
18   return [ sequence ];
19 }
20
21
22 function extend(target, source) {
23   var index, length, key, sourceKeys;
24
25   if (source) {
26     sourceKeys = Object.keys(source);
27
28     for (index = 0, length = sourceKeys.length; index < length; index += 1) {
29       key = sourceKeys[index];
30       target[key] = source[key];
31     }
32   }
33
34   return target;
35 }
36
37
38 function repeat(string, count) {
39   var result = '', cycle;
40
41   for (cycle = 0; cycle < count; cycle += 1) {
42     result += string;
43   }
44
45   return result;
46 }
47
48
49 function isNegativeZero(number) {
50   return (number === 0) && (Number.NEGATIVE_INFINITY === 1 / number);
51 }
52
53
54 module.exports.isNothing      = isNothing;
55 module.exports.isObject       = isObject;
56 module.exports.toArray        = toArray;
57 module.exports.repeat         = repeat;
58 module.exports.isNegativeZero = isNegativeZero;
59 module.exports.extend         = extend;