fjson 0.0.4 → 0.0.5
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.
- data/CHANGES +3 -0
- data/Rakefile +36 -14
- data/ext/extensions/array_ext/extconf.mkmf.rb +3 -0
- data/ext/extensions/false_class_ext/extconf.mkmf.rb +3 -0
- data/ext/extensions/float_ext/extconf.mkmf.rb +3 -0
- data/ext/extensions/hash_ext/extconf.mkmf.rb +3 -0
- data/ext/extensions/integer_ext/extconf.mkmf.rb +3 -0
- data/ext/extensions/nil_class_ext/extconf.mkmf.rb +3 -0
- data/ext/extensions/object_ext/extconf.mkmf.rb +3 -0
- data/ext/extensions/string_ext/extconf.mkmf.rb +3 -0
- data/ext/extensions/true_class_ext/extconf.mkmf.rb +3 -0
- data/ext/json_ext/extconf.mkmf.rb +3 -0
- data/ext/state_ext/extconf.mkmf.rb +3 -0
- data/rake_helper.rb +7 -4
- metadata +54 -43
data/CHANGES
CHANGED
data/Rakefile
CHANGED
@@ -6,7 +6,6 @@ require 'rake/clean'
|
|
6
6
|
require 'rake/testtask'
|
7
7
|
require 'rake/rdoctask'
|
8
8
|
|
9
|
-
|
10
9
|
task :default => [ :compile ] do
|
11
10
|
end
|
12
11
|
|
@@ -52,33 +51,51 @@ fjson_extensions.each do |ext|
|
|
52
51
|
end
|
53
52
|
|
54
53
|
task :install do
|
55
|
-
dir = File.dirname(__FILE__)
|
56
54
|
fjson_extensions.each do |extension_path|
|
57
|
-
|
58
|
-
|
55
|
+
library_path = library_path(extension_path)
|
56
|
+
raise "Extension binary for #{extension_path} does not exist. Did you run rake compile?" unless library_path
|
57
|
+
cp build_path(extension_path), library_path(extension_path)
|
59
58
|
end
|
60
59
|
end
|
61
60
|
|
62
61
|
task :cleanup do
|
63
62
|
fjson_extensions.each do |extension_path|
|
64
|
-
|
65
|
-
rm
|
63
|
+
library_path = library_path(extension_path)
|
64
|
+
rm library_path if library_path && File.exists?(library_path)
|
65
|
+
rake_file_path = "#{build_path(extension_path)}/Rakefile"
|
66
|
+
rm rake_file_path if rake_file_path && File.exists?(rake_file_path)
|
66
67
|
end
|
67
68
|
end
|
68
69
|
|
69
|
-
def
|
70
|
-
|
71
|
-
|
72
|
-
|
70
|
+
def build_path(relative_extension_path)
|
71
|
+
basename = "#{File.dirname(__FILE__)}/ext/#{relative_extension_path}/#{File.basename(relative_extension_path)}"
|
72
|
+
if File.exists?("#{basename}.so")
|
73
|
+
return "#{basename}.so"
|
74
|
+
elsif File.exists?("#{basename}.bundle")
|
75
|
+
return "#{basename}.bundle"
|
76
|
+
end
|
77
|
+
return nil
|
73
78
|
end
|
74
79
|
|
75
|
-
def
|
76
|
-
|
77
|
-
|
80
|
+
def library_path(relative_extension_path)
|
81
|
+
build_path = build_path(relative_extension_path)
|
82
|
+
return nil unless build_path
|
83
|
+
extname = File.extname(build_path)
|
84
|
+
library_directory_path = File.dirname(__FILE__) + "/lib/" + File.dirname(relative_extension_path)
|
85
|
+
binary_name = "#{File.basename(relative_extension_path)}#{extname}"
|
86
|
+
"#{library_directory_path}/#{binary_name}"
|
87
|
+
end
|
88
|
+
|
89
|
+
def win32?
|
90
|
+
ENV["target_platform"] == "win32"
|
91
|
+
end
|
92
|
+
|
93
|
+
if win32?
|
94
|
+
#Rake::Task[].invoke
|
78
95
|
end
|
79
96
|
|
80
97
|
PKG_NAME = "fjson"
|
81
|
-
PKG_VERSION = "0.0.
|
98
|
+
PKG_VERSION = "0.0.5"
|
82
99
|
PKG_FILE_NAME = "#{PKG_NAME}-#{PKG_VERSION}"
|
83
100
|
PKG_FILES = FileList[
|
84
101
|
'[A-Z]*',
|
@@ -96,6 +113,7 @@ spec = Gem::Specification.new do |s|
|
|
96
113
|
This library is a fork of Florian Frank's JSON library with key parts implemented
|
97
114
|
in C for performance improvements.
|
98
115
|
EOF
|
116
|
+
s.test_files = Dir.glob('spec/*_spec.rb')
|
99
117
|
s.description = s.summary
|
100
118
|
|
101
119
|
s.files = PKG_FILES.to_a
|
@@ -115,6 +133,10 @@ spec = Gem::Specification.new do |s|
|
|
115
133
|
s.extensions = ["Rakefile"]
|
116
134
|
|
117
135
|
s.add_dependency "mkrf", ">=0.1.2"
|
136
|
+
|
137
|
+
if win32?
|
138
|
+
|
139
|
+
end
|
118
140
|
end
|
119
141
|
|
120
142
|
Rake::GemPackageTask.new(spec) do |pkg|
|
data/rake_helper.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
def setup_extension(
|
2
|
-
ext_dir = "ext/#{
|
3
|
-
extension = File.basename(
|
1
|
+
def setup_extension(extension_path, extension=nil)
|
2
|
+
ext_dir = "ext/#{extension_path}"
|
3
|
+
extension = File.basename(extension_path) if extension.nil?
|
4
4
|
ext_so = "#{ext_dir}/#{extension}.#{Config::CONFIG['DLEXT']}"
|
5
5
|
|
6
6
|
desc "Builds the #{extension} extension"
|
@@ -10,6 +10,10 @@ def setup_extension(dir, extension=nil)
|
|
10
10
|
extconf "#{ext_dir}"
|
11
11
|
end
|
12
12
|
|
13
|
+
create_so_file_tasks(ext_dir, ext_so)
|
14
|
+
end
|
15
|
+
|
16
|
+
def create_so_file_tasks(ext_dir, ext_so)
|
13
17
|
ext_files = FileList[
|
14
18
|
"#{ext_dir}/*.c",
|
15
19
|
"#{ext_dir}/*.h",
|
@@ -17,7 +21,6 @@ def setup_extension(dir, extension=nil)
|
|
17
21
|
"#{ext_dir}/Rakefile",
|
18
22
|
"lib"
|
19
23
|
]
|
20
|
-
ext_subdir = File.dirname(dir)
|
21
24
|
file ext_so => ext_files do
|
22
25
|
rake ext_dir
|
23
26
|
end
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.0
|
|
3
3
|
specification_version: 1
|
4
4
|
name: fjson
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.0.
|
7
|
-
date: 2006-10-
|
6
|
+
version: 0.0.5
|
7
|
+
date: 2006-10-21 00:00:00 -07:00
|
8
8
|
summary: This library is for parsing JSON strings and unparsing ruby data structures. This library is a fork of Florian Frank's JSON library with key parts implemented in C for performance improvements.
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -29,84 +29,95 @@ post_install_message:
|
|
29
29
|
authors:
|
30
30
|
- Brian Takita
|
31
31
|
files:
|
32
|
-
- Rakefile
|
33
|
-
- GPL
|
34
|
-
- TODO
|
35
32
|
- CHANGES
|
33
|
+
- GPL
|
34
|
+
- Rakefile
|
36
35
|
- README
|
37
|
-
-
|
38
|
-
- install.rb
|
36
|
+
- TODO
|
39
37
|
- hash_benchmark.rb
|
40
|
-
-
|
38
|
+
- install.rb
|
39
|
+
- rake_helper.rb
|
41
40
|
- lib/fjson.rb
|
42
|
-
- lib/
|
41
|
+
- lib/parser.rb
|
43
42
|
- lib/extensions/class.rb
|
43
|
+
- lib/extensions/kernel.rb
|
44
44
|
- lib/extensions/string.rb
|
45
45
|
- lib/json/editor.rb
|
46
|
+
- ext/extensions/array_ext/array_ext.h
|
46
47
|
- ext/extensions/false_class_ext/false_class_ext.h
|
47
|
-
- ext/extensions/hash_ext/hash_ext.h
|
48
|
-
- ext/extensions/true_class_ext/true_class_ext.h
|
49
48
|
- ext/extensions/float_ext/float_ext.h
|
49
|
+
- ext/extensions/hash_ext/hash_ext.h
|
50
|
+
- ext/extensions/integer_ext/integer_ext.h
|
51
|
+
- ext/extensions/nil_class_ext/nil_class_ext.h
|
50
52
|
- ext/extensions/object_ext/object_ext.h
|
51
53
|
- ext/extensions/string_ext/string_ext.h
|
52
|
-
- ext/extensions/
|
53
|
-
- ext/extensions/integer_ext/integer_ext.h
|
54
|
-
- ext/extensions/array_ext/array_ext.h
|
55
|
-
- ext/state_ext/state_ext.h
|
54
|
+
- ext/extensions/true_class_ext/true_class_ext.h
|
56
55
|
- ext/json_ext/json_ext.h
|
56
|
+
- ext/state_ext/state_ext.h
|
57
|
+
- ext/extensions/array_ext/array_ext.c
|
57
58
|
- ext/extensions/false_class_ext/false_class_ext.c
|
58
|
-
- ext/extensions/hash_ext/hash_ext.c
|
59
|
-
- ext/extensions/true_class_ext/true_class_ext.c
|
60
59
|
- ext/extensions/float_ext/float_ext.c
|
60
|
+
- ext/extensions/hash_ext/hash_ext.c
|
61
|
+
- ext/extensions/integer_ext/integer_ext.c
|
62
|
+
- ext/extensions/nil_class_ext/nil_class_ext.c
|
61
63
|
- ext/extensions/object_ext/object_ext.c
|
62
64
|
- ext/extensions/string_ext/string_ext.c
|
63
|
-
- ext/extensions/
|
64
|
-
- ext/extensions/integer_ext/integer_ext.c
|
65
|
-
- ext/extensions/array_ext/array_ext.c
|
66
|
-
- ext/state_ext/state_ext.c
|
65
|
+
- ext/extensions/true_class_ext/true_class_ext.c
|
67
66
|
- ext/json_ext/json_ext.c
|
67
|
+
- ext/state_ext/state_ext.c
|
68
|
+
- ext/extensions/array_ext/extconf.mkmf.rb
|
69
|
+
- ext/extensions/array_ext/extconf.rb
|
70
|
+
- ext/extensions/false_class_ext/extconf.mkmf.rb
|
68
71
|
- ext/extensions/false_class_ext/extconf.rb
|
69
|
-
- ext/extensions/
|
70
|
-
- ext/extensions/true_class_ext/extconf.rb
|
72
|
+
- ext/extensions/float_ext/extconf.mkmf.rb
|
71
73
|
- ext/extensions/float_ext/extconf.rb
|
74
|
+
- ext/extensions/hash_ext/extconf.mkmf.rb
|
75
|
+
- ext/extensions/hash_ext/extconf.rb
|
76
|
+
- ext/extensions/integer_ext/extconf.mkmf.rb
|
77
|
+
- ext/extensions/integer_ext/extconf.rb
|
78
|
+
- ext/extensions/nil_class_ext/extconf.mkmf.rb
|
79
|
+
- ext/extensions/nil_class_ext/extconf.rb
|
80
|
+
- ext/extensions/object_ext/extconf.mkmf.rb
|
72
81
|
- ext/extensions/object_ext/extconf.rb
|
82
|
+
- ext/extensions/string_ext/extconf.mkmf.rb
|
73
83
|
- ext/extensions/string_ext/extconf.rb
|
74
|
-
- ext/extensions/
|
75
|
-
- ext/extensions/
|
76
|
-
- ext/
|
77
|
-
- ext/state_ext/extconf.rb
|
84
|
+
- ext/extensions/true_class_ext/extconf.mkmf.rb
|
85
|
+
- ext/extensions/true_class_ext/extconf.rb
|
86
|
+
- ext/json_ext/extconf.mkmf.rb
|
78
87
|
- ext/json_ext/extconf.rb
|
79
|
-
-
|
80
|
-
-
|
81
|
-
- spec/string_spec.rb
|
82
|
-
- spec/object_spec.rb
|
83
|
-
- spec/nil_class_spec.rb
|
88
|
+
- ext/state_ext/extconf.mkmf.rb
|
89
|
+
- ext/state_ext/extconf.rb
|
84
90
|
- spec/array_spec.rb
|
85
|
-
- spec/spec_helper.rb
|
86
91
|
- spec/false_class_spec.rb
|
87
|
-
- spec/
|
88
|
-
- spec/state_spec.rb
|
92
|
+
- spec/float_spec.rb
|
89
93
|
- spec/hash_spec.rb
|
90
|
-
- spec/spec_suite.rb
|
91
94
|
- spec/integer_spec.rb
|
95
|
+
- spec/nil_class_spec.rb
|
96
|
+
- spec/object_spec.rb
|
97
|
+
- spec/spec_helper.rb
|
98
|
+
- spec/spec_suite.rb
|
99
|
+
- spec/state_spec.rb
|
100
|
+
- spec/string_spec.rb
|
101
|
+
- spec/string_when_not_supporting_unicode_and_kcode_is_not_utf8_json_spec.rb
|
92
102
|
- spec/string_when_supporting_unicode_and_kcode_is_not_utf8_json_spec.rb
|
93
103
|
- spec/string_with_latin1_character_set_json_spec.rb
|
94
104
|
- spec/string_with_utf8_values_when_supporting_unicode_json_spec.rb
|
95
|
-
test_files:
|
96
105
|
- spec/true_class_spec.rb
|
97
|
-
|
98
|
-
- spec/string_spec.rb
|
99
|
-
- spec/object_spec.rb
|
100
|
-
- spec/nil_class_spec.rb
|
106
|
+
test_files:
|
101
107
|
- spec/array_spec.rb
|
102
108
|
- spec/false_class_spec.rb
|
103
|
-
- spec/
|
104
|
-
- spec/state_spec.rb
|
109
|
+
- spec/float_spec.rb
|
105
110
|
- spec/hash_spec.rb
|
106
111
|
- spec/integer_spec.rb
|
112
|
+
- spec/nil_class_spec.rb
|
113
|
+
- spec/object_spec.rb
|
114
|
+
- spec/state_spec.rb
|
115
|
+
- spec/string_spec.rb
|
116
|
+
- spec/string_when_not_supporting_unicode_and_kcode_is_not_utf8_json_spec.rb
|
107
117
|
- spec/string_when_supporting_unicode_and_kcode_is_not_utf8_json_spec.rb
|
108
118
|
- spec/string_with_latin1_character_set_json_spec.rb
|
109
119
|
- spec/string_with_utf8_values_when_supporting_unicode_json_spec.rb
|
120
|
+
- spec/true_class_spec.rb
|
110
121
|
rdoc_options: []
|
111
122
|
|
112
123
|
extra_rdoc_files:
|