Advertisement
Guest User

Untitled

a guest
May 3rd, 2015
282
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.91 KB | None | 0 0
  1. var readline = require('readline');
  2.  
  3. /* CHANGE THIS TO YOUR PARSER */
  4. var parse = require('./').parseScript;
  5. var code = '';
  6.  
  7.  
  8. var parseScript = function (text) {
  9. return parse(text, {ecmaVersion: 6});
  10. };
  11.  
  12. var rl = readline.createInterface({
  13. input: process.stdin,
  14. output: process.stdout
  15. });
  16.  
  17. rl.setPrompt(">>> ");
  18. rl.prompt();
  19.  
  20. rl.on('line', function(line) {
  21. code += line;
  22. try {
  23. var tree = parseScript(code);
  24. console.log(JSON.stringify(tree, null, 2));
  25. code = '';
  26. rl.setPrompt('>>> ');
  27. rl.prompt();
  28. } catch (e) {
  29. if (!("index" in e) || e.index < code.length) {
  30. console.log(e.message);
  31. code = '';
  32. rl.setPrompt('>>> ');
  33. rl.prompt();
  34. } else {
  35. rl.setPrompt('... ');
  36. rl.prompt();
  37. }
  38. }
  39.  
  40. }).on('close', function() {
  41. console.log('');
  42. process.exit(0);
  43. }).on('SIGINT', function () {
  44. code = '';
  45. console.log('');
  46. rl.setPrompt('>>> ');
  47. rl.prompt();
  48. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement