rbs_config 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7c379914fccfe5ef6d08534927a87f1df4cfab80f84da0ffe80fd638d2ba35bb
4
- data.tar.gz: deda4664549517817ae600c005ebfb5af42f12b65ffb437a36879d4092a5a2fb
3
+ metadata.gz: 24eeabd79c7be7168a33176e75662e4c61c0f3594a712953c4980982e60b0602
4
+ data.tar.gz: 35116e8c9950e0f81107f31391b403c332637cce00a2b17cbc3e47a2907ed652
5
5
  SHA512:
6
- metadata.gz: cb35f250bd004771189c8c6b540ac317d8a64ae5c6f8b3e80bbbc11dc19210380cacdd4f15b9184ef0dfe35f9b43648b3abd1de886a0db6dee426328fd57377d
7
- data.tar.gz: e34cda204e7094262317525dae5c2885a6621dbd9760bb780304faad8df4d2c8806a7998cf5b8dffacf2f37ab438a8bb9fbc68f155323c6f086a294daf1a7730
6
+ metadata.gz: e9b392490220fdb42cd055c6114c06d76fc5033dfa1098cf22f65ca1a01d038705936ce3e0609df55f4f85f9784a9efcf3f17326fd2e827bc74b325a56fc2eab
7
+ data.tar.gz: c2db7da5db96b3274642901f07c60ac74f1dee942231cecf827a2c3a2a6072df5559901950fcbf2bad93be6712019c18c17a091c13303190ef57665434bcd9c5
data/Steepfile CHANGED
@@ -7,5 +7,5 @@ target :lib do
7
7
 
8
8
  check "lib"
9
9
 
10
- configure_code_diagnostics(D::Ruby.lenient) # `lenient` diagnostics setting
10
+ configure_code_diagnostics(D::Ruby.lenient)
11
11
  end
@@ -23,10 +23,16 @@ module RbsConfig
23
23
  methods = generate_methods(config)
24
24
 
25
25
  format <<~RBS
26
- class #{class_name}
27
- #{classes.join("\n")}
28
- #{methods.join("\n")}
26
+ module Config
27
+ module Generated
28
+ class #{class_name} < ::Config::Options
29
+ #{classes.join("\n")}
30
+ #{methods.join("\n")}
31
+ end
32
+ end
29
33
  end
34
+
35
+ #{class_name}: Config::Generated::#{class_name}
30
36
  RBS
31
37
  end
32
38
 
@@ -49,7 +55,7 @@ module RbsConfig
49
55
  methods = generate_methods(value)
50
56
 
51
57
  <<~RBS
52
- class #{key.camelize}
58
+ class #{key.camelize} < ::Config::Options
53
59
  #{classes.join("\n")}
54
60
  #{methods.join("\n")}
55
61
  end
@@ -60,14 +66,14 @@ module RbsConfig
60
66
 
61
67
  def generate_methods(config)
62
68
  config.map do |key, value|
63
- "def self.#{key}: () -> #{stringify_type(key, value)}"
69
+ "def #{key}: () -> #{stringify_type(key, value)}"
64
70
  end
65
71
  end
66
72
 
67
73
  def stringify_type(name, value)
68
74
  case value
69
75
  when Hash
70
- "singleton(#{name.camelize})"
76
+ name.camelize
71
77
  when Array
72
78
  types = value.map { |v| stringify_type(name, v) }.uniq
73
79
  "Array[#{types.join(" | ")}]"
@@ -36,7 +36,7 @@ module RbsConfig
36
36
  def define_generate_task
37
37
  desc "Generate RBS files for config gem"
38
38
  task "#{name}:generate" do
39
- require "rbs_config" # load RbsConfig lazily
39
+ require "rbs_config" # load RbsConfig lazily
40
40
 
41
41
  signature_root_dir.mkpath
42
42
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RbsConfig
4
- VERSION = "1.0.0"
4
+ VERSION = "1.1.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbs_config
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Takeshi KOMIYA
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-08-18 00:00:00.000000000 Z
11
+ date: 2024-08-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport