steep 1.7.1 → 1.8.0.dev.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/steep/source.rb +28 -2
- data/lib/steep/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 635cc7b37608055562fc399845485f40c065e7300072a2ca194ea15137a0ac11
|
4
|
+
data.tar.gz: c16be740c2d1a8a11ece00fc3abbca6b33a715ddbbfb0a210bc8e09287e2c7d5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 164e5369654bc6ef2bd0ef355b796f3b9ee2c43a1887501cfc0282c8cccedc84a2d3a61a4ca257c51ea2500f342f5ad7c9496e03b29d1433aee81c020bae18db
|
7
|
+
data.tar.gz: 03ba49762f19dda444ff5a73a08eca0417ef02d89bed4039ccbc01c07cb1d59e05714583cfaa654dff5597e55ebc55844a038483ec1a46068cd8613f9d575c78
|
data/lib/steep/source.rb
CHANGED
@@ -459,12 +459,14 @@ module Steep
|
|
459
459
|
case node.type
|
460
460
|
when :lvasgn, :ivasgn, :gvasgn, :cvasgn, :casgn
|
461
461
|
# Skip
|
462
|
+
when :return, :break, :next
|
463
|
+
# Skip
|
464
|
+
when :def, :defs
|
465
|
+
# Skip
|
462
466
|
when :masgn
|
463
467
|
lhs, rhs = node.children
|
464
468
|
node = node.updated(nil, [lhs, insert_type_node(rhs, comments)])
|
465
469
|
return adjust_location(node)
|
466
|
-
when :return, :break, :next
|
467
|
-
# Skip
|
468
470
|
when :begin
|
469
471
|
location = node.loc #: Parser::Source::Map & Parser::AST::_Collection
|
470
472
|
if location.begin
|
@@ -475,6 +477,15 @@ module Steep
|
|
475
477
|
return assertion_node(node, last_comment)
|
476
478
|
end
|
477
479
|
else
|
480
|
+
if (receiver, name, * = deconstruct_send_node(node))
|
481
|
+
if receiver.nil?
|
482
|
+
if name == :attr_reader || name == :attr_writer || name == :attr_accessor
|
483
|
+
child_assertions = comments.except(last_line)
|
484
|
+
node = map_child_node(node) {|child| insert_type_node(child, child_assertions) }
|
485
|
+
return adjust_location(node)
|
486
|
+
end
|
487
|
+
end
|
488
|
+
end
|
478
489
|
child_assertions = comments.except(last_line)
|
479
490
|
node = map_child_node(node) {|child| insert_type_node(child, child_assertions) }
|
480
491
|
node = adjust_location(node)
|
@@ -540,6 +551,21 @@ module Steep
|
|
540
551
|
]
|
541
552
|
)
|
542
553
|
)
|
554
|
+
when :def
|
555
|
+
name, args, body = node.children
|
556
|
+
assertion_location = args&.location&.expression || (_ = node.location).name
|
557
|
+
no_assertion_comments = comments.except(assertion_location.last_line)
|
558
|
+
args = insert_type_node(args, no_assertion_comments)
|
559
|
+
body = insert_type_node(body, comments) if body
|
560
|
+
return adjust_location(node.updated(nil, [name, args, body]))
|
561
|
+
when :defs
|
562
|
+
object, name, args, body = node.children
|
563
|
+
assertion_location = args&.location&.expression || (_ = node.location).name
|
564
|
+
no_assertion_comments = comments.except(assertion_location.last_line)
|
565
|
+
object = insert_type_node(object, no_assertion_comments)
|
566
|
+
args = insert_type_node(args, no_assertion_comments)
|
567
|
+
body = insert_type_node(body, comments) if body
|
568
|
+
return adjust_location(node.updated(nil, [object, name, args, body]))
|
543
569
|
else
|
544
570
|
adjust_location(
|
545
571
|
map_child_node(node, nil) {|child| insert_type_node(child, comments) }
|
data/lib/steep/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: steep
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.8.0.dev.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Soutaro Matsumoto
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-06-
|
11
|
+
date: 2024-06-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: parser
|
@@ -401,7 +401,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
401
401
|
- !ruby/object:Gem::Version
|
402
402
|
version: '0'
|
403
403
|
requirements: []
|
404
|
-
rubygems_version: 3.5.
|
404
|
+
rubygems_version: 3.5.9
|
405
405
|
signing_key:
|
406
406
|
specification_version: 4
|
407
407
|
summary: Gradual Typing for Ruby
|