cli.js 588 B

1234567891011121314151617181920212223242526272829
  1. 'use strict';
  2. var fs = require('fs');
  3. var RuleCompiler = require('./rule-compiler.js');
  4. if (process.argv.length < 3) {
  5. console.log('Usage: node cli.js <rules script>');
  6. process.exit(1);
  7. }
  8. var src = fs.readFileSync(process.argv[2]).toString();
  9. var rules = [];
  10. var caps = {};
  11. var tags = {};
  12. var err = RuleCompiler.compile(src,rules,caps,tags);
  13. if (err) {
  14. console.log('ERROR parsing '+process.argv[2]+' line '+err[0]+' column '+err[1]+': '+err[2]);
  15. process.exit(1);
  16. } else {
  17. console.log(JSON.stringify({
  18. rules: rules,
  19. caps: caps,
  20. tags: tags
  21. },null,2));
  22. process.exit(0);
  23. }