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
|
'use strict'
const ExtendableError = require('es6-error')
class SourceError extends ExtendableError {
constructor (message, source, parent) {
super(`${source}: ${message}`)
this.source = source
this.parent = parent || null
}
}
exports.SourceError = SourceError
class NoSourceFileError extends SourceError {
constructor (source) {
super('No such file', source)
}
}
exports.NoSourceFileError = NoSourceFileError
class ParseError extends SourceError {
constructor (source, parent) {
super(`Error while parsing — ${parent.message}`, source, parent)
}
}
exports.ParseError = ParseError
class InvalidFileError extends SourceError {
constructor (source) {
super('Not a proper configuration file', source)
}
}
exports.InvalidFileError = InvalidFileError
class ExtendsError extends SourceError {
constructor (source, clause, parent) {
super(`Couldn't resolve extends clause: ${clause}`, source, parent)
this.clause = clause
}
}
exports.ExtendsError = ExtendsError
class BadDependencyError extends SourceError {
constructor (source, parent) {
super("Couldn't resolve dependency", source, parent)
}
}
exports.BadDependencyError = BadDependencyError
|