Module: Traceur

Defined in:
lib/traceur.rb,
lib/traceur/node.rb,
lib/traceur/version.rb,
lib/traceur/compiler.rb,
lib/traceur/node/runner.rb,
lib/traceur/configuration.rb,
lib/traceur/compilation_error.rb,
lib/traceur/compilation_options.rb,
lib/traceur/node/command_result.rb

Defined Under Namespace

Modules: Node Classes: CompilationError, CompilationOptions, Compiler, Configuration, NodeCommandError

Constant Summary collapse

VERSION =
"0.0.4"

Class Method Summary collapse

Class Method Details

.assets_pathObject



23
24
25
# File 'lib/traceur.rb', line 23

def self.assets_path
  config.assets_path
end

.compile(source, opts = {}) ⇒ Object



9
10
11
# File 'lib/traceur.rb', line 9

def self.compile(source, opts = {})
  compiler.compile(source, opts)
end

.compile_file(source_file, opts = {}) ⇒ Object



13
14
15
# File 'lib/traceur.rb', line 13

def self.compile_file(source_file, opts = {})
  compiler.compile_file(File.new(source_file), {filename: source_file}.merge(opts))
end

.compilerObject



39
40
41
42
43
# File 'lib/traceur.rb', line 39

def self.compiler
  Compiler.new(runner: node_runner,
               compile_script_path: config.compile_script_path.to_s,
               default_compilation_options: config.default_compilation_options)
end

.config {|@config| ... } ⇒ Object

Yields:



17
18
19
20
21
# File 'lib/traceur.rb', line 17

def self.config
  @config ||= Configuration.new
  yield @config if block_given?
  @config
end

.configure {|config| ... } ⇒ Object

Yields:



27
28
29
# File 'lib/traceur.rb', line 27

def self.configure
  yield config
end

.node_runner(opts = {}) ⇒ Object



31
32
33
34
35
36
37
# File 'lib/traceur.rb', line 31

def self.node_runner(opts = {})
  Node::Runner.new({
    binary: config.node_binary.to_s,
    modules_path: config.node_modules_path.to_s,
    env: ENV.to_hash
  }.merge(opts))
end