Module: FastIgnore::RuleSetBuilder

Defined in:
lib/fast_ignore/rule_set_builder.rb

Class Method Summary collapse

Class Method Details

.build(root:, ignore_rules: nil, ignore_files: nil, gitignore: :auto, include_rules: nil, include_files: nil, argv_rules: nil) ⇒ Object

:nocov:



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/fast_ignore/rule_set_builder.rb', line 10

def build( # rubocop:disable Metrics/ParameterLists
  root:,
  ignore_rules: nil,
  ignore_files: nil,
  gitignore: :auto,
  include_rules: nil,
  include_files: nil,
  argv_rules: nil
)
  prepare [
    from_array(ignore_rules),
    *from_files(ignore_files, project_root: root),
    from_array('.git'),
    from_gitignore_arg(gitignore, project_root: root),
    from_array(include_rules, allow: true),
    *from_files(include_files, allow: true, project_root: root),
    from_array(argv_rules, allow: true, expand_path: root)
  ]
end