predicateable 0.1.0 → 0.1.1

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: 941c76b3af813ee5f06646db352801907dd83a4aa5642a73ef7acfe103abac55
4
- data.tar.gz: c5294a45ff7b2e4ac9ab0067cad3849addcf2dfe72c3939042fc55888594fa15
3
+ metadata.gz: 6a6d30272dfc6b497f6f2eb9a1a996c182acf7e1e350d3b19bc5c1ea365a60e8
4
+ data.tar.gz: 8960103bc30f8bb9d2c98f5ec6e80bdd3e43080c08af6ee04eea213b830920dc
5
5
  SHA512:
6
- metadata.gz: 5594292717451ef97c6e4fa9492240d93ce53a99738b224ed3b077b10ec0e4dba86b6b58ed715d7bf96bb686c1da0bba292d6d9bdccfb729808be7a20c812c8a
7
- data.tar.gz: 16917996f9ba3a785bbe10fd96b02c0f0c26f8a42cfed7998567110b052f5375fb3dcb309e13cc3a867958f73166a999bbedd43a59b29bc5ffe615161f1923eb
6
+ metadata.gz: 31ab8ec374c9cfa117d66aa3f08ac2db257162bda00664d32be6833a55dfa17811393dc0497926e5d3cbd9f598da3c7fd33b3fdbfa4b0d9c10471b5f4c2fa760
7
+ data.tar.gz: 9300279104572eca484629190f0496a279017e05141df3f5fa468381df41db3f7d67eaadaeea3d49798275e82db6af2c27a0f46b566121870b6bfdb51c54e8ae
data/Steepfile ADDED
@@ -0,0 +1,5 @@
1
+ target :lib do
2
+ signature "sig"
3
+
4
+ check "lib"
5
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Predicateable
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.1"
5
5
  end
data/lib/predicateable.rb CHANGED
@@ -13,7 +13,8 @@ module Predicateable
13
13
  method = prefix ? "#{name}_#{value}?" : "#{value}?"
14
14
 
15
15
  define_method(method) do
16
- actual = send(name)
16
+ # @type self: Object
17
+ actual = public_send(name)
17
18
 
18
19
  if strict
19
20
  actual == value
@@ -0,0 +1,3 @@
1
+ module Predicateable
2
+ VERSION: String
3
+ end
@@ -1,4 +1,12 @@
1
1
  module Predicateable
2
- VERSION: String
3
- # See the writing guide of rbs: https://github.com/ruby/rbs#guides
2
+ def self.included: (Module base) -> void
3
+
4
+ module ClassMethods : Module
5
+ def predicate: (
6
+ Symbol | String name,
7
+ Array[Symbol | String] values,
8
+ ?prefix: bool,
9
+ ?strict: bool
10
+ ) -> Array[Symbol | String]
11
+ end
4
12
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: predicateable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Naoki Nishiguchi
@@ -37,6 +37,34 @@ dependencies:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
39
  version: '5.22'
40
+ - !ruby/object:Gem::Dependency
41
+ name: rbs
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '3.9'
47
+ type: :development
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '3.9'
54
+ - !ruby/object:Gem::Dependency
55
+ name: steep
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '1.10'
61
+ type: :development
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '1.10'
40
68
  description: Predicateable allows you to define predicate methods (like `admin?`)
41
69
  based on a method that returns a Symbol. Similar to Rails enums, with optional strict
42
70
  checking and prefix support.
@@ -47,9 +75,11 @@ files:
47
75
  - LICENSE.txt
48
76
  - README.md
49
77
  - Rakefile
78
+ - Steepfile
50
79
  - lib/predicateable.rb
51
80
  - lib/predicateable/version.rb
52
81
  - sig/predicateable.rbs
82
+ - sig/predicateable/version.rbs
53
83
  homepage: https://github.com/nsgc/predicateable
54
84
  licenses:
55
85
  - MIT