Press n or j to go to the next uncovered block, b, p or k for the previous block.
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 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | 1x 1x 1x 1x 1x | /*! * errors.js - tree errors * Copyright (c) 2018, Christopher Jeffrey (MIT License). * https://github.com/handshake-org/urkel */ 'use strict'; const assert = require('bsert'); /** * Missing Node Error */ class MissingNodeError extends Error { /** * Create an error. * @constructor * @param {Object?} options */ constructor(options = {}) { super(); this.type = 'MissingNodeError'; this.name = 'MissingNodeError'; this.code = 'ERR_MISSING_NODE'; this.rootHash = options.rootHash || null; this.nodeHash = options.nodeHash || null; this.key = options.key || null; this.depth = options.depth >>> 0; this.message = 'Missing node.'; if (this.nodeHash) this.message = `Missing node: ${this.nodeHash.toString('hex')}.`; if (Error.captureStackTrace) Error.captureStackTrace(this, MissingNodeError); } } /** * IO Error */ class IOError extends Error { /** * Create an error. * @constructor */ constructor(syscall, index, pos, size) { super(); this.type = 'IOError'; this.name = 'IOError'; this.code = 'ERR_IO'; this.syscall = syscall; this.index = index; this.pos = pos; this.size = size; this.message = `Invalid ${syscall} for file ${index} at ${pos}:${size}.`; if (Error.captureStackTrace) Error.captureStackTrace(this, IOError); } } class EncodingError extends Error { /** * Create an encoding error. * @constructor * @param {Number} offset * @param {String} reason */ constructor(offset, reason, start) { super(); this.type = 'EncodingError'; this.name = 'EncodingError'; this.code = 'ERR_ENCODING'; this.message = `${reason} (offset=${offset}).`; if (Error.captureStackTrace) Error.captureStackTrace(this, start || EncodingError); } } /** * Assertion Error */ class AssertionError extends assert.AssertionError { constructor(message) { super({ message }); } } /* * Expose */ exports.MissingNodeError = MissingNodeError; exports.IOError = IOError; exports.EncodingError = EncodingError; exports.AssertionError = AssertionError; |