mito_natto 0.0.1
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 +7 -0
- data/.gitignore +18 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +62 -0
- data/Rakefile +1 -0
- data/lib/mito_natto.rb +29 -0
- data/lib/mito_natto/version.rb +3 -0
- data/lib/mito_natto_node.rb +40 -0
- data/mito_natto.gemspec +32 -0
- data/spec/mito_natto_spec.rb +199 -0
- metadata +111 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 266536ad3d1965cba99b90d7c9ea0181f381132c
|
4
|
+
data.tar.gz: bd8f0aa19008d1a74cf7369bafca078df17e3677
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 82be9bc39593d2ae7bc23d41d53950d246c09ac979d2a41f0e626190fcbbdaea42df8d500cdaaec1b7d686f43e5d27c3421ad8ac20d9ca5b12922c890c6cc812
|
7
|
+
data.tar.gz: 51b3ca957fbca839d5e7ddbb84a6904cc123c3994afb29f5f350c7fa00fb6afd1afc1c9d72e4c0e4535a883a02432d507c7596f6b2457adaabc88b889b72dcee
|
data/.gitignore
ADDED
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2013 akira-kuriyama
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
# MitoNatto
|
2
|
+
|
3
|
+
Natto( https://bitbucket.org/buruzaemon/natto )をラップして少し使いやすくしたライブラリです。
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
Add this line to your application's Gemfile:
|
8
|
+
|
9
|
+
gem 'mito_natto'
|
10
|
+
|
11
|
+
And then execute:
|
12
|
+
|
13
|
+
$ bundle
|
14
|
+
|
15
|
+
Or install it yourself as:
|
16
|
+
|
17
|
+
$ gem install mito_natto
|
18
|
+
|
19
|
+
## Usage
|
20
|
+
|
21
|
+
```
|
22
|
+
# parseメソッドをよぶと、MitoNattoNodeクラスの配列が返ります
|
23
|
+
node_list = MitoNatto.parse('今日はいい天気なので北海道に行きました')
|
24
|
+
|
25
|
+
node_list.each_with_index do |node|
|
26
|
+
|
27
|
+
#MitoNattoNodeクラスには以下の様なメソッドがあります
|
28
|
+
|
29
|
+
p node.surface
|
30
|
+
p node.features
|
31
|
+
|
32
|
+
p node.品詞
|
33
|
+
p node.品詞細分類1
|
34
|
+
p node.品詞細分類2
|
35
|
+
p node.品詞細分類3
|
36
|
+
p node.活用形
|
37
|
+
p node.活用型
|
38
|
+
p node.原形
|
39
|
+
p node.読み
|
40
|
+
p node.発音
|
41
|
+
|
42
|
+
#日本語メソッド以外にも英語メソッドもあります
|
43
|
+
p node.noun
|
44
|
+
p node.noun_detail1
|
45
|
+
p node.noun_detail2
|
46
|
+
p node.noun_detail3
|
47
|
+
p node.inflected_form
|
48
|
+
p node.inflected_type
|
49
|
+
p node.root_form
|
50
|
+
p node.reading
|
51
|
+
p node.pronunciation
|
52
|
+
|
53
|
+
end
|
54
|
+
```
|
55
|
+
|
56
|
+
## Contributing
|
57
|
+
|
58
|
+
1. Fork it
|
59
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
60
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
61
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
62
|
+
5. Create new Pull Request
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
data/lib/mito_natto.rb
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
require "mito_natto/version"
|
3
|
+
|
4
|
+
require 'natto'
|
5
|
+
require 'mito_natto_node'
|
6
|
+
|
7
|
+
module MitoNatto
|
8
|
+
|
9
|
+
def self.parse(text)
|
10
|
+
node_list = []
|
11
|
+
if text == nil || text == ''
|
12
|
+
return node_list
|
13
|
+
end
|
14
|
+
|
15
|
+
natto_mecab.parse(text) do |node|
|
16
|
+
next if node.surface == nil
|
17
|
+
mito_natto_node = MitoNattoNode.new
|
18
|
+
mito_natto_node.mecab_node = node
|
19
|
+
node_list.push(mito_natto_node)
|
20
|
+
end
|
21
|
+
node_list
|
22
|
+
end
|
23
|
+
|
24
|
+
private
|
25
|
+
def self.natto_mecab
|
26
|
+
natto_mecab ||= Natto::MeCab.new
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
require "mito_natto/version"
|
3
|
+
|
4
|
+
require 'natto'
|
5
|
+
|
6
|
+
class MitoNattoNode
|
7
|
+
|
8
|
+
attr_accessor :mecab_node
|
9
|
+
|
10
|
+
def surface
|
11
|
+
mecab_node.surface
|
12
|
+
end
|
13
|
+
|
14
|
+
def features
|
15
|
+
@features ||= mecab_node.feature.split(',')
|
16
|
+
end
|
17
|
+
|
18
|
+
def method_missing(method_name)
|
19
|
+
[ELEMENTS_JA, ELEMENTS_EN].each do |elements|
|
20
|
+
if elements.include?(method_name.to_s)
|
21
|
+
return features[elements.find_index(method_name.to_s)]
|
22
|
+
end
|
23
|
+
end
|
24
|
+
super
|
25
|
+
end
|
26
|
+
|
27
|
+
def respond_to?(method_name)
|
28
|
+
[ELEMENTS_JA, ELEMENTS_EN].each do |elements|
|
29
|
+
if elements.include?(method_name.to_s)
|
30
|
+
return true
|
31
|
+
end
|
32
|
+
end
|
33
|
+
super
|
34
|
+
end
|
35
|
+
|
36
|
+
private
|
37
|
+
|
38
|
+
ELEMENTS_JA = %w(品詞 品詞細分類1 品詞細分類2 品詞細分類3 活用形 活用型 原形 読み 発音).freeze
|
39
|
+
ELEMENTS_EN = %w(noun noun_detail1 noun_detail2 noun_detail3 inflected_form inflected_type root_form reading pronunciation).freeze
|
40
|
+
end
|
data/mito_natto.gemspec
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'mito_natto/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = 'mito_natto'
|
8
|
+
spec.version = MitoNatto::VERSION
|
9
|
+
spec.authors = ['akira-kuriyama']
|
10
|
+
spec.email = ['marronshepherd2@gmail.com']
|
11
|
+
spec.description = %q{Nattoをラップして少し使いやすくしたライブラリです}
|
12
|
+
spec.summary = %q{Nattoをラップして少し使いやすくしたライブラリ}
|
13
|
+
spec.homepage = 'https://github.com/akira-kuriyama/mito_natto.git'
|
14
|
+
spec.license = 'MIT'
|
15
|
+
|
16
|
+
spec.files = `git ls-files`.split($/)
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
spec.required_ruby_version = '>= 2.0.0'
|
22
|
+
|
23
|
+
spec.add_development_dependency 'bundler', '~> 1.3'
|
24
|
+
spec.add_development_dependency 'rake'
|
25
|
+
spec.add_development_dependency 'rspec', '~> 2.0'
|
26
|
+
|
27
|
+
spec.required_ruby_version = '>= 1.9.3'
|
28
|
+
|
29
|
+
spec.add_runtime_dependency 'natto', '~> 0.9.6'
|
30
|
+
|
31
|
+
|
32
|
+
end
|
@@ -0,0 +1,199 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
require 'rspec'
|
3
|
+
require 'mito_natto'
|
4
|
+
|
5
|
+
describe MitoNatto do
|
6
|
+
|
7
|
+
describe 'parse' do
|
8
|
+
|
9
|
+
context '引数がnilの場合' do
|
10
|
+
it do
|
11
|
+
node_list = MitoNatto.parse nil
|
12
|
+
expect(node_list).to eq([])
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
context '引数が空文字の場合' do
|
17
|
+
it do
|
18
|
+
node_list = MitoNatto.parse ''
|
19
|
+
expect(node_list).to eq([])
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
context '引数が空ではない場合' do
|
24
|
+
it do
|
25
|
+
surface_result = %w[今日 は いい 天気 な ので 北海道 に 行き まし た 。]
|
26
|
+
features_result = {
|
27
|
+
'今日' =>
|
28
|
+
{
|
29
|
+
'品詞' => '名詞',
|
30
|
+
'品詞細分類1' => '副詞可能',
|
31
|
+
'品詞細分類2' => '*',
|
32
|
+
'品詞細分類3' => '*',
|
33
|
+
'活用形' => '*',
|
34
|
+
'活用型' => '*',
|
35
|
+
'原形' => '今日',
|
36
|
+
'読み' => 'キョウ',
|
37
|
+
'発音' => 'キョー'
|
38
|
+
|
39
|
+
},
|
40
|
+
'は' =>
|
41
|
+
{
|
42
|
+
'品詞' => '助詞',
|
43
|
+
'品詞細分類1' => '係助詞',
|
44
|
+
'品詞細分類2' => '*',
|
45
|
+
'品詞細分類3' => '*',
|
46
|
+
'活用形' => '*',
|
47
|
+
'活用型' => '*',
|
48
|
+
'原形' => 'は',
|
49
|
+
'読み' => 'ハ',
|
50
|
+
'発音' => 'ワ'
|
51
|
+
|
52
|
+
},
|
53
|
+
'いい' =>
|
54
|
+
{
|
55
|
+
'品詞' => '形容詞',
|
56
|
+
'品詞細分類1' => '自立',
|
57
|
+
'品詞細分類2' => '*',
|
58
|
+
'品詞細分類3' => '*',
|
59
|
+
'活用形' => '形容詞・イイ',
|
60
|
+
'活用型' => '基本形',
|
61
|
+
'原形' => 'いい',
|
62
|
+
'読み' => 'イイ',
|
63
|
+
'発音' => 'イイ'
|
64
|
+
|
65
|
+
},
|
66
|
+
'天気' =>
|
67
|
+
{
|
68
|
+
'品詞' => '名詞',
|
69
|
+
'品詞細分類1' => '一般',
|
70
|
+
'品詞細分類2' => '*',
|
71
|
+
'品詞細分類3' => '*',
|
72
|
+
'活用形' => '*',
|
73
|
+
'活用型' => '*',
|
74
|
+
'原形' => '天気',
|
75
|
+
'読み' => 'テンキ',
|
76
|
+
'発音' => 'テンキ'
|
77
|
+
|
78
|
+
},
|
79
|
+
'な' =>
|
80
|
+
{
|
81
|
+
'品詞' => '助動詞',
|
82
|
+
'品詞細分類1' => '*',
|
83
|
+
'品詞細分類2' => '*',
|
84
|
+
'品詞細分類3' => '*',
|
85
|
+
'活用形' => '特殊・ダ',
|
86
|
+
'活用型' => '体言接続',
|
87
|
+
'原形' => 'だ',
|
88
|
+
'読み' => 'ナ',
|
89
|
+
'発音' => 'ナ'
|
90
|
+
|
91
|
+
},
|
92
|
+
'ので' =>
|
93
|
+
{
|
94
|
+
'品詞' => '助詞',
|
95
|
+
'品詞細分類1' => '接続助詞',
|
96
|
+
'品詞細分類2' => '*',
|
97
|
+
'品詞細分類3' => '*',
|
98
|
+
'活用形' => '*',
|
99
|
+
'活用型' => '*',
|
100
|
+
'原形' => 'ので',
|
101
|
+
'読み' => 'ノデ',
|
102
|
+
'発音' => 'ノデ'
|
103
|
+
|
104
|
+
},
|
105
|
+
'北海道' =>
|
106
|
+
{
|
107
|
+
'品詞' => '名詞',
|
108
|
+
'品詞細分類1' => '固有名詞',
|
109
|
+
'品詞細分類2' => '地域',
|
110
|
+
'品詞細分類3' => '一般',
|
111
|
+
'活用形' => '*',
|
112
|
+
'活用型' => '*',
|
113
|
+
'原形' => '北海道',
|
114
|
+
'読み' => 'ホッカイドウ',
|
115
|
+
'発音' => 'ホッカイドー'
|
116
|
+
|
117
|
+
},
|
118
|
+
'に' =>
|
119
|
+
{
|
120
|
+
'品詞' => '助詞',
|
121
|
+
'品詞細分類1' => '格助詞',
|
122
|
+
'品詞細分類2' => '一般',
|
123
|
+
'品詞細分類3' => '*',
|
124
|
+
'活用形' => '*',
|
125
|
+
'活用型' => '*',
|
126
|
+
'原形' => 'に',
|
127
|
+
'読み' => 'ニ',
|
128
|
+
'発音' => 'ニ'
|
129
|
+
|
130
|
+
},
|
131
|
+
'行き' =>
|
132
|
+
{
|
133
|
+
'品詞' => '動詞',
|
134
|
+
'品詞細分類1' => '自立',
|
135
|
+
'品詞細分類2' => '*',
|
136
|
+
'品詞細分類3' => '*',
|
137
|
+
'活用形' => '五段・カ行促音便',
|
138
|
+
'活用型' => '連用形',
|
139
|
+
'原形' => '行く',
|
140
|
+
'読み' => 'イキ',
|
141
|
+
'発音' => 'イキ'
|
142
|
+
|
143
|
+
},
|
144
|
+
'まし' =>
|
145
|
+
{
|
146
|
+
'品詞' => '助動詞',
|
147
|
+
'品詞細分類1' => '*',
|
148
|
+
'品詞細分類2' => '*',
|
149
|
+
'品詞細分類3' => '*',
|
150
|
+
'活用形' => '特殊・マス',
|
151
|
+
'活用型' => '連用形',
|
152
|
+
'原形' => 'ます',
|
153
|
+
'読み' => 'マシ',
|
154
|
+
'発音' => 'マシ'
|
155
|
+
|
156
|
+
},
|
157
|
+
'た' =>
|
158
|
+
{
|
159
|
+
'品詞' => '助動詞',
|
160
|
+
'品詞細分類1' => '*',
|
161
|
+
'品詞細分類2' => '*',
|
162
|
+
'品詞細分類3' => '*',
|
163
|
+
'活用形' => '特殊・タ',
|
164
|
+
'活用型' => '基本形',
|
165
|
+
'原形' => 'た',
|
166
|
+
'読み' => 'タ',
|
167
|
+
'発音' => 'タ'
|
168
|
+
}
|
169
|
+
}
|
170
|
+
node_list = MitoNatto.parse('今日はいい天気なので北海道に行きました')
|
171
|
+
node_list.each_with_index do |node, index|
|
172
|
+
expect(node.surface).to eq(surface_result[index])
|
173
|
+
expect(node.品詞).to eq(features_result[node.surface]['品詞'])
|
174
|
+
expect(node.品詞細分類1).to eq(features_result[node.surface]['品詞細分類1'])
|
175
|
+
expect(node.品詞細分類2).to eq(features_result[node.surface]['品詞細分類2'])
|
176
|
+
expect(node.品詞細分類3).to eq(features_result[node.surface]['品詞細分類3'])
|
177
|
+
expect(node.活用形).to eq(features_result[node.surface]['活用形'])
|
178
|
+
expect(node.活用型).to eq(features_result[node.surface]['活用型'])
|
179
|
+
expect(node.原形).to eq(features_result[node.surface]['原形'])
|
180
|
+
expect(node.読み).to eq(features_result[node.surface]['読み'])
|
181
|
+
expect(node.発音).to eq(features_result[node.surface]['発音'])
|
182
|
+
|
183
|
+
expect(node.noun).to eq(features_result[node.surface]['品詞'])
|
184
|
+
expect(node.noun_detail1).to eq(features_result[node.surface]['品詞細分類1'])
|
185
|
+
expect(node.noun_detail2).to eq(features_result[node.surface]['品詞細分類2'])
|
186
|
+
expect(node.noun_detail3).to eq(features_result[node.surface]['品詞細分類3'])
|
187
|
+
expect(node.inflected_form).to eq(features_result[node.surface]['活用形'])
|
188
|
+
expect(node.inflected_type).to eq(features_result[node.surface]['活用型'])
|
189
|
+
expect(node.root_form).to eq(features_result[node.surface]['原形'])
|
190
|
+
expect(node.reading).to eq(features_result[node.surface]['読み'])
|
191
|
+
expect(node.pronunciation).to eq(features_result[node.surface]['発音'])
|
192
|
+
|
193
|
+
expect(node.features).to eq(features_result[node.surface].values)
|
194
|
+
end
|
195
|
+
end
|
196
|
+
end
|
197
|
+
end
|
198
|
+
end
|
199
|
+
|
metadata
ADDED
@@ -0,0 +1,111 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: mito_natto
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- akira-kuriyama
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2013-11-23 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.3'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ~>
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '2.0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ~>
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '2.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: natto
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 0.9.6
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ~>
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 0.9.6
|
69
|
+
description: Nattoをラップして少し使いやすくしたライブラリです
|
70
|
+
email:
|
71
|
+
- marronshepherd2@gmail.com
|
72
|
+
executables: []
|
73
|
+
extensions: []
|
74
|
+
extra_rdoc_files: []
|
75
|
+
files:
|
76
|
+
- .gitignore
|
77
|
+
- Gemfile
|
78
|
+
- LICENSE.txt
|
79
|
+
- README.md
|
80
|
+
- Rakefile
|
81
|
+
- lib/mito_natto.rb
|
82
|
+
- lib/mito_natto/version.rb
|
83
|
+
- lib/mito_natto_node.rb
|
84
|
+
- mito_natto.gemspec
|
85
|
+
- spec/mito_natto_spec.rb
|
86
|
+
homepage: https://github.com/akira-kuriyama/mito_natto.git
|
87
|
+
licenses:
|
88
|
+
- MIT
|
89
|
+
metadata: {}
|
90
|
+
post_install_message:
|
91
|
+
rdoc_options: []
|
92
|
+
require_paths:
|
93
|
+
- lib
|
94
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
95
|
+
requirements:
|
96
|
+
- - '>='
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: 1.9.3
|
99
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - '>='
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
requirements: []
|
105
|
+
rubyforge_project:
|
106
|
+
rubygems_version: 2.0.7
|
107
|
+
signing_key:
|
108
|
+
specification_version: 4
|
109
|
+
summary: Nattoをラップして少し使いやすくしたライブラリ
|
110
|
+
test_files:
|
111
|
+
- spec/mito_natto_spec.rb
|