rux 1.0.2 → 1.0.3
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 +4 -0
- data/lib/rux.rb +12 -0
- data/lib/rux/version.rb +1 -1
- data/rux.gemspec +1 -1
- data/spec/parser_spec.rb +10 -10
- metadata +7 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6a29eb709f4897a46f267f53bc09b7e5379385564b46e063e27801dfaf75b6df
|
|
4
|
+
data.tar.gz: 7873d289f9601f029c3283b28a01f56955b2c88e7eb423ddabb388d42bf02ee1
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 20072b74e6c7ecb9c78af907c72ede1b132e28ea6a6d2fe1edbc0675aa8453cedd88de58f397d09d43841c601dd4fd65ff7144e6aaa73bb882ab3de564c897e4
|
|
7
|
+
data.tar.gz: 19b14226872597dfa750b34debe1c39ea681da99eb4c099c065eb2ea0ff1736666070d82f4ec9e5db489b06fbbec5ea25c648396934e0a47eec7c82233a9ae5a
|
data/CHANGELOG.md
CHANGED
data/lib/rux.rb
CHANGED
|
@@ -71,3 +71,15 @@ module Rux
|
|
|
71
71
|
self.tag_builder = self.default_tag_builder
|
|
72
72
|
self.buffer = self.default_buffer
|
|
73
73
|
end
|
|
74
|
+
|
|
75
|
+
# unfortunately these have to be set globally :(
|
|
76
|
+
Parser::Builders::Default.tap do |builder|
|
|
77
|
+
builder.emit_lambda = true
|
|
78
|
+
builder.emit_procarg0 = true
|
|
79
|
+
builder.emit_encoding = true
|
|
80
|
+
builder.emit_index = true
|
|
81
|
+
builder.emit_arg_inside_procarg0 = true
|
|
82
|
+
builder.emit_forward_arg = true
|
|
83
|
+
builder.emit_kwargs = true
|
|
84
|
+
builder.emit_match_pattern = true
|
|
85
|
+
end
|
data/lib/rux/version.rb
CHANGED
data/rux.gemspec
CHANGED
data/spec/parser_spec.rb
CHANGED
|
@@ -87,7 +87,7 @@ describe Rux::Parser do
|
|
|
87
87
|
|
|
88
88
|
it 'handles ruby code with curly braces in attributes' do
|
|
89
89
|
expect(compile('<Hello foo={[1, 2, 3].map { |n| n * 2 }} />')).to eq(<<~RUBY.strip)
|
|
90
|
-
render(Hello.new(foo: [1, 2, 3].map { |n
|
|
90
|
+
render(Hello.new(foo: [1, 2, 3].map { |n|
|
|
91
91
|
n * 2
|
|
92
92
|
}))
|
|
93
93
|
RUBY
|
|
@@ -104,7 +104,7 @@ describe Rux::Parser do
|
|
|
104
104
|
it 'handles tag bodies containing ruby code with curly braces' do
|
|
105
105
|
expect(compile('<Hello>{[1, 2, 3].map { |n| n * 2 }.join(", ")}</Hello>')).to eq(<<~RUBY.strip)
|
|
106
106
|
render(Hello.new) {
|
|
107
|
-
[1, 2, 3].map { |n
|
|
107
|
+
[1, 2, 3].map { |n|
|
|
108
108
|
n * 2
|
|
109
109
|
}.join(", ")
|
|
110
110
|
}
|
|
@@ -114,7 +114,7 @@ describe Rux::Parser do
|
|
|
114
114
|
it 'handles tag bodies with intermixed text and ruby code' do
|
|
115
115
|
expect(compile('<Hello>abc {foo} def {bar} baz</Hello>')).to eq(<<~RUBY.strip)
|
|
116
116
|
render(Hello.new) {
|
|
117
|
-
Rux.create_buffer.tap { |_rux_buf_
|
|
117
|
+
Rux.create_buffer.tap { |_rux_buf_|
|
|
118
118
|
_rux_buf_ << "abc "
|
|
119
119
|
_rux_buf_ << foo
|
|
120
120
|
_rux_buf_ << " def "
|
|
@@ -136,11 +136,11 @@ describe Rux::Parser do
|
|
|
136
136
|
|
|
137
137
|
expect(compile(rux_code)).to eq(<<~RUBY.strip)
|
|
138
138
|
render(Outer.new) {
|
|
139
|
-
Rux.create_buffer.tap { |_rux_buf_
|
|
139
|
+
Rux.create_buffer.tap { |_rux_buf_|
|
|
140
140
|
_rux_buf_ << " "
|
|
141
141
|
_rux_buf_ << 5.times.map {
|
|
142
142
|
render(Inner.new) {
|
|
143
|
-
Rux.create_buffer.tap { |_rux_buf_
|
|
143
|
+
Rux.create_buffer.tap { |_rux_buf_|
|
|
144
144
|
_rux_buf_ << "What a "
|
|
145
145
|
_rux_buf_ << @thing
|
|
146
146
|
}.to_s
|
|
@@ -163,11 +163,11 @@ describe Rux::Parser do
|
|
|
163
163
|
|
|
164
164
|
expect(compile(rux_code)).to eq(<<~RUBY.strip)
|
|
165
165
|
Rux.tag("div") {
|
|
166
|
-
Rux.create_buffer.tap { |_rux_buf_
|
|
166
|
+
Rux.create_buffer.tap { |_rux_buf_|
|
|
167
167
|
_rux_buf_ << " "
|
|
168
168
|
_rux_buf_ << 5.times.map {
|
|
169
169
|
Rux.tag("p") {
|
|
170
|
-
Rux.create_buffer.tap { |_rux_buf_
|
|
170
|
+
Rux.create_buffer.tap { |_rux_buf_|
|
|
171
171
|
_rux_buf_ << "What a "
|
|
172
172
|
_rux_buf_ << @thing
|
|
173
173
|
}.to_s
|
|
@@ -198,11 +198,11 @@ describe Rux::Parser do
|
|
|
198
198
|
|
|
199
199
|
expect(compile(rux_code)).to eq(<<~RUBY.strip)
|
|
200
200
|
render(Outer.new) {
|
|
201
|
-
Rux.create_buffer.tap { |_rux_buf_
|
|
201
|
+
Rux.create_buffer.tap { |_rux_buf_|
|
|
202
202
|
_rux_buf_ << " "
|
|
203
203
|
_rux_buf_ << 5.times.map {
|
|
204
204
|
Rux.tag("div") {
|
|
205
|
-
Rux.create_buffer.tap { |_rux_buf_
|
|
205
|
+
Rux.create_buffer.tap { |_rux_buf_|
|
|
206
206
|
_rux_buf_ << "So "
|
|
207
207
|
_rux_buf_ << @cool
|
|
208
208
|
}.to_s
|
|
@@ -245,7 +245,7 @@ describe Rux::Parser do
|
|
|
245
245
|
it 'emits handles spaces between adjacent ruby code snippets' do
|
|
246
246
|
expect(compile("<Hello>{first} {second}</Hello>")).to eq(<<~RUBY.strip)
|
|
247
247
|
render(Hello.new) {
|
|
248
|
-
Rux.create_buffer.tap { |_rux_buf_
|
|
248
|
+
Rux.create_buffer.tap { |_rux_buf_|
|
|
249
249
|
_rux_buf_ << first
|
|
250
250
|
_rux_buf_ << " "
|
|
251
251
|
_rux_buf_ << second
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rux
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.
|
|
4
|
+
version: 1.0.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Cameron Dutro
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2021-06-
|
|
11
|
+
date: 2021-06-13 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: parser
|
|
@@ -28,16 +28,16 @@ dependencies:
|
|
|
28
28
|
name: unparser
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
|
-
- - "
|
|
31
|
+
- - "~>"
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: 0.
|
|
33
|
+
version: '0.6'
|
|
34
34
|
type: :runtime
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
|
-
- - "
|
|
38
|
+
- - "~>"
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: 0.
|
|
40
|
+
version: '0.6'
|
|
41
41
|
description: A jsx-inspired way to write view components.
|
|
42
42
|
email:
|
|
43
43
|
- camertron@gmail.com
|
|
@@ -97,7 +97,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
97
97
|
- !ruby/object:Gem::Version
|
|
98
98
|
version: '0'
|
|
99
99
|
requirements: []
|
|
100
|
-
rubygems_version: 3.
|
|
100
|
+
rubygems_version: 3.1.4
|
|
101
101
|
signing_key:
|
|
102
102
|
specification_version: 4
|
|
103
103
|
summary: A jsx-inspired way to write view components.
|