How to use the traceur.outputgeneration function in traceur

To help you get started, we’ve selected a few traceur examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github jspm / jspm-cli / traceur-compiler.js View on Github external
var reporter = new traceur.util.ErrorReporter();
    reporter.reportMessageInternal = function(location, kind, format, args) {
      process.stdout.write(JSON.stringify({ err: kind + '\n' + o.file + location }));
      process.exit(0);
    }

    var parser = new traceur.syntax.Parser(reporter, new traceur.syntax.SourceFile(o.file, o.source));
    var tree = parser.parseModule();

    var project = new traceur.semantics.symbols.Project(o.file);
    var transformer = new traceur.codegeneration.ProgramTransformer(reporter, project);
    tree = transformer.transform(tree);

    // generate source
    var sourceMapGenerator = new traceur.outputgeneration.SourceMapGenerator({ file: o.originalFile });
    var opt = { sourceMapGenerator: sourceMapGenerator };

    var source = traceur.outputgeneration.TreeWriter.write(tree, opt);

    process.stdout.write(JSON.stringify({
      source: source,
      sourceMap: opt.sourceMap
    }));
  }
  catch(e) {
    process.stdout.write(JSON.stringify({ err: e.toString() }));
    return process.exit(0);
  }
});
process.stdin.resume();
github jspm / jspm-cli / traceur-compiler.js View on Github external
process.stdout.write(JSON.stringify({ err: kind + '\n' + o.file + location }));
      process.exit(0);
    }

    var parser = new traceur.syntax.Parser(reporter, new traceur.syntax.SourceFile(o.file, o.source));
    var tree = parser.parseModule();

    var project = new traceur.semantics.symbols.Project(o.file);
    var transformer = new traceur.codegeneration.ProgramTransformer(reporter, project);
    tree = transformer.transform(tree);

    // generate source
    var sourceMapGenerator = new traceur.outputgeneration.SourceMapGenerator({ file: o.originalFile });
    var opt = { sourceMapGenerator: sourceMapGenerator };

    var source = traceur.outputgeneration.TreeWriter.write(tree, opt);

    process.stdout.write(JSON.stringify({
      source: source,
      sourceMap: opt.sourceMap
    }));
  }
  catch(e) {
    process.stdout.write(JSON.stringify({ err: e.toString() }));
    return process.exit(0);
  }
});
process.stdin.resume();
github tarruda / grunt-traceur-build / tasks / traceur_build.js View on Github external
var traceur = require('traceur');

// this hack is needed because the traceur developers have made the
// command line compiler modules private. without this we won't get
// the automatic dependency resolution done by parsing the modules
// 'import' statements.
try {
  var modPath = path.resolve('node_modules/grunt-traceur-build/node_modules/traceur/src/node/inline-module');
} catch (e) {
  var modPath = path.resolve('node_modules/traceur/src/node/inline-module');
}
var inlineAndCompileSync = require(modPath).inlineAndCompileSync;

var TreeWriter = traceur.outputgeneration.TreeWriter;
var SourceMapGenerator = traceur.outputgeneration.SourceMapGenerator;
var TestErrorReporter = traceur.util.TestErrorReporter;
var Project = traceur.semantics.symbols.Project;
var SourceFile = traceur.syntax.SourceFile;

var NAME = 'traceur_build';
var DESC =
  'Compiles ECMAScript 6 (harmony) files, optionally merging and ' +
  'generating source maps.';

function generateIncludeFile(files) {
  var rv = [];
  files.forEach(function(f) {
    rv.push('module ' + traceur.generateNameForUrl(f) + ' from "' + f + '"');
  });
  return rv.join('\n');
}
github bjoerge / react-es6-class / boilerplate / transpile-es6.js View on Github external
// ES5 source transform/transpiler based on the es6ify browserify transform by thlorenz

'use strict';

var traceur            =  require('traceur')
  , compile            =  traceur.codegeneration.Compiler.compile
  , Project            =  traceur.semantics.symbols.Project
  , ProjectWriter      =  traceur.outputgeneration.ProjectWriter
  , SourceFile         =  traceur.syntax.SourceFile
  , format             =  require('util').format
  , path               =  require('path')
  ;

+function initGlobalTraceurOptions() {
  [ 'arrayComprehension'
    , 'arrowFunctions'
    , 'classes'
    , 'defaultParameters'
    , 'destructuring'
    , 'forOf'
    , 'propertyMethods'
    , 'propertyNameShorthand'
    , 'templateLiterals'
    , 'restParameters'
github tarruda / grunt-traceur-build / tasks / traceur_build.js View on Github external
var path = require('path');

var traceur = require('traceur');

// this hack is needed because the traceur developers have made the
// command line compiler modules private. without this we won't get
// the automatic dependency resolution done by parsing the modules
// 'import' statements.
try {
  var modPath = path.resolve('node_modules/grunt-traceur-build/node_modules/traceur/src/node/inline-module');
} catch (e) {
  var modPath = path.resolve('node_modules/traceur/src/node/inline-module');
}
var inlineAndCompileSync = require(modPath).inlineAndCompileSync;

var TreeWriter = traceur.outputgeneration.TreeWriter;
var SourceMapGenerator = traceur.outputgeneration.SourceMapGenerator;
var TestErrorReporter = traceur.util.TestErrorReporter;
var Project = traceur.semantics.symbols.Project;
var SourceFile = traceur.syntax.SourceFile;

var NAME = 'traceur_build';
var DESC =
  'Compiles ECMAScript 6 (harmony) files, optionally merging and ' +
  'generating source maps.';

function generateIncludeFile(files) {
  var rv = [];
  files.forEach(function(f) {
    rv.push('module ' + traceur.generateNameForUrl(f) + ' from "' + f + '"');
  });
  return rv.join('\n');