fjson 0.0.4 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- 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:
|