salve-annos
Version:
A fork with support for documentation of Salve, a Javascript library which implements a validator able to validate an XML document on the basis of a subset of RelaxNG.
37 lines • 1.28 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SchemaValidationError = void 0;
exports.getAvailableValidators = getAvailableValidators;
exports.isValidatorAvailable = isValidatorAvailable;
exports.registerValidator = registerValidator;
exports.makeValidator = makeValidator;
const tools_1 = require("../tools");
class SchemaValidationError extends Error {
constructor(message) {
super();
const err = new Error(message);
this.name = "SchemaValidationError";
this.stack = err.stack;
this.message = err.message;
(0, tools_1.fixPrototype)(this, SchemaValidationError);
}
}
exports.SchemaValidationError = SchemaValidationError;
const availableValidators = Object.create(null);
function getAvailableValidators() {
return Object.keys(availableValidators);
}
function isValidatorAvailable(name) {
return availableValidators[name] !== undefined;
}
function registerValidator(name, ctor) {
availableValidators[name] = ctor;
}
function makeValidator(name, options) {
const ctor = availableValidators[name];
if (ctor === undefined) {
throw new Error(`unknown validator name: ${name}`);
}
return new ctor(options);
}
//# sourceMappingURL=schema-validation.js.map