rux 1.0.2 → 1.0.3
Sign up to get free protection for your applications and to get access to all the features.
- 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.
|