yard-sorbet 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f5a40a71c985d760b358e1a066b2b30b73a244ec47c43546dcbb476135217b6c
4
- data.tar.gz: 74d637f5b92f95234f3feaf2ef39050bcb4379c26a735961f4f04d7a29bd7697
3
+ metadata.gz: 24bbf6faf77f9a54ad0c74bacef4828729c182352464734bb587ef6f1a035e9a
4
+ data.tar.gz: c68e0b16d0f7cd81f1f03dac293aa7fd7f87504c134c1de34c3cf2e2600ff6d2
5
5
  SHA512:
6
- metadata.gz: f92b7ec79d46db5b9abcb3ecb294576fe02874972deeb93f23023fbfebe0bc50c9160d7f11193f93598cb07191ab4a5b3045c27ea5d0bce509fdbef5d9e99a65
7
- data.tar.gz: 66ea5ef884b6867b1f4b80a28f5b4ee8ee8c557995be314513c43eb0886fb7a0697c01b9723d3f6a76607dc2108ddbabe7c398b5ceaec16e3693707f0b10b911
6
+ metadata.gz: 65bbdc49da863973cd60926c8b898a789d4b740009453a698dfa0531eaa742805d81e72eb95e1411625a6ecf25029c85b6dc863bcf67928035aeacaa4766fb55
7
+ data.tar.gz: 4aba39bc2d129e99910d421f47fa01fb9178078da6bb1ba5b1e8da3c847e39b96927342e5c774db1ec71a46475a2eeed0ae12be4eb729bb278bfbf2fcd79e720
@@ -1,12 +1,12 @@
1
1
  # typed: strict
2
2
  # frozen_string_literal: true
3
3
 
4
- # Handle all `const` calls, creating accessor methods, and compiles them for later usage at the class level
4
+ # Handles all `const`/`prop` calls, creating accessor methods, and compiles them for later usage at the class level
5
5
  # in creating a constructor
6
6
  class YARDSorbet::StructHandler < YARD::Handlers::Ruby::Base
7
7
  extend T::Sig
8
8
 
9
- handles method_call(:const)
9
+ handles method_call(:const), method_call(:prop)
10
10
  namespace_only
11
11
 
12
12
  sig { void }
@@ -39,12 +39,16 @@ class YARDSorbet::StructHandler < YARD::Handlers::Ruby::Base
39
39
  docstring.add_tag(YARD::Tags::Tag.new(:return, '', types))
40
40
  object.docstring = docstring.to_raw
41
41
 
42
- # Register the object explicitly as an attribute
42
+ # Register the object explicitly as an attribute.
43
+ # While `const` attributes are immutable, `prop` attributes may be reassigned.
44
+ if statement.method_name.source == 'prop'
45
+ namespace.attributes[scope][name][:write] = object
46
+ end
43
47
  namespace.attributes[scope][name][:read] = object
44
48
  end
45
49
  end
46
50
 
47
- # Class-level handler that folds all `const` declarations into the constructor documentation
51
+ # Class-level handler that folds all `const` and `prop` declarations into the constructor documentation
48
52
  # this needs to be injected as a module otherwise the default Class handler will overwrite documentation
49
53
  module YARDSorbet::StructClassHandler
50
54
  extend T::Sig
@@ -2,5 +2,5 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module YARDSorbet
5
- VERSION = '0.3.0'
5
+ VERSION = '0.4.0'
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yard-sorbet
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Douglas Eichelberger
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-11 00:00:00.000000000 Z
11
+ date: 2021-04-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: codecov
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 1.11.0
61
+ version: 1.12.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 1.11.0
68
+ version: 1.12.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rubocop-performance
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -114,14 +114,14 @@ dependencies:
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: 0.5.1
117
+ version: 0.6.0
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: 0.5.1
124
+ version: 0.6.0
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: simplecov
127
127
  requirement: !ruby/object:Gem::Requirement