usamin 7.7.10 → 7.7.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/usamin/extconf.rb +4 -0
- data/ext/usamin/generator.cpp +8 -1
- data/ext/usamin/parser.cpp +1 -0
- data/ext/usamin/rb270_fix.hpp +16 -0
- data/ext/usamin/rb_usamin_array.cpp +1 -0
- data/ext/usamin/rb_usamin_hash.cpp +1 -0
- data/ext/usamin/rb_usamin_value.cpp +1 -0
- data/lib/usamin/version.rb +1 -1
- metadata +6 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5c1850442411d90d31a98e9d3286b773852a1e855ba32227b1d266ea2ae2581f
|
4
|
+
data.tar.gz: 4382e4499525e5aa163e023feb62f4e839bc98dd3540a11112ee6b3334d632c1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 27d1e300cb0242087202b903ef425ff25d81b1249834111f1302d060e7991e9e665f34f2674a8da5f90647bc9448417141925cd6fad06bdd5783f79fc59bea0f
|
7
|
+
data.tar.gz: 0133a944f187fed3deb2f295fd2e18b9386d52a1f87f3873f58ab37b530de591812f29c422558c35e180b65ebb73ff94d4ca9669dc027c6f47716018538e0004
|
data/ext/usamin/extconf.rb
CHANGED
@@ -4,6 +4,7 @@ require 'mkmf'
|
|
4
4
|
|
5
5
|
RbConfig::MAKEFILE_CONFIG['CXX'] = ENV['CXX'] if ENV['CXX']
|
6
6
|
have_library('stdc++')
|
7
|
+
have_library('m')
|
7
8
|
dir_config('rapidjson')
|
8
9
|
append_cppflags('-O3')
|
9
10
|
append_cppflags('-Wall')
|
@@ -20,4 +21,7 @@ if checking_for('whether -march=native is accepted as CPPFLAGS'){try_cppflags('-
|
|
20
21
|
end
|
21
22
|
|
22
23
|
$CPPFLAGS << ' -std=c++11'
|
24
|
+
|
25
|
+
$CPPFLAGS << ' -DRAPIDJSON_IS_HEAD' if arg_config('--rapidjson-is-head')
|
26
|
+
|
23
27
|
create_makefile('usamin/usamin')
|
data/ext/usamin/generator.cpp
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
#include "rb270_fix.hpp"
|
1
2
|
#include <rapidjson/prettywriter.h>
|
2
3
|
#include <rapidjson/writer.h>
|
3
4
|
#include <ruby.h>
|
@@ -6,6 +7,8 @@
|
|
6
7
|
#include "rb_usamin_value.hpp"
|
7
8
|
#include "rubynized_rapidjson.hpp"
|
8
9
|
|
10
|
+
#define WRITER_CONFIGS rapidjson::UTF8<>, rapidjson::UTF8<>, RubyCrtAllocator, rapidjson::kWriteNanAndInfFlag
|
11
|
+
|
9
12
|
template <class Writer>
|
10
13
|
static inline void write_hash(Writer &, const VALUE);
|
11
14
|
template <class Writer>
|
@@ -152,7 +155,7 @@ static inline void write_usamin(Writer &writer, const VALUE self) {
|
|
152
155
|
*/
|
153
156
|
VALUE w_generate(const VALUE, const VALUE value) {
|
154
157
|
rapidjson::StringBuffer buf;
|
155
|
-
rapidjson::Writer<rapidjson::StringBuffer> writer(buf);
|
158
|
+
rapidjson::Writer<rapidjson::StringBuffer, WRITER_CONFIGS> writer(buf);
|
156
159
|
write(writer, value);
|
157
160
|
return new_utf8_str(buf.GetString(), buf.GetSize());
|
158
161
|
}
|
@@ -174,7 +177,11 @@ VALUE w_pretty_generate(const int argc, const VALUE *argv, const VALUE) {
|
|
174
177
|
VALUE value, options;
|
175
178
|
rb_scan_args(argc, argv, "1:", &value, &options);
|
176
179
|
rapidjson::StringBuffer buf;
|
180
|
+
#if RAPIDJSON_VERSION_CODE(RAPIDJSON_MAJOR_VERSION, RAPIDJSON_MINOR_VERSION, RAPIDJSON_PATCH_VERSION) > RAPIDJSON_VERSION_CODE(1, 1, 0) || defined(RAPIDJSON_IS_HEAD)
|
181
|
+
rapidjson::PrettyWriter<rapidjson::StringBuffer, WRITER_CONFIGS> writer(buf);
|
182
|
+
#else
|
177
183
|
rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf);
|
184
|
+
#endif
|
178
185
|
|
179
186
|
char indent_char = ' ';
|
180
187
|
unsigned int indent_count = 2;
|
data/ext/usamin/parser.cpp
CHANGED
@@ -0,0 +1,16 @@
|
|
1
|
+
#ifndef RB270_FIX_HPP
|
2
|
+
#define RB270_FIX_HPP
|
3
|
+
|
4
|
+
#include <cstring>
|
5
|
+
#include <ruby/version.h>
|
6
|
+
|
7
|
+
#if RUBY_API_VERSION_CODE >= 20700 && defined(__GLIBC__)
|
8
|
+
|
9
|
+
namespace std {
|
10
|
+
static inline void *ruby_nonempty_memcpy(void *dest, const void *src, size_t n) {
|
11
|
+
return (n ? memcpy(dest, src, n) : dest);
|
12
|
+
}
|
13
|
+
} // namespace std
|
14
|
+
#endif
|
15
|
+
|
16
|
+
#endif
|
data/lib/usamin/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: usamin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 7.7.
|
4
|
+
version: 7.7.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ishotihadus
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-06-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -89,6 +89,7 @@ files:
|
|
89
89
|
- ext/usamin/parser.cpp
|
90
90
|
- ext/usamin/parser.hpp
|
91
91
|
- ext/usamin/parser_helper.hpp
|
92
|
+
- ext/usamin/rb270_fix.hpp
|
92
93
|
- ext/usamin/rb_common.cpp
|
93
94
|
- ext/usamin/rb_common.hpp
|
94
95
|
- ext/usamin/rb_usamin_array.cpp
|
@@ -110,7 +111,7 @@ homepage: https://github.com/Ishotihadus/usamin
|
|
110
111
|
licenses:
|
111
112
|
- MIT
|
112
113
|
metadata: {}
|
113
|
-
post_install_message:
|
114
|
+
post_install_message:
|
114
115
|
rdoc_options: []
|
115
116
|
require_paths:
|
116
117
|
- lib
|
@@ -126,7 +127,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
126
127
|
version: '0'
|
127
128
|
requirements: []
|
128
129
|
rubygems_version: 3.1.2
|
129
|
-
signing_key:
|
130
|
+
signing_key:
|
130
131
|
specification_version: 4
|
131
132
|
summary: A RapidJSON Wrapper for Ruby
|
132
133
|
test_files: []
|