(schema, doc)
| 2452 | } |
| 2453 | |
| 2454 | function stringifyData(schema, doc) { |
| 2455 | |
| 2456 | var output = ''; |
| 2457 | var esc = false; |
| 2458 | var size = 0; |
| 2459 | |
| 2460 | for (var i = 0; i < schema.keys.length; i++) { |
| 2461 | var key = schema.keys[i]; |
| 2462 | var meta = schema.meta[key]; |
| 2463 | var val = doc[key]; |
| 2464 | |
| 2465 | switch (meta.type) { |
| 2466 | case 1: // String |
| 2467 | val = val ? val : ''; |
| 2468 | size += 4; |
| 2469 | break; |
| 2470 | case 2: // Number |
| 2471 | val = (val || 0); |
| 2472 | size += 2; |
| 2473 | break; |
| 2474 | case 3: // Boolean |
| 2475 | val = (val == true ? '1' : '0'); |
| 2476 | break; |
| 2477 | case 4: // Date |
| 2478 | // val = val ? val.toISOString() : ''; |
| 2479 | val = val ? val.getTime() : ''; |
| 2480 | !val && (size += 13); |
| 2481 | break; |
| 2482 | case 5: // Object |
| 2483 | val = val ? JSON.stringify(val) : ''; |
| 2484 | size += 4; |
| 2485 | break; |
| 2486 | } |
| 2487 | |
| 2488 | if (!esc && (meta.type === 1 || meta.type === 5)) { |
| 2489 | val += ''; |
| 2490 | if (REGTESCAPETEST.test(val)) { |
| 2491 | esc = true; |
| 2492 | val = val.replace(REGTESCAPE, regtescape); |
| 2493 | } |
| 2494 | } |
| 2495 | |
| 2496 | output += '|' + val; |
| 2497 | } |
| 2498 | |
| 2499 | return (esc ? '*' : '+') + output; |
| 2500 | } |
| 2501 | |
| 2502 | function parseData(schema, lines, cache) { |
| 2503 |
no outgoing calls
no test coverage detected