perquackey 0.7.2 → 0.7.3
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.rdoc +3 -0
- data/TODO.rdoc +0 -1
- data/ext/perquackey/anagrams.c +32 -4
- data/lib/perquackey.rb +1 -1
- data/man/perquackey.1 +2 -2
- data/man/perquackey.1.ronn +2 -2
- metadata +7 -11
- data/.gitignore +0 -6
- data/Gemfile +0 -9
- data/Gemfile.lock +0 -43
- data/Rakefile +0 -3
- data/perquackey.gemspec +0 -35
data/CHANGELOG.rdoc
CHANGED
data/TODO.rdoc
CHANGED
data/ext/perquackey/anagrams.c
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
static VALUE mPerquackey;
|
10
10
|
static VALUE mAnagrams;
|
11
11
|
|
12
|
-
void chop(char *string) {
|
12
|
+
static void chop(char *string) {
|
13
13
|
int length = strlen(string);
|
14
14
|
|
15
15
|
if (length > 0 && string[length-1] == '\n') {
|
@@ -17,7 +17,7 @@ void chop(char *string) {
|
|
17
17
|
}
|
18
18
|
}
|
19
19
|
|
20
|
-
int anagram_p(char *letters, char *word) {
|
20
|
+
static int anagram_p(char *letters, char *word) {
|
21
21
|
static char scratch_pad[MAX_LENGTH];
|
22
22
|
register char *scratch_pad_ptr;
|
23
23
|
|
@@ -34,7 +34,15 @@ int anagram_p(char *letters, char *word) {
|
|
34
34
|
return TRUE;
|
35
35
|
}
|
36
36
|
|
37
|
-
|
37
|
+
/*
|
38
|
+
* Document-class: Anagrams
|
39
|
+
* Document-method: anagrams
|
40
|
+
*
|
41
|
+
* call-seq:
|
42
|
+
* anagrams(letters) -> array
|
43
|
+
*
|
44
|
+
*/
|
45
|
+
static VALUE Anagrams_anagrams(VALUE self, VALUE letters) {
|
38
46
|
return rb_apply(
|
39
47
|
rb_apply(self,
|
40
48
|
rb_intern("enum_for"),
|
@@ -43,7 +51,15 @@ VALUE Anagrams_anagrams(VALUE self, VALUE letters) {
|
|
43
51
|
rb_ary_new());
|
44
52
|
}
|
45
53
|
|
46
|
-
|
54
|
+
/*
|
55
|
+
* Document-class: Anagrams
|
56
|
+
* Document-method: each_anagram
|
57
|
+
*
|
58
|
+
* call-seq:
|
59
|
+
* each_anagram(letters) { |anagram| ... } -> nil
|
60
|
+
*
|
61
|
+
*/
|
62
|
+
static VALUE Anagrams_each_anagram(VALUE self, VALUE letters_value) {
|
47
63
|
rb_io_t *stream;
|
48
64
|
char word[MAX_LENGTH];
|
49
65
|
char *letters = RSTRING(letters_value)->ptr;
|
@@ -61,6 +77,18 @@ VALUE Anagrams_each_anagram(VALUE self, VALUE letters_value) {
|
|
61
77
|
return Qnil;
|
62
78
|
}
|
63
79
|
|
80
|
+
/*
|
81
|
+
* Anagrams extends a File-backed IO stream with the ability to yield each
|
82
|
+
* anagram of the given letters it contains:
|
83
|
+
*
|
84
|
+
* File.open('/usr/share/dict/words') do |stream|
|
85
|
+
* stream.extend(Anagrams)
|
86
|
+
* stream.each_anagram('asdfuiop') do |anagram|
|
87
|
+
* puts anagram
|
88
|
+
* end
|
89
|
+
* end
|
90
|
+
*
|
91
|
+
*/
|
64
92
|
void Init_anagrams() {
|
65
93
|
mPerquackey = rb_define_module("Perquackey");
|
66
94
|
mAnagrams = rb_define_module_under(mPerquackey, "Anagrams");
|
data/lib/perquackey.rb
CHANGED
data/man/perquackey.1
CHANGED
@@ -77,8 +77,8 @@ word list at North American Scrabble tournaments. You're going to see some
|
|
77
77
|
weird ones. ("Ixora"?!)
|
78
78
|
.
|
79
79
|
.SH "AUTHOR"
|
80
|
-
Matthew Todd, \
|
81
|
-
use \fBperquackey\fR \-\- I'd love to hear from you!
|
80
|
+
Matthew Todd, \fImatthewtodd\fR on GitHub. Do drop
|
81
|
+
me a line if you use \fBperquackey\fR \-\- I'd love to hear from you!
|
82
82
|
.
|
83
83
|
.SH "SEE ALSO"
|
84
84
|
\fIhttp://en.wikipedia.org/wiki/Perquackey\fR, \fIhttp://en.wikipedia.org/wiki/Tournament_Word_List\fR, \fIhttp://perquackey.matthewtodd.org/\fR
|
data/man/perquackey.1.ronn
CHANGED
@@ -66,8 +66,8 @@ weird ones. ("Ixora"?!)
|
|
66
66
|
|
67
67
|
## AUTHOR
|
68
68
|
|
69
|
-
Matthew Todd,
|
70
|
-
use `perquackey` -- I'd love to hear from you!
|
69
|
+
Matthew Todd, [matthewtodd](http://github.com/matthewtodd) on GitHub. Do drop
|
70
|
+
me a line if you use `perquackey` -- I'd love to hear from you!
|
71
71
|
|
72
72
|
## SEE ALSO
|
73
73
|
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 7
|
8
|
-
-
|
9
|
-
version: 0.7.
|
8
|
+
- 3
|
9
|
+
version: 0.7.3
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Matthew Todd
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-04-
|
17
|
+
date: 2010-04-29 00:00:00 +03:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -75,30 +75,26 @@ extra_rdoc_files:
|
|
75
75
|
- CHANGELOG.rdoc
|
76
76
|
- README.rdoc
|
77
77
|
- TODO.rdoc
|
78
|
+
- ext/perquackey/anagrams.c
|
78
79
|
files:
|
79
|
-
- .gitignore
|
80
80
|
- CHANGELOG.rdoc
|
81
|
-
- Gemfile
|
82
|
-
- Gemfile.lock
|
83
81
|
- README.rdoc
|
84
|
-
- Rakefile
|
85
82
|
- TODO.rdoc
|
86
83
|
- bin/perquackey
|
87
84
|
- data/perquackey/dict/TWL06.txt
|
88
85
|
- data/perquackey/templates/index.erb
|
89
86
|
- data/perquackey/templates/layout.erb
|
90
|
-
- ext/perquackey/anagrams.c
|
91
87
|
- ext/perquackey/extconf.rb
|
92
|
-
-
|
88
|
+
- ext/perquackey/anagrams.c
|
93
89
|
- lib/perquackey/application.rb
|
94
90
|
- lib/perquackey/console.rb
|
95
91
|
- lib/perquackey/dictionary.rb
|
96
92
|
- lib/perquackey/game.rb
|
97
93
|
- lib/perquackey/server.rb
|
98
94
|
- lib/perquackey/word_table.rb
|
95
|
+
- lib/perquackey.rb
|
99
96
|
- man/perquackey.1
|
100
97
|
- man/perquackey.1.ronn
|
101
|
-
- perquackey.gemspec
|
102
98
|
- test/dictionary_test.rb
|
103
99
|
- test/helper.rb
|
104
100
|
- test/word_table_test.rb
|
@@ -111,7 +107,7 @@ rdoc_options:
|
|
111
107
|
- --main
|
112
108
|
- README.rdoc
|
113
109
|
- --title
|
114
|
-
- perquackey-0.7.
|
110
|
+
- perquackey-0.7.3
|
115
111
|
- --inline-source
|
116
112
|
require_paths:
|
117
113
|
- lib
|
data/.gitignore
DELETED
data/Gemfile
DELETED
data/Gemfile.lock
DELETED
@@ -1,43 +0,0 @@
|
|
1
|
-
---
|
2
|
-
dependencies:
|
3
|
-
shoe:
|
4
|
-
group:
|
5
|
-
- :development
|
6
|
-
version: ">= 0"
|
7
|
-
ronn:
|
8
|
-
group:
|
9
|
-
- :development
|
10
|
-
version: ">= 0"
|
11
|
-
sinatra:
|
12
|
-
group:
|
13
|
-
- :default
|
14
|
-
version: ">= 0"
|
15
|
-
redgreen:
|
16
|
-
group:
|
17
|
-
- :development
|
18
|
-
version: ">= 0"
|
19
|
-
specs:
|
20
|
-
- rake:
|
21
|
-
version: 0.8.7
|
22
|
-
- configuration:
|
23
|
-
version: 1.1.0
|
24
|
-
- hpricot:
|
25
|
-
version: 0.8.2
|
26
|
-
- launchy:
|
27
|
-
version: 0.3.5
|
28
|
-
- rack:
|
29
|
-
version: 1.1.0
|
30
|
-
- rdiscount:
|
31
|
-
version: 1.6.3.1
|
32
|
-
- redgreen:
|
33
|
-
version: 1.2.2
|
34
|
-
- ronn:
|
35
|
-
version: "0.5"
|
36
|
-
- shoe:
|
37
|
-
version: 0.6.0
|
38
|
-
- sinatra:
|
39
|
-
version: "1.0"
|
40
|
-
hash: 43e16f41a78020948379f93caebbae6705f7a82c
|
41
|
-
sources:
|
42
|
-
- Rubygems:
|
43
|
-
uri: http://gemcutter.org
|
data/Rakefile
DELETED
data/perquackey.gemspec
DELETED
@@ -1,35 +0,0 @@
|
|
1
|
-
$:.unshift File.expand_path('../lib', __FILE__)
|
2
|
-
require 'perquackey'
|
3
|
-
|
4
|
-
Gem::Specification.new do |spec|
|
5
|
-
spec.name = 'perquackey'
|
6
|
-
spec.version = Perquackey::VERSION
|
7
|
-
|
8
|
-
spec.summary = 'Provides console session and simple webapp for looking up Perquackey word matches'
|
9
|
-
spec.description = spec.summary
|
10
|
-
spec.author = 'Matthew Todd'
|
11
|
-
spec.email = 'matthew.todd@gmail.com'
|
12
|
-
spec.homepage = 'http://github.com/matthewtodd/perquackey'
|
13
|
-
|
14
|
-
spec.required_ruby_version = '>= 1.8.7'
|
15
|
-
spec.add_runtime_dependency 'sinatra'
|
16
|
-
spec.add_development_dependency 'redgreen'
|
17
|
-
spec.add_development_dependency 'ronn'
|
18
|
-
spec.add_development_dependency 'shoe'
|
19
|
-
|
20
|
-
def spec.git_files(glob=nil)
|
21
|
-
`git ls-files -z --cached --other --exclude-standard #{glob}`.split("\0")
|
22
|
-
end
|
23
|
-
|
24
|
-
spec.files = spec.git_files
|
25
|
-
spec.executables = spec.git_files('bin/*').map &File.method(:basename)
|
26
|
-
spec.extensions = spec.git_files('ext/**/extconf.rb')
|
27
|
-
spec.test_files = spec.git_files('test/{,**/}*_test.rb')
|
28
|
-
|
29
|
-
spec.extra_rdoc_files = spec.git_files('{,**/}*.rdoc')
|
30
|
-
spec.rdoc_options = %W(
|
31
|
-
--main README.rdoc
|
32
|
-
--title #{spec.full_name}
|
33
|
-
--inline-source
|
34
|
-
)
|
35
|
-
end
|