eymiha 1.0.1 → 1.0.2

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.
@@ -0,0 +1,27 @@
1
+
2
+ <?xml version="1.0" encoding="iso-8859-1"?>
3
+ <!DOCTYPE html
4
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
5
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
6
+
7
+ <!--
8
+
9
+ Files
10
+
11
+ -->
12
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
13
+ <head>
14
+ <title>Files</title>
15
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
16
+ <link rel="stylesheet" href="rdoc-style.css" type="text/css" />
17
+ <base target="docwin" />
18
+ </head>
19
+ <body>
20
+ <div id="index">
21
+ <h1 class="section-bar">Files</h1>
22
+ <div id="index-entries">
23
+ <a href="files/lib/eymiha_rb.html">lib/eymiha.rb</a><br />
24
+ </div>
25
+ </div>
26
+ </body>
27
+ </html>
@@ -0,0 +1,35 @@
1
+
2
+ <?xml version="1.0" encoding="iso-8859-1"?>
3
+ <!DOCTYPE html
4
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
5
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
6
+
7
+ <!--
8
+
9
+ Methods
10
+
11
+ -->
12
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
13
+ <head>
14
+ <title>Methods</title>
15
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
16
+ <link rel="stylesheet" href="rdoc-style.css" type="text/css" />
17
+ <base target="docwin" />
18
+ </head>
19
+ <body>
20
+ <div id="index">
21
+ <h1 class="section-bar">Methods</h1>
22
+ <div id="index-entries">
23
+ <a href="classes/Module.html#M000003">class_attr_accessor (Module)</a><br />
24
+ <a href="classes/Module.html#M000004">class_attr_reader (Module)</a><br />
25
+ <a href="classes/Module.html#M000005">class_attr_writer (Module)</a><br />
26
+ <a href="classes/Object.html#M000007">class_name (Object)</a><br />
27
+ <a href="classes/File.html#M000009">home_directory (File)</a><br />
28
+ <a href="classes/Object.html#M000008">optional_require (Object)</a><br />
29
+ <a href="classes/Object.html#M000006">raise_no_conversion (Object)</a><br />
30
+ <a href="classes/Hash.html#M000002">to_s (Hash)</a><br />
31
+ <a href="classes/Array.html#M000001">to_s (Array)</a><br />
32
+ </div>
33
+ </div>
34
+ </body>
35
+ </html>
data/html/index.html ADDED
@@ -0,0 +1,24 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
5
+
6
+ <!--
7
+
8
+ RDoc Documentation
9
+
10
+ -->
11
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
12
+ <head>
13
+ <title>RDoc Documentation</title>
14
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
15
+ </head>
16
+ <frameset rows="20%, 80%">
17
+ <frameset cols="25%,35%,45%">
18
+ <frame src="fr_file_index.html" title="Files" name="Files" />
19
+ <frame src="fr_class_index.html" name="Classes" />
20
+ <frame src="fr_method_index.html" name="Methods" />
21
+ </frameset>
22
+ <frame src="files/lib/eymiha_rb.html" name="docwin" />
23
+ </frameset>
24
+ </html>
@@ -0,0 +1,208 @@
1
+
2
+ body {
3
+ font-family: Verdana,Arial,Helvetica,sans-serif;
4
+ font-size: 90%;
5
+ margin: 0;
6
+ margin-left: 40px;
7
+ padding: 0;
8
+ background: white;
9
+ }
10
+
11
+ h1,h2,h3,h4 { margin: 0; color: #efefef; background: transparent; }
12
+ h1 { font-size: 150%; }
13
+ h2,h3,h4 { margin-top: 1em; }
14
+
15
+ a { background: #eef; color: #039; text-decoration: none; }
16
+ a:hover { background: #039; color: #eef; }
17
+
18
+ /* Override the base stylesheet's Anchor inside a table cell */
19
+ td > a {
20
+ background: transparent;
21
+ color: #039;
22
+ text-decoration: none;
23
+ }
24
+
25
+ /* and inside a section title */
26
+ .section-title > a {
27
+ background: transparent;
28
+ color: #eee;
29
+ text-decoration: none;
30
+ }
31
+
32
+ /* === Structural elements =================================== */
33
+
34
+ div#index {
35
+ margin: 0;
36
+ margin-left: -40px;
37
+ padding: 0;
38
+ font-size: 90%;
39
+ }
40
+
41
+
42
+ div#index a {
43
+ margin-left: 0.7em;
44
+ }
45
+
46
+ div#index .section-bar {
47
+ margin-left: 0px;
48
+ padding-left: 0.7em;
49
+ background: #ccc;
50
+ font-size: small;
51
+ }
52
+
53
+
54
+ div#classHeader, div#fileHeader {
55
+ width: auto;
56
+ color: white;
57
+ padding: 0.5em 1.5em 0.5em 1.5em;
58
+ margin: 0;
59
+ margin-left: -40px;
60
+ border-bottom: 3px solid #006;
61
+ }
62
+
63
+ div#classHeader a, div#fileHeader a {
64
+ background: inherit;
65
+ color: white;
66
+ }
67
+
68
+ div#classHeader td, div#fileHeader td {
69
+ background: inherit;
70
+ color: white;
71
+ }
72
+
73
+
74
+ div#fileHeader {
75
+ background: #057;
76
+ }
77
+
78
+ div#classHeader {
79
+ background: #048;
80
+ }
81
+
82
+
83
+ .class-name-in-header {
84
+ font-size: 180%;
85
+ font-weight: bold;
86
+ }
87
+
88
+
89
+ div#bodyContent {
90
+ padding: 0 1.5em 0 1.5em;
91
+ }
92
+
93
+ div#description {
94
+ padding: 0.5em 1.5em;
95
+ background: #efefef;
96
+ border: 1px dotted #999;
97
+ }
98
+
99
+ div#description h1,h2,h3,h4,h5,h6 {
100
+ color: #125;;
101
+ background: transparent;
102
+ }
103
+
104
+ div#validator-badges {
105
+ text-align: center;
106
+ }
107
+ div#validator-badges img { border: 0; }
108
+
109
+ div#copyright {
110
+ color: #333;
111
+ background: #efefef;
112
+ font: 0.75em sans-serif;
113
+ margin-top: 5em;
114
+ margin-bottom: 0;
115
+ padding: 0.5em 2em;
116
+ }
117
+
118
+
119
+ /* === Classes =================================== */
120
+
121
+ table.header-table {
122
+ color: white;
123
+ font-size: small;
124
+ }
125
+
126
+ .type-note {
127
+ font-size: small;
128
+ color: #DEDEDE;
129
+ }
130
+
131
+ .xxsection-bar {
132
+ background: #eee;
133
+ color: #333;
134
+ padding: 3px;
135
+ }
136
+
137
+ .section-bar {
138
+ color: #333;
139
+ border-bottom: 1px solid #999;
140
+ margin-left: -20px;
141
+ }
142
+
143
+
144
+ .section-title {
145
+ background: #79a;
146
+ color: #eee;
147
+ padding: 3px;
148
+ margin-top: 2em;
149
+ margin-left: -30px;
150
+ border: 1px solid #999;
151
+ }
152
+
153
+ .top-aligned-row { vertical-align: top }
154
+ .bottom-aligned-row { vertical-align: bottom }
155
+
156
+ /* --- Context section classes ----------------------- */
157
+
158
+ .context-row { }
159
+ .context-item-name { font-family: monospace; font-weight: bold; color: black; }
160
+ .context-item-value { font-size: small; color: #448; }
161
+ .context-item-desc { color: #333; padding-left: 2em; }
162
+
163
+ /* --- Method classes -------------------------- */
164
+ .method-detail {
165
+ background: #efefef;
166
+ padding: 0;
167
+ margin-top: 0.5em;
168
+ margin-bottom: 1em;
169
+ border: 1px dotted #ccc;
170
+ }
171
+ .method-heading {
172
+ color: black;
173
+ background: #ccc;
174
+ border-bottom: 1px solid #666;
175
+ padding: 0.2em 0.5em 0 0.5em;
176
+ }
177
+ .method-signature { color: black; background: inherit; }
178
+ .method-name { font-weight: bold; }
179
+ .method-args { font-style: italic; }
180
+ .method-description { padding: 0 0.5em 0 0.5em; }
181
+
182
+ /* --- Source code sections -------------------- */
183
+
184
+ a.source-toggle { font-size: 90%; }
185
+ div.method-source-code {
186
+ background: #262626;
187
+ color: #ffdead;
188
+ margin: 1em;
189
+ padding: 0.5em;
190
+ border: 1px dashed #999;
191
+ overflow: hidden;
192
+ }
193
+
194
+ div.method-source-code pre { color: #ffdead; overflow: hidden; }
195
+
196
+ /* --- Ruby keyword styles --------------------- */
197
+
198
+ .standalone-code { background: #221111; color: #ffdead; overflow: hidden; }
199
+
200
+ .ruby-constant { color: #7fffd4; background: transparent; }
201
+ .ruby-keyword { color: #00ffff; background: transparent; }
202
+ .ruby-ivar { color: #eedd82; background: transparent; }
203
+ .ruby-operator { color: #00ffee; background: transparent; }
204
+ .ruby-identifier { color: #ffdead; background: transparent; }
205
+ .ruby-node { color: #ffa07a; background: transparent; }
206
+ .ruby-comment { color: #b22222; font-weight: bold; background: transparent; }
207
+ .ruby-regexp { color: #ffa07a; background: transparent; }
208
+ .ruby-value { color: #7fffd4; background: transparent; }
data/lib/eymiha.rb CHANGED
@@ -45,6 +45,44 @@ class File
45
45
 
46
46
  end
47
47
 
48
+ # Provides class attribute setters and getters, for mondo convenience
49
+ class Module
50
+
51
+ # Creates a reader and writer for the given class variables
52
+ def class_attr_accessor(*kattrs)
53
+ class_attr_reader(*kattrs)
54
+ class_attr_writer(*kattrs)
55
+ end
56
+
57
+ # Creates a reader for the given class variables
58
+ def class_attr_reader(*kattrs)
59
+ kattrs.each { |kattr|
60
+ ka = kattr.to_s
61
+ reader = <<EOF
62
+ def self.#{ka}
63
+ @@#{ka}
64
+ end
65
+ @@#{ka} = nil
66
+ EOF
67
+ self.module_eval reader
68
+ }
69
+ end
70
+
71
+ # Creates a writer for the given class variables
72
+ def class_attr_writer(*kattrs)
73
+ kattrs.each { |kattr|
74
+ ka = kattr.to_s
75
+ writer = <<EOF
76
+ def self.#{ka}=(#{ka})
77
+ @@#{ka} = #{ka}
78
+ end
79
+ EOF
80
+ self.module_eval writer
81
+ }
82
+ end
83
+
84
+ end
85
+
48
86
 
49
87
  # Provides simple a ruby-oriented string conversion.
50
88
  class Hash
data/test/tc_eymiha.rb CHANGED
@@ -59,15 +59,64 @@ class TC_class_name < Test::Unit::TestCase
59
59
  end
60
60
 
61
61
 
62
- class TC_home_directory < Test::Unit::TestCase
63
-
64
- def test_home_directory
65
- if Config::CONFIG['target_vendor'] == 'pc'
66
- assert(ENV.keys.include?('HOMEDRIVE'))
67
- assert(ENV.keys.include?('HOMEPATH'))
68
- else
69
- assert(ENV.keys.include?('HOME'))
70
- end
62
+ class Reader
63
+ class_attr_reader :read_me
64
+ class_attr_reader :read_me1, :read_me2
65
+ end
66
+
67
+ class Writer
68
+ class_attr_writer :write_me
69
+ class_attr_writer :write_me1, :write_me2
70
+ end
71
+
72
+ class Accessor
73
+ class_attr_accessor :access_me
74
+ class_attr_accessor :access_me1, :access_me2
75
+
76
+ def to_s
77
+ "'#{@@access_me}'"
78
+ end
79
+
80
+ def to_s1
81
+ "'#{@@access_me1}'"
82
+ end
83
+
84
+ def to_s2
85
+ "'#{@@access_me2}'"
86
+ end
87
+ end
88
+
89
+ class TC_class_attr < Test::Unit::TestCase
90
+
91
+ def test_class_attr_reader
92
+ assert(Reader.read_me == nil)
93
+ assert(Reader.read_me1 == nil)
94
+ assert(Reader.read_me2 == nil)
95
+ end
96
+
97
+ def test_class_attr_writer
98
+ assert_nothing_raised {Writer.write_me = "write"}
99
+ assert_nothing_raised {Writer.write_me1 = "write1"}
100
+ assert_nothing_raised {Writer.write_me2 = "write2"}
101
+ end
102
+
103
+ def test_class_attr_accessor
104
+ a = Accessor.new
105
+ assert(Accessor.access_me == nil)
106
+ assert(a.to_s == "''")
107
+ assert(Accessor.access_me1 == nil)
108
+ assert(a.to_s1 == "''")
109
+ assert(Accessor.access_me2 == nil)
110
+ assert(a.to_s2 == "''")
111
+ assert_nothing_raised {Accessor.access_me = "access"}
112
+ assert_nothing_raised {Accessor.access_me1 = "access1"}
113
+ assert_nothing_raised {Accessor.access_me2 = "access2"}
114
+ assert(Accessor.access_me == "access")
115
+ assert(a.to_s == "'access'")
116
+ assert(Accessor.access_me1 == "access1")
117
+ assert(a.to_s1 == "'access1'")
118
+ assert(Accessor.access_me2 == "access2")
119
+ assert(a.to_s2 == "'access2'")
71
120
  end
72
121
 
73
122
  end
metadata CHANGED
@@ -1,56 +1,78 @@
1
1
  --- !ruby/object:Gem::Specification
2
+ rubygems_version: 0.9.4
3
+ specification_version: 1
2
4
  name: eymiha
3
5
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
6
+ version: 1.0.2
7
+ date: 2008-05-16 00:00:00 -04:00
8
+ summary: Eymiha general Ruby extensions
9
+ require_paths:
10
+ - lib
11
+ email: dave@eymiha.com
12
+ homepage: http://www.eymiha.com
13
+ rubyforge_project: cori
14
+ description:
15
+ autorequire: eymiha
16
+ default_executable:
17
+ bindir: bin
18
+ has_rdoc: true
19
+ required_ruby_version: !ruby/object:Gem::Version::Requirement
20
+ requirements:
21
+ - - ">"
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.0
24
+ version:
5
25
  platform: ruby
26
+ signing_key:
27
+ cert_chain:
28
+ post_install_message:
6
29
  authors:
7
30
  - Dave Anderson
8
- autorequire: eymiha
9
- bindir: bin
10
- cert_chain: []
11
-
12
- date: 2008-05-11 00:00:00 -04:00
13
- default_executable:
14
- dependencies: []
15
-
16
- description:
17
- email: dave@eymiha.com
18
- executables: []
19
-
20
- extensions: []
21
-
22
- extra_rdoc_files: []
23
-
24
31
  files:
25
32
  - gem_package.rb
26
33
  - rakefile.rb
27
34
  - lib/eymiha.rb
28
35
  - test/tc_eymiha.rb
29
- has_rdoc: true
30
- homepage: http://www.eymiha.com
31
- post_install_message:
36
+ - html/classes
37
+ - html/classes/Array.html
38
+ - html/classes/Array.src
39
+ - html/classes/Array.src/M000001.html
40
+ - html/classes/File.html
41
+ - html/classes/File.src
42
+ - html/classes/File.src/M000009.html
43
+ - html/classes/Hash.html
44
+ - html/classes/Hash.src
45
+ - html/classes/Hash.src/M000002.html
46
+ - html/classes/Module.html
47
+ - html/classes/Module.src
48
+ - html/classes/Module.src/M000003.html
49
+ - html/classes/Module.src/M000004.html
50
+ - html/classes/Module.src/M000005.html
51
+ - html/classes/Object.html
52
+ - html/classes/Object.src
53
+ - html/classes/Object.src/M000006.html
54
+ - html/classes/Object.src/M000007.html
55
+ - html/classes/Object.src/M000008.html
56
+ - html/created.rid
57
+ - html/files
58
+ - html/files/lib
59
+ - html/files/lib/eymiha_rb.html
60
+ - html/fr_class_index.html
61
+ - html/fr_file_index.html
62
+ - html/fr_method_index.html
63
+ - html/index.html
64
+ - html/rdoc-style.css
65
+ test_files: []
66
+
32
67
  rdoc_options:
33
68
  - --all
34
- require_paths:
35
- - lib
36
- required_ruby_version: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: "0"
41
- version:
42
- required_rubygems_version: !ruby/object:Gem::Requirement
43
- requirements:
44
- - - ">="
45
- - !ruby/object:Gem::Version
46
- version: "0"
47
- version:
69
+ extra_rdoc_files: []
70
+
71
+ executables: []
72
+
73
+ extensions: []
74
+
48
75
  requirements: []
49
76
 
50
- rubyforge_project: cori
51
- rubygems_version: 1.0.1
52
- signing_key:
53
- specification_version: 2
54
- summary: Eymiha general Ruby extensions
55
- test_files: []
77
+ dependencies: []
56
78