wexpr 0.1.3 → 0.1.4
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/Gemfile.lock +1 -1
- data/lib/wexpr/expression.rb +31 -19
- data/lib/wexpr/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: 78348b4a80be320840f028bf01c5632ac52ecfc91cca05edd7421069bb9bc1ea
|
4
|
+
data.tar.gz: 32e59135983d7929c14b9c31d4bdb6e1cff0c85e2b7cf36bfb64812390b31b94
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0c0477364d15c3181de3d2cec2c628f450e078e39dd2baead8a12676bbd8949363912c0829bcb95d86787fb74a3b16ef3a695e353f34c8a28cc3ecfa5041dfd6
|
7
|
+
data.tar.gz: d86ecd06f98cbf16e654c1c1e7a905fd5a4976b19f79c6f5b25e75601e99a7921c6f8d236c320de851b19ab0aad556116356d70f5f687b62ebcf780b40d514e9
|
data/Gemfile.lock
CHANGED
data/lib/wexpr/expression.rb
CHANGED
@@ -1169,6 +1169,34 @@ module Wexpr
|
|
1169
1169
|
return ""
|
1170
1170
|
end
|
1171
1171
|
|
1172
|
+
##
|
1173
|
+
# Will write the string escaped, and with quotes
|
1174
|
+
# around it if needed.
|
1175
|
+
#
|
1176
|
+
def self.s_write_string_escaped(v, props)
|
1177
|
+
buf = ''
|
1178
|
+
|
1179
|
+
if not props[:isbarewordsafe]
|
1180
|
+
buf += '"'
|
1181
|
+
end
|
1182
|
+
|
1183
|
+
# do per character so we can escape as needed
|
1184
|
+
for c in v.chars
|
1185
|
+
if Expression.s_requires_escape(c)
|
1186
|
+
buf += "\\"
|
1187
|
+
buf += Expression.s_escape_for_value(c)
|
1188
|
+
else
|
1189
|
+
buf += c
|
1190
|
+
end
|
1191
|
+
end
|
1192
|
+
|
1193
|
+
if not props[:isbarewordsafe]
|
1194
|
+
buf += '"'
|
1195
|
+
end
|
1196
|
+
|
1197
|
+
return buf
|
1198
|
+
end
|
1199
|
+
|
1172
1200
|
# NOTE THESE BUFFERS ARE ACTUALLY MUTABLE
|
1173
1201
|
#
|
1174
1202
|
# Human Readable notes:
|
@@ -1191,23 +1219,7 @@ module Wexpr
|
|
1191
1219
|
v = self.value
|
1192
1220
|
props = Expression.s_wexpr_value_string_properties(v)
|
1193
1221
|
|
1194
|
-
|
1195
|
-
newBuf += '"'
|
1196
|
-
end
|
1197
|
-
|
1198
|
-
# do per character so we can escape as needed
|
1199
|
-
for c in v.chars
|
1200
|
-
if Expression.s_requires_escape(c)
|
1201
|
-
newBuf += "\\"
|
1202
|
-
newBuf += Expression.s_escape_for_value(c)
|
1203
|
-
else
|
1204
|
-
newBuf += c
|
1205
|
-
end
|
1206
|
-
end
|
1207
|
-
|
1208
|
-
if not props[:isbarewordsafe]
|
1209
|
-
newBuf += '"'
|
1210
|
-
end
|
1222
|
+
newBuf += Expression.s_write_string_escaped(v, props)
|
1211
1223
|
|
1212
1224
|
return newBuf
|
1213
1225
|
|
@@ -1301,7 +1313,7 @@ module Wexpr
|
|
1301
1313
|
# if human readable, indent the line, output the key, space, object, newline
|
1302
1314
|
if writeHumanReadable
|
1303
1315
|
newBuf += Expression.s_indent(indent+1)
|
1304
|
-
newBuf += key
|
1316
|
+
newBuf += Expression.s_write_string_escaped(key, Expression.s_wexpr_value_string_properties(key))
|
1305
1317
|
newBuf += " "
|
1306
1318
|
|
1307
1319
|
# add the value
|
@@ -1317,7 +1329,7 @@ module Wexpr
|
|
1317
1329
|
end
|
1318
1330
|
|
1319
1331
|
# now key, space, value
|
1320
|
-
newBuf += key
|
1332
|
+
newBuf += Expression.s_write_string_escaped(key, Expression.s_wexpr_value_string_properties(key))
|
1321
1333
|
newBuf += " "
|
1322
1334
|
|
1323
1335
|
newBuf = value.p_append_string_representation_to_buffer(flags, indent, newBuf)
|
data/lib/wexpr/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wexpr
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kenneth Perry (thothonegan)
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-02-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -99,7 +99,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
99
99
|
version: '0'
|
100
100
|
requirements: []
|
101
101
|
rubyforge_project:
|
102
|
-
rubygems_version: 2.7.
|
102
|
+
rubygems_version: 2.7.6.2
|
103
103
|
signing_key:
|
104
104
|
specification_version: 4
|
105
105
|
summary: Wexpr parser and emitter for ruby
|