xo-server/node_modules/mysql/tool/generate-error-constants.js

29 lines
793 B
JavaScript
Executable File

#!/usr/bin/env node
var path = require('path');
var script = path.basename(__filename);
var errorFile = process.argv[2];
if (!errorFile) {
console.error('Usage: ./' + script + ' path/to/errmsg-utf8.txt');
process.exit(1);
}
var fs = require('fs');
var errors = fs.readFileSync(errorFile, 'utf-8');
var number = Number(errors.match(/start-error-number (\d+)/)[1]);
var codes = errors.match(/^([A-Z_]+)/mg)
var source =
'// Generated by ' + script + ', do not modify by hand\n' +
codes
.map(function(code) {
return 'exports[' + (number++) + '] = \'' + code + '\';';
})
.join('\n');
var targetFile = path.join(__dirname, '../lib/protocol/constants/errors.js');
fs.writeFileSync(targetFile, source, 'utf-8');
console.log('Wrote constants to ' + targetFile);