Class: RgGen::Core::InputBase::Loader
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(extractors, ignore_values) ⇒ Loader
18
19
20
21
|
# File 'lib/rggen/core/input_base/loader.rb', line 18
def initialize(, ignore_values)
=
@ignore_values = ignore_values
end
|
Class Method Details
14
15
16
|
# File 'lib/rggen/core/input_base/loader.rb', line 14
def self.require_no_input_file
@require_input_file = false
end
|
.support_types(types = nil) ⇒ Object
9
10
11
12
|
# File 'lib/rggen/core/input_base/loader.rb', line 9
def self.support_types(types = nil)
types && (@support_types ||= []).concat(types.map(&:to_sym))
@support_types
end
|
Instance Method Details
#load_data(input_data, valid_value_lists, file = nil) ⇒ Object
35
36
37
38
39
40
41
|
# File 'lib/rggen/core/input_base/loader.rb', line 35
def load_data(input_data, valid_value_lists, file = nil)
if require_input_file?
load_file(input_data, valid_value_lists, file)
else
load_builtin_data(input_data)
end
end
|
#load_file(input_data, valid_value_lists, file) ⇒ Object
43
44
45
46
47
48
49
|
# File 'lib/rggen/core/input_base/loader.rb', line 43
def load_file(input_data, valid_value_lists, file)
File.readable?(file) ||
(raise Core::LoadError.new('cannot load such file', file))
@input_data = input_data
@valid_value_lists = valid_value_lists
format_data(read_file(file), input_data, input_data.layer, file)
end
|
29
30
31
32
33
|
# File 'lib/rggen/core/input_base/loader.rb', line 29
def require_input_file?
loader = self.class
!loader.instance_variable_defined?(:@require_input_file) ||
loader.instance_variable_get(:@require_input_file)
end
|
#support?(file) ⇒ Boolean
23
24
25
26
27
|
# File 'lib/rggen/core/input_base/loader.rb', line 23
def support?(file)
ext = File.ext(file).to_sym
types = self.class.support_types
types&.any? { |type| type.casecmp?(ext) } || false
end
|