Class: ESRuby::Build::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/esruby/build/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



9
10
11
12
13
14
15
16
17
18
# File 'lib/esruby/build/configuration.rb', line 9

def initialize
  @root_directory = nil
  @emsdk_directory = 'emsdk'
  @mruby_directory = "#{ESRuby.gem_directory}/resources/mruby"
  @output = 'output.js'
  @ruby_sources = []
  @prepended_js_sources = []
  @appended_js_sources = []
  @gems = []
end

Instance Attribute Details

#appended_js_sourcesObject (readonly)

Returns the value of attribute appended_js_sources.



5
6
7
# File 'lib/esruby/build/configuration.rb', line 5

def appended_js_sources
  @appended_js_sources
end

#build_directoryObject

Returns the value of attribute build_directory.



5
6
7
# File 'lib/esruby/build/configuration.rb', line 5

def build_directory
  @build_directory
end

#build_modeObject

Returns the value of attribute build_mode.



5
6
7
# File 'lib/esruby/build/configuration.rb', line 5

def build_mode
  @build_mode
end

#emsdk_directoryObject

Returns the value of attribute emsdk_directory.



5
6
7
# File 'lib/esruby/build/configuration.rb', line 5

def emsdk_directory
  @emsdk_directory
end

#gemsObject (readonly)

Returns the value of attribute gems.



5
6
7
# File 'lib/esruby/build/configuration.rb', line 5

def gems
  @gems
end

#mruby_directoryObject

Returns the value of attribute mruby_directory.



5
6
7
# File 'lib/esruby/build/configuration.rb', line 5

def mruby_directory
  @mruby_directory
end

#outputObject

Returns the value of attribute output.



5
6
7
# File 'lib/esruby/build/configuration.rb', line 5

def output
  @output
end

#prepended_js_sourcesObject (readonly)

Returns the value of attribute prepended_js_sources.



5
6
7
# File 'lib/esruby/build/configuration.rb', line 5

def prepended_js_sources
  @prepended_js_sources
end

#ruby_sourcesObject (readonly)

Returns the value of attribute ruby_sources.



5
6
7
# File 'lib/esruby/build/configuration.rb', line 5

def ruby_sources
  @ruby_sources
end

Instance Method Details

#add_appended_js_source(path) ⇒ Object



39
40
41
# File 'lib/esruby/build/configuration.rb', line 39

def add_appended_js_source(path)
  @appended_js_sources << File.expand_path(path, root_directory)
end

#add_gem(path) ⇒ Object



69
70
71
72
73
# File 'lib/esruby/build/configuration.rb', line 69

def add_gem(path)
  path = File.expand_path(path, root_directory)
  raise "gem #{path} not found" unless File.directory?(path)
  @gems << path
end

#add_prepended_js_source(path) ⇒ Object



35
36
37
# File 'lib/esruby/build/configuration.rb', line 35

def add_prepended_js_source(path)
  @prepended_js_sources << File.expand_path(path, root_directory)
end

#add_ruby_source(path) ⇒ Object



31
32
33
# File 'lib/esruby/build/configuration.rb', line 31

def add_ruby_source(path)
  @ruby_sources << File.expand_path(path, root_directory)
end

#root_directoryObject



20
21
22
23
# File 'lib/esruby/build/configuration.rb', line 20

def root_directory
  raise "'root_directory' not set" unless @root_directory
  @root_directory
end

#root_directory=(new_root_directory) ⇒ Object



25
26
27
28
29
# File 'lib/esruby/build/configuration.rb', line 25

def root_directory=(new_root_directory)
  root_directory = File.expand_path(new_root_directory)
  raise "'root_directory' not found" unless File.directory?(root_directory)
  @root_directory = root_directory
end