Skip to content

Commit 8a1e850

Browse files
committed
rake_task: Pass signature_root_dir only if set
1 parent e063119 commit 8a1e850

File tree

2 files changed

+23
-9
lines changed

2 files changed

+23
-9
lines changed

lib/rbs_rails/rake_task.rb

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,15 @@ class RakeTask < Rake::TaskLib
1010

1111
attr_accessor :ignore_model_if #: _Filter | nil
1212
attr_accessor :name #: Symbol
13-
attr_writer :signature_root_dir #: Pathname
13+
attr_writer :signature_root_dir #: Pathname?
1414

1515
# @rbs name: ::Symbol
1616
# @rbs &block: (RbsRails::RakeTask) -> void
1717
def initialize(name = :rbs_rails, &block) #: void
1818
super()
1919

2020
@name = name
21-
@signature_root_dir = Rails.root / 'sig/rbs_rails'
21+
@signature_root_dir = nil
2222

2323
block.call(self) if block
2424

@@ -30,7 +30,11 @@ def initialize(name = :rbs_rails, &block) #: void
3030
def def_all #: void
3131
desc 'Run all tasks of rbs_rails'
3232
task :"#{name}:all" do
33-
sh "rbs_rails", "all", "--signature-root-dir=#{signature_root_dir}"
33+
if signature_root_dir
34+
sh "rbs_rails", "all", "--signature-root-dir=#{signature_root_dir}"
35+
else
36+
sh "rbs_rails", "all"
37+
end
3438
end
3539
end
3640

@@ -39,19 +43,29 @@ def def_generate_rbs_for_models #: void
3943
task :"#{name}:generate_rbs_for_models" do
4044
warn "ignore_model_if is deprecated." if ignore_model_if
4145

42-
sh "rbs_rails", "models", "--signature-root-dir=#{signature_root_dir}"
46+
if signature_root_dir
47+
sh "rbs_rails", "models", "--signature-root-dir=#{signature_root_dir}"
48+
else
49+
sh "rbs_rails", "models"
50+
end
4351
end
4452
end
4553

4654
def def_generate_rbs_for_path_helpers #: void
4755
desc 'Generate RBS files for path helpers'
4856
task :"#{name}:generate_rbs_for_path_helpers" do
49-
sh "rbs_rails", "path_helpers", "--signature-root-dir=#{signature_root_dir}"
57+
if signature_root_dir
58+
sh "rbs_rails", "path_helpers", "--signature-root-dir=#{signature_root_dir}"
59+
else
60+
sh "rbs_rails", "path_helpers"
61+
end
5062
end
5163
end
5264

53-
private def signature_root_dir #: Pathname
54-
Pathname(@signature_root_dir)
65+
private def signature_root_dir #: Pathname?
66+
if path = @signature_root_dir
67+
Pathname(path)
68+
end
5569
end
5670
end
5771
end

sig/rbs_rails/rake_task.rbs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ module RbsRails
1010

1111
attr_accessor name: Symbol
1212

13-
attr_writer signature_root_dir: Pathname
13+
attr_writer signature_root_dir: Pathname?
1414

1515
# @rbs name: ::Symbol
1616
# @rbs &block: (RbsRails::RakeTask) -> void
@@ -22,6 +22,6 @@ module RbsRails
2222

2323
def def_generate_rbs_for_path_helpers: () -> void
2424

25-
private def signature_root_dir: () -> Pathname
25+
private def signature_root_dir: () -> Pathname?
2626
end
2727
end

0 commit comments

Comments
 (0)