sirop 1.0.2 → 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 +4 -4
- data/CHANGELOG.md +9 -0
- data/lib/sirop/sourcifier.rb +28 -2
- data/lib/sirop/version.rb +1 -1
- data/lib/sirop.rb +0 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f6ef16c3858dcb5a6f7e21b42b397b9b3b92a5dbe8e350a9959128a48f3f5b84
|
|
4
|
+
data.tar.gz: a5d2f2dc3538525d21bf683e4bd013892768b6a2f7bf23d55acbfc41f1df205f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7ea627c379254a55334f0ad4c7d7f7166b108e815879a3913f05eb854670be7563e9cc75a40ce40a4d6a2c40e001559d60d772a538aae4eb1683498504598f70
|
|
7
|
+
data.tar.gz: 6e0f62ecae68bb051049bdc624f653e8bfb4256659097416c8ecd7de7fc85b1f44633de279b5a6b1d59956d13f9027606a0b15f427ca1c3907fc817e39966940
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
# 1.1.0 2026-06-21
|
|
2
|
+
|
|
3
|
+
- Fix sourcifier for various ivar operator write node types, e.g. @g ||= 1
|
|
4
|
+
- Fix IndexyOrWriteNode, IndexAndWriteNode handling ( x[y] ||= z )
|
|
5
|
+
|
|
6
|
+
# 1.0.3 2026-02-09
|
|
7
|
+
|
|
8
|
+
- Remove unparser ref from 1.0.2
|
|
9
|
+
|
|
1
10
|
# 1.0.2 2026-02-09
|
|
2
11
|
|
|
3
12
|
- Do not pin versions for dependencies: prism, minitest, irb
|
data/lib/sirop/sourcifier.rb
CHANGED
|
@@ -536,12 +536,38 @@ module Sirop
|
|
|
536
536
|
emit_code(node.block)
|
|
537
537
|
end
|
|
538
538
|
emit_code(node.closing_loc)
|
|
539
|
+
emit_code(node.binary_operator_loc)
|
|
540
|
+
emit_code(node.value)
|
|
541
|
+
end
|
|
542
|
+
|
|
543
|
+
def visit_index_or_write_node(node)
|
|
544
|
+
emit_code(node.receiver)
|
|
545
|
+
emit_code(node.opening_loc)
|
|
546
|
+
emit_code(node.arguments)
|
|
547
|
+
if node.block
|
|
548
|
+
if !node.arguments.arguments.empty?
|
|
549
|
+
emit_comma
|
|
550
|
+
end
|
|
551
|
+
emit_code(node.block)
|
|
552
|
+
end
|
|
553
|
+
emit_code(node.closing_loc)
|
|
554
|
+
emit_code(node.operator_loc)
|
|
555
|
+
emit_code(node.value)
|
|
556
|
+
end
|
|
557
|
+
alias_method :visit_index_and_write_node, :visit_index_or_write_node
|
|
558
|
+
|
|
559
|
+
def visit_instance_variable_or_write_node(node)
|
|
560
|
+
emit_code(node.name_loc)
|
|
539
561
|
emit_code(node.operator_loc)
|
|
540
562
|
emit_code(node.value)
|
|
541
563
|
end
|
|
542
|
-
alias_method :visit_index_and_write_node, :visit_index_operator_write_node
|
|
543
|
-
alias_method :visit_index_or_write_node, :visit_index_operator_write_node
|
|
544
564
|
|
|
565
|
+
def visit_instance_variable_operator_write_node(node)
|
|
566
|
+
emit_code(node.name_loc)
|
|
567
|
+
emit_code(node.binary_operator_loc)
|
|
568
|
+
emit_code(node.value)
|
|
569
|
+
end
|
|
570
|
+
|
|
545
571
|
def visit_ensure_node(node)
|
|
546
572
|
emit_code(node.ensure_keyword_loc, semicolon: true)
|
|
547
573
|
emit_code(node.statements, semicolon: true)
|
data/lib/sirop/version.rb
CHANGED
data/lib/sirop.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sirop
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0
|
|
4
|
+
version: 1.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Sharon Rosner
|
|
@@ -90,7 +90,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
90
90
|
- !ruby/object:Gem::Version
|
|
91
91
|
version: '0'
|
|
92
92
|
requirements: []
|
|
93
|
-
rubygems_version: 4.0.
|
|
93
|
+
rubygems_version: 4.0.6
|
|
94
94
|
specification_version: 4
|
|
95
95
|
summary: 'Sirop: Ruby code rewriter'
|
|
96
96
|
test_files: []
|