|
|
3 |
__coverage__['build/json-stringify-shim/json-stringify-shim.js'] = {"path":"build/json-stringify-shim/json-stringify-shim.js","s":{"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0},"b":{"1":[0,0,0],"2":[0,0],"3":[0,0],"4":[0,0],"5":[0,0],"6":[0,0],"7":[0,0],"8":[0,0],"9":[0,0],"10":[0,0],"11":[0,0],"12":[0,0],"13":[0,0],"14":[0,0],"15":[0,0],"16":[0,0],"17":[0,0],"18":[0,0],"19":[0,0],"20":[0,0,0,0,0,0,0],"21":[0,0],"22":[0,0],"23":[0,0],"24":[0,0],"25":[0,0],"26":[0,0],"27":[0,0],"28":[0,0],"29":[0,0],"30":[0,0],"31":[0,0]},"f":{"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0},"fnMap":{"1":{"name":"(anonymous_1)","line":1,"loc":{"start":{"line":1,"column":31},"end":{"line":1,"column":50}}},"2":{"name":"_type","line":64,"loc":{"start":{"line":64,"column":0},"end":{"line":64,"column":18}}},"3":{"name":"_char","line":74,"loc":{"start":{"line":74,"column":0},"end":{"line":74,"column":18}}},"4":{"name":"_string","line":90,"loc":{"start":{"line":90,"column":0},"end":{"line":90,"column":20}}},"5":{"name":"_indent","line":105,"loc":{"start":{"line":105,"column":0},"end":{"line":105,"column":26}}},"6":{"name":"_stringify","line":109,"loc":{"start":{"line":109,"column":19},"end":{"line":109,"column":50}}},"7":{"name":"_serialize","line":142,"loc":{"start":{"line":142,"column":4},"end":{"line":142,"column":31}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":233,"column":50}},"2":{"start":{"line":4,"column":0},"end":{"line":61,"column":34}},"3":{"start":{"line":64,"column":0},"end":{"line":71,"column":1}},"4":{"start":{"line":65,"column":4},"end":{"line":65,"column":21}},"5":{"start":{"line":66,"column":4},"end":{"line":70,"column":27}},"6":{"start":{"line":74,"column":0},"end":{"line":87,"column":1}},"7":{"start":{"line":75,"column":4},"end":{"line":78,"column":5}},"8":{"start":{"line":76,"column":8},"end":{"line":76,"column":78}},"9":{"start":{"line":77,"column":8},"end":{"line":77,"column":27}},"10":{"start":{"line":81,"column":4},"end":{"line":84,"column":5}},"11":{"start":{"line":82,"column":8},"end":{"line":82,"column":53}},"12":{"start":{"line":83,"column":8},"end":{"line":83,"column":40}},"13":{"start":{"line":86,"column":4},"end":{"line":86,"column":20}},"14":{"start":{"line":90,"column":0},"end":{"line":102,"column":1}},"15":{"start":{"line":91,"column":4},"end":{"line":91,"column":15}},"16":{"start":{"line":95,"column":4},"end":{"line":98,"column":5}},"17":{"start":{"line":96,"column":8},"end":{"line":96,"column":25}},"18":{"start":{"line":97,"column":8},"end":{"line":97,"column":38}},"19":{"start":{"line":101,"column":4},"end":{"line":101,"column":54}},"20":{"start":{"line":105,"column":0},"end":{"line":107,"column":1}},"21":{"start":{"line":106,"column":4},"end":{"line":106,"column":35}},"22":{"start":{"line":109,"column":0},"end":{"line":226,"column":2}},"23":{"start":{"line":110,"column":4},"end":{"line":112,"column":5}},"24":{"start":{"line":111,"column":8},"end":{"line":111,"column":25}},"25":{"start":{"line":114,"column":4},"end":{"line":118,"column":18}},"26":{"start":{"line":120,"column":4},"end":{"line":120,"column":26}},"27":{"start":{"line":121,"column":4},"end":{"line":121,"column":49}},"28":{"start":{"line":123,"column":4},"end":{"line":125,"column":5}},"29":{"start":{"line":124,"column":8},"end":{"line":124,"column":22}},"30":{"start":{"line":128,"column":4},"end":{"line":134,"column":5}},"31":{"start":{"line":129,"column":8},"end":{"line":129,"column":17}},"32":{"start":{"line":130,"column":8},"end":{"line":132,"column":9}},"33":{"start":{"line":131,"column":12},"end":{"line":131,"column":29}},"34":{"start":{"line":133,"column":8},"end":{"line":133,"column":16}},"35":{"start":{"line":138,"column":4},"end":{"line":140,"column":45}},"36":{"start":{"line":142,"column":4},"end":{"line":222,"column":5}},"37":{"start":{"line":143,"column":8},"end":{"line":147,"column":31}},"38":{"start":{"line":153,"column":8},"end":{"line":157,"column":9}},"39":{"start":{"line":154,"column":12},"end":{"line":154,"column":38}},"40":{"start":{"line":155,"column":15},"end":{"line":157,"column":9}},"41":{"start":{"line":156,"column":12},"end":{"line":156,"column":33}},"42":{"start":{"line":159,"column":8},"end":{"line":161,"column":9}},"43":{"start":{"line":160,"column":12},"end":{"line":160,"column":47}},"44":{"start":{"line":163,"column":8},"end":{"line":165,"column":9}},"45":{"start":{"line":164,"column":12},"end":{"line":164,"column":29}},"46":{"start":{"line":167,"column":8},"end":{"line":177,"column":9}},"47":{"start":{"line":171,"column":27},"end":{"line":171,"column":33}},"48":{"start":{"line":172,"column":27},"end":{"line":172,"column":49}},"49":{"start":{"line":173,"column":27},"end":{"line":173,"column":71}},"50":{"start":{"line":174,"column":27},"end":{"line":174,"column":46}},"51":{"start":{"line":175,"column":27},"end":{"line":175,"column":39}},"52":{"start":{"line":176,"column":27},"end":{"line":176,"column":44}},"53":{"start":{"line":180,"column":8},"end":{"line":184,"column":9}},"54":{"start":{"line":181,"column":12},"end":{"line":183,"column":13}},"55":{"start":{"line":182,"column":16},"end":{"line":182,"column":70}},"56":{"start":{"line":186,"column":8},"end":{"line":186,"column":29}},"57":{"start":{"line":189,"column":8},"end":{"line":189,"column":26}},"58":{"start":{"line":191,"column":8},"end":{"line":208,"column":9}},"59":{"start":{"line":192,"column":12},"end":{"line":194,"column":13}},"60":{"start":{"line":193,"column":16},"end":{"line":193,"column":52}},"61":{"start":{"line":197,"column":12},"end":{"line":197,"column":30}},"62":{"start":{"line":198,"column":12},"end":{"line":198,"column":18}},"63":{"start":{"line":200,"column":12},"end":{"line":207,"column":13}},"64":{"start":{"line":201,"column":16},"end":{"line":206,"column":17}},"65":{"start":{"line":202,"column":20},"end":{"line":202,"column":45}},"66":{"start":{"line":203,"column":20},"end":{"line":205,"column":21}},"67":{"start":{"line":204,"column":24},"end":{"line":204,"column":56}},"68":{"start":{"line":211,"column":8},"end":{"line":211,"column":20}},"69":{"start":{"line":213,"column":8},"end":{"line":221,"column":9}},"70":{"start":{"line":214,"column":12},"end":{"line":216,"column":78}},"71":{"start":{"line":218,"column":12},"end":{"line":220,"column":49}},"72":{"start":{"line":225,"column":4},"end":{"line":225,"column":33}},"73":{"start":{"line":230,"column":0},"end":{"line":230,"column":31}}},"branchMap":{"1":{"line":66,"type":"binary-expr","locations":[{"start":{"line":66,"column":12},"end":{"line":66,"column":25}},{"start":{"line":67,"column":12},"end":{"line":67,"column":38}},{"start":{"line":68,"column":13},"end":{"line":70,"column":25}}]},"2":{"line":68,"type":"cond-expr","locations":[{"start":{"line":69,"column":17},"end":{"line":69,"column":34}},{"start":{"line":70,"column":16},"end":{"line":70,"column":25}}]},"3":{"line":69,"type":"cond-expr","locations":[{"start":{"line":69,"column":21},"end":{"line":69,"column":27}},{"start":{"line":69,"column":30},"end":{"line":69,"column":34}}]},"4":{"line":75,"type":"if","locations":[{"start":{"line":75,"column":4},"end":{"line":75,"column":4}},{"start":{"line":75,"column":4},"end":{"line":75,"column":4}}]},"5":{"line":81,"type":"if","locations":[{"start":{"line":81,"column":4},"end":{"line":81,"column":4}},{"start":{"line":81,"column":4},"end":{"line":81,"column":4}}]},"6":{"line":110,"type":"if","locations":[{"start":{"line":110,"column":4},"end":{"line":110,"column":4}},{"start":{"line":110,"column":4},"end":{"line":110,"column":4}}]},"7":{"line":114,"type":"cond-expr","locations":[{"start":{"line":114,"column":35},"end":{"line":114,"column":36}},{"start":{"line":114,"column":39},"end":{"line":114,"column":43}}]},"8":{"line":115,"type":"binary-expr","locations":[{"start":{"line":115,"column":19},"end":{"line":115,"column":60}},{"start":{"line":115,"column":64},"end":{"line":115,"column":66}}]},"9":{"line":123,"type":"if","locations":[{"start":{"line":123,"column":4},"end":{"line":123,"column":4}},{"start":{"line":123,"column":4},"end":{"line":123,"column":4}}]},"10":{"line":123,"type":"binary-expr","locations":[{"start":{"line":123,"column":8},"end":{"line":123,"column":16}},{"start":{"line":123,"column":20},"end":{"line":123,"column":31}}]},"11":{"line":128,"type":"if","locations":[{"start":{"line":128,"column":4},"end":{"line":128,"column":4}},{"start":{"line":128,"column":4},"end":{"line":128,"column":4}}]},"12":{"line":138,"type":"cond-expr","locations":[{"start":{"line":139,"column":16},"end":{"line":139,"column":69}},{"start":{"line":140,"column":16},"end":{"line":140,"column":44}}]},"13":{"line":140,"type":"binary-expr","locations":[{"start":{"line":140,"column":17},"end":{"line":140,"column":22}},{"start":{"line":140,"column":26},"end":{"line":140,"column":31}}]},"14":{"line":146,"type":"cond-expr","locations":[{"start":{"line":146,"column":28},"end":{"line":146,"column":36}},{"start":{"line":146,"column":39},"end":{"line":146,"column":44}}]},"15":{"line":153,"type":"if","locations":[{"start":{"line":153,"column":8},"end":{"line":153,"column":8}},{"start":{"line":153,"column":8},"end":{"line":153,"column":8}}]},"16":{"line":153,"type":"binary-expr","locations":[{"start":{"line":153,"column":12},"end":{"line":153,"column":27}},{"start":{"line":153,"column":31},"end":{"line":153,"column":55}}]},"17":{"line":155,"type":"if","locations":[{"start":{"line":155,"column":15},"end":{"line":155,"column":15}},{"start":{"line":155,"column":15},"end":{"line":155,"column":15}}]},"18":{"line":159,"type":"if","locations":[{"start":{"line":159,"column":8},"end":{"line":159,"column":8}},{"start":{"line":159,"column":8},"end":{"line":159,"column":8}}]},"19":{"line":163,"type":"if","locations":[{"start":{"line":163,"column":8},"end":{"line":163,"column":8}},{"start":{"line":163,"column":8},"end":{"line":163,"column":8}}]},"20":{"line":167,"type":"switch","locations":[{"start":{"line":168,"column":12},"end":{"line":168,"column":26}},{"start":{"line":171,"column":12},"end":{"line":171,"column":33}},{"start":{"line":172,"column":12},"end":{"line":172,"column":49}},{"start":{"line":173,"column":12},"end":{"line":173,"column":71}},{"start":{"line":174,"column":12},"end":{"line":174,"column":46}},{"start":{"line":175,"column":12},"end":{"line":175,"column":39}},{"start":{"line":176,"column":12},"end":{"line":176,"column":44}}]},"21":{"line":173,"type":"cond-expr","locations":[{"start":{"line":173,"column":52},"end":{"line":173,"column":63}},{"start":{"line":173,"column":66},"end":{"line":173,"column":70}}]},"22":{"line":181,"type":"if","locations":[{"start":{"line":181,"column":12},"end":{"line":181,"column":12}},{"start":{"line":181,"column":12},"end":{"line":181,"column":12}}]},"23":{"line":191,"type":"if","locations":[{"start":{"line":191,"column":8},"end":{"line":191,"column":8}},{"start":{"line":191,"column":8},"end":{"line":191,"column":8}}]},"24":{"line":193,"type":"binary-expr","locations":[{"start":{"line":193,"column":23},"end":{"line":193,"column":43}},{"start":{"line":193,"column":47},"end":{"line":193,"column":51}}]},"25":{"line":197,"type":"binary-expr","locations":[{"start":{"line":197,"column":19},"end":{"line":197,"column":20}},{"start":{"line":197,"column":24},"end":{"line":197,"column":29}}]},"26":{"line":201,"type":"if","locations":[{"start":{"line":201,"column":16},"end":{"line":201,"column":16}},{"start":{"line":201,"column":16},"end":{"line":201,"column":16}}]},"27":{"line":203,"type":"if","locations":[{"start":{"line":203,"column":20},"end":{"line":203,"column":20}},{"start":{"line":203,"column":20},"end":{"line":203,"column":20}}]},"28":{"line":213,"type":"if","locations":[{"start":{"line":213,"column":8},"end":{"line":213,"column":8}},{"start":{"line":213,"column":8},"end":{"line":213,"column":8}}]},"29":{"line":213,"type":"binary-expr","locations":[{"start":{"line":213,"column":12},"end":{"line":213,"column":17}},{"start":{"line":213,"column":21},"end":{"line":213,"column":29}}]},"30":{"line":214,"type":"cond-expr","locations":[{"start":{"line":215,"column":16},"end":{"line":215,"column":77}},{"start":{"line":216,"column":16},"end":{"line":216,"column":77}}]},"31":{"line":218,"type":"cond-expr","locations":[{"start":{"line":219,"column":16},"end":{"line":219,"column":48}},{"start":{"line":220,"column":16},"end":{"line":220,"column":48}}]}},"code":["(function () { YUI.add('json-stringify-shim', function (Y, NAME) {","","// All internals kept private for security reasons","var Lang = Y.Lang,"," isFunction= Lang.isFunction,"," isObject = Lang.isObject,"," isArray = Lang.isArray,"," _toStr = Object.prototype.toString,"," UNDEFINED = 'undefined',"," OBJECT = 'object',"," NULL = 'null',"," STRING = 'string',"," NUMBER = 'number',"," BOOLEAN = 'boolean',"," DATE = 'date',"," _allowable= {"," 'undefined' : UNDEFINED,"," 'string' : STRING,"," '[object String]' : STRING,"," 'number' : NUMBER,"," '[object Number]' : NUMBER,"," 'boolean' : BOOLEAN,"," '[object Boolean]' : BOOLEAN,"," '[object Date]' : DATE,"," '[object RegExp]' : OBJECT"," },"," EMPTY = '',"," OPEN_O = '{',"," CLOSE_O = '}',"," OPEN_A = '[',"," CLOSE_A = ']',"," COMMA = ',',"," COMMA_CR = \",\\n\","," CR = \"\\n\","," COLON = ':',"," COLON_SP = ': ',"," QUOTE = '\"',",""," // Regex used to capture characters that need escaping before enclosing"," // their containing string in quotes."," _SPECIAL = /[\\x00-\\x07\\x0b\\x0e-\\x1f\\x7f-\\x9f\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g,",""," // Character substitution map for common escapes and special characters."," _COMMON = ["," [/\\\\/g, '\\\\\\\\'],"," [/\\\"/g, '\\\\\"'],"," [/\\x08/g, '\\\\b'],"," [/\\x09/g, '\\\\t'],"," [/\\x0a/g, '\\\\n'],"," [/\\x0c/g, '\\\\f'],"," [/\\x0d/g, '\\\\r']"," ],"," _COMMON_LENGTH = _COMMON.length,",""," // In-process optimization for special character escapes that haven't yet"," // been promoted to _COMMON"," _CHAR = {},",""," // Per-char counter to determine if it's worth fast tracking a special"," // character escape sequence."," _CHAR_COUNT, _CACHE_THRESHOLD;","","// Utility function used to determine how to serialize a variable.","function _type(o) {"," var t = typeof o;"," return _allowable[t] || // number, string, boolean, undefined"," _allowable[_toStr.call(o)] || // Number, String, Boolean, Date"," (t === OBJECT ?"," (o ? OBJECT : NULL) : // object, array, null, misc natives"," UNDEFINED); // function, unknown","}","","// Escapes a special character to a safe Unicode representation","function _char(c) {"," if (!_CHAR[c]) {"," _CHAR[c] = '\\\\u'+('0000'+(+(c.charCodeAt(0))).toString(16)).slice(-4);"," _CHAR_COUNT[c] = 0;"," }",""," // === to avoid this conditional for the remainder of the current operation"," if (++_CHAR_COUNT[c] === _CACHE_THRESHOLD) {"," _COMMON.push([new RegExp(c, 'g'), _CHAR[c]]);"," _COMMON_LENGTH = _COMMON.length;"," }",""," return _CHAR[c];","}","","// Enclose escaped strings in quotes","function _string(s) {"," var i, chr;",""," // Preprocess the string against common characters to avoid function"," // overhead associated with replacement via function."," for (i = 0; i < _COMMON_LENGTH; i++) {"," chr = _COMMON[i];"," s = s.replace(chr[0], chr[1]);"," }",""," // original function replace for the not-as-common set of chars"," return QUOTE + s.replace(_SPECIAL, _char) + QUOTE;","}","","// Adds the provided space to the beginning of every line in the input string","function _indent(s,space) {"," return s.replace(/^/gm, space);","}","","Y.JSON.stringify = function _stringify(o,w,space) {"," if (o === undefined) {"," return undefined;"," }",""," var replacer = isFunction(w) ? w : null,"," format = _toStr.call(space).match(/String|Number/) || [],"," _date = Y.JSON.dateToString,"," stack = [],"," tmp,i,len;",""," _CHAR_COUNT = {};"," _CACHE_THRESHOLD = Y.JSON.charCacheThreshold;",""," if (replacer || !isArray(w)) {"," w = undefined;"," }",""," // Ensure whitelist keys are unique (bug 2110391)"," if (w) {"," tmp = {};"," for (i = 0, len = w.length; i < len; ++i) {"," tmp[w[i]] = true;"," }"," w = tmp;"," }",""," // Per the spec, strings are truncated to 10 characters and numbers"," // are converted to that number of spaces (max 10)"," space = format[0] === 'Number' ?"," new Array(Math.min(Math.max(0,space),10)+1).join(\" \") :"," (space || EMPTY).slice(0,10);",""," function _serialize(h,key) {"," var value = h[key],"," t = _type(value),"," a = [],"," colon = space ? COLON_SP : COLON,"," arr, i, keys, k, v;",""," // Per the ECMA 5 spec, toJSON is applied before the replacer is"," // called. Also per the spec, Date.prototype.toJSON has been added, so"," // Date instances should be serialized prior to exposure to the"," // replacer. I disagree with this decision, but the spec is the spec."," if (isObject(value) && isFunction(value.toJSON)) {"," value = value.toJSON(key);"," } else if (t === DATE) {"," value = _date(value);"," }",""," if (isFunction(replacer)) {"," value = replacer.call(h,key,value);"," }",""," if (value !== h[key]) {"," t = _type(value);"," }",""," switch (t) {"," case DATE : // intentional fallthrough. Pre-replacer Dates are"," // serialized in the toJSON stage. Dates here would"," // have been produced by the replacer."," case OBJECT : break;"," case STRING : return _string(value);"," case NUMBER : return isFinite(value) ? value+EMPTY : NULL;"," case BOOLEAN : return value+EMPTY;"," case NULL : return NULL;"," default : return undefined;"," }",""," // Check for cyclical references in nested objects"," for (i = stack.length - 1; i >= 0; --i) {"," if (stack[i] === value) {"," throw new Error(\"JSON.stringify. Cyclical reference\");"," }"," }",""," arr = isArray(value);",""," // Add the object to the processing stack"," stack.push(value);",""," if (arr) { // Array"," for (i = value.length - 1; i >= 0; --i) {"," a[i] = _serialize(value, i) || NULL;"," }"," } else { // Object"," // If whitelist provided, take only those keys"," keys = w || value;"," i = 0;",""," for (k in keys) {"," if (keys.hasOwnProperty(k)) {"," v = _serialize(value, k);"," if (v) {"," a[i++] = _string(k) + colon + v;"," }"," }"," }"," }",""," // remove the array from the stack"," stack.pop();",""," if (space && a.length) {"," return arr ?"," OPEN_A + CR + _indent(a.join(COMMA_CR), space) + CR + CLOSE_A :"," OPEN_O + CR + _indent(a.join(COMMA_CR), space) + CR + CLOSE_O;"," } else {"," return arr ?"," OPEN_A + a.join(COMMA) + CLOSE_A :"," OPEN_O + a.join(COMMA) + CLOSE_O;"," }"," }",""," // process the input"," return _serialize({'':o},'');","};","","// Property available for testing if the implementation being used","// is native or a shim","Y.JSON.stringify.isShim = true;","","","}, '@VERSION@', {\"requires\": [\"json-stringify\"]});","","}());"]}; |