Class: Webruby::Config

Inherits:
Object
  • Object
show all
Defined in:
lib/webruby/config.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfig

Returns a new instance of Config.



7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/webruby/config.rb', line 7

def initialize
  @entrypoint = 'app/app.rb'
  @build_dir = 'build'
  @selected_gemboxes = ['default']
  @selected_gems = []
  @compile_mode = 'debug'   # debug or release
  @loading_mode = 2
  @output_name = 'webruby.js'
  @source_processor = :mrubymix
  @cflags = %w(-Wall -Werror-implicit-function-declaration -Wno-warn-absolute-paths) + [optimization_flag]
  @ldflags = []
  @static_libs = []
end

Instance Attribute Details

#append_fileObject

Returns the value of attribute append_file.



3
4
5
# File 'lib/webruby/config.rb', line 3

def append_file
  @append_file
end

#build_dirObject

Returns the value of attribute build_dir.



3
4
5
# File 'lib/webruby/config.rb', line 3

def build_dir
  @build_dir
end

#cflagsObject

Returns the value of attribute cflags.



3
4
5
# File 'lib/webruby/config.rb', line 3

def cflags
  @cflags
end

#compile_modeObject

Returns the value of attribute compile_mode.



3
4
5
# File 'lib/webruby/config.rb', line 3

def compile_mode
  @compile_mode
end

#entrypointObject

Returns the value of attribute entrypoint.



3
4
5
# File 'lib/webruby/config.rb', line 3

def entrypoint
  @entrypoint
end

#ldflagsObject

Returns the value of attribute ldflags.



3
4
5
# File 'lib/webruby/config.rb', line 3

def ldflags
  @ldflags
end

#loading_modeObject

Returns the value of attribute loading_mode.



3
4
5
# File 'lib/webruby/config.rb', line 3

def loading_mode
  @loading_mode
end

#output_nameObject

Returns the value of attribute output_name.



3
4
5
# File 'lib/webruby/config.rb', line 3

def output_name
  @output_name
end

#selected_gemboxesObject

Returns the value of attribute selected_gemboxes.



3
4
5
# File 'lib/webruby/config.rb', line 3

def selected_gemboxes
  @selected_gemboxes
end

#selected_gemsObject

Returns the value of attribute selected_gems.



3
4
5
# File 'lib/webruby/config.rb', line 3

def selected_gems
  @selected_gems
end

#source_processorObject

Returns the value of attribute source_processor.



3
4
5
# File 'lib/webruby/config.rb', line 3

def source_processor
  @source_processor
end

#static_libsObject

Returns the value of attribute static_libs.



3
4
5
# File 'lib/webruby/config.rb', line 3

def static_libs
  @static_libs
end

Instance Method Details

#gem(g) ⇒ Object



29
30
31
# File 'lib/webruby/config.rb', line 29

def gem(g)
  selected_gems << g
end

#gem_linesObject



41
42
43
# File 'lib/webruby/config.rb', line 41

def gem_lines
  generate_conf_lines(selected_gems, 'gem')
end

#gembox(gb) ⇒ Object



33
34
35
# File 'lib/webruby/config.rb', line 33

def gembox(gb)
  selected_gemboxes << gb
end

#gembox_linesObject



37
38
39
# File 'lib/webruby/config.rb', line 37

def gembox_lines
  generate_conf_lines(selected_gemboxes, 'gembox')
end

#is_release_modeObject



21
22
23
# File 'lib/webruby/config.rb', line 21

def is_release_mode
  compile_mode == 'release'
end

#optimization_flagObject



25
26
27
# File 'lib/webruby/config.rb', line 25

def optimization_flag
  is_release_mode ? "-O2" : "-O0"
end