All files / node_modules/js-yaml/lib/js-yaml common.js

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