marc4j4r 0.1.6 → 0.2.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.
Files changed (54) hide show
  1. data/README.rdoc +17 -0
  2. data/Rakefile +26 -13
  3. data/VERSION +1 -1
  4. data/jars/marc4j.jar +0 -0
  5. data/lib/marc4j4r/controlfield.rb +32 -0
  6. data/lib/marc4j4r/datafield.rb +196 -0
  7. data/lib/marc4j4r/reader.rb +71 -0
  8. data/lib/marc4j4r/record.rb +214 -0
  9. data/lib/marc4j4r/writer.rb +29 -0
  10. data/lib/marc4j4r.rb +26 -485
  11. data/lib/original_monolithic_file.rb +518 -0
  12. data/spec/batch.dat +1 -0
  13. data/spec/batch.txt +193 -0
  14. data/spec/batch.xml +13 -0
  15. data/spec/controlfield_spec.rb +40 -0
  16. data/spec/datafield_spec.rb +56 -0
  17. data/spec/one.dat +1 -0
  18. data/spec/one.txt +17 -0
  19. data/spec/one.xml +4 -0
  20. data/spec/reader_spec.rb +49 -0
  21. data/spec/record_spec.rb +101 -0
  22. data/{test/helper.rb → spec/spec_helper.rb} +9 -5
  23. metadata +74 -80
  24. data/.document +0 -5
  25. data/.gitignore +0 -21
  26. data/README.markdown +0 -41
  27. data/doc/ControlFieldImpl.html +0 -314
  28. data/doc/DataFieldImpl.html +0 -875
  29. data/doc/Java/OrgMarc4j/MarcReader.html +0 -184
  30. data/doc/MARC4J4R/Reader.html +0 -245
  31. data/doc/MARC4J4R.html +0 -281
  32. data/doc/RecordImpl.html +0 -686
  33. data/doc/SubfieldImpl.html +0 -252
  34. data/doc/_index.html +0 -153
  35. data/doc/class_list.html +0 -36
  36. data/doc/css/common.css +0 -1
  37. data/doc/css/full_list.css +0 -50
  38. data/doc/css/style.css +0 -268
  39. data/doc/file.README.html +0 -90
  40. data/doc/file_list.html +0 -38
  41. data/doc/frames.html +0 -13
  42. data/doc/index.html +0 -90
  43. data/doc/js/app.js +0 -99
  44. data/doc/js/full_list.js +0 -106
  45. data/doc/js/jquery.js +0 -19
  46. data/doc/method_list.html +0 -219
  47. data/doc/top-level-namespace.html +0 -87
  48. data/jars/MarcImporter.jar +0 -0
  49. data/test/batch.seq +0 -118
  50. data/test/bench.rb +0 -63
  51. data/test/one.dat +0 -1
  52. data/test/one.seq +0 -30
  53. data/test/one.xml +0 -55
  54. data/test/test_marc4j4r.rb +0 -76
data/doc/css/style.css DELETED
@@ -1,268 +0,0 @@
1
- body {
2
- padding: 0 20px;
3
- font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
4
- font-size: 13px;
5
- }
6
- body.frames { padding: 0 5px; }
7
- h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dotted #d5d5d5; }
8
- h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; }
9
- h1.title { margin-bottom: 10px; }
10
- h1.alphaindex { margin-top: 0; font-size: 22px; }
11
- h2 {
12
- padding: 0;
13
- padding-bottom: 3px;
14
- border-bottom: 1px #aaa solid;
15
- font-size: 1.4em;
16
- margin: 1.8em 0 0.5em;
17
- }
18
- .clear { clear: both; }
19
- .docstring h1, .docstring h2, .docstring h3, .docstring h4 { padding: 0; border: 0; border-bottom: 1px dotted #bbb; }
20
- .docstring h1 { font-size: 1.2em; }
21
- .docstring h2 { font-size: 1.1em; }
22
- .docstring h3, .docstring h4 { font-size: 1em; border-bottom: 0; padding-top: 10px; }
23
-
24
- .note {
25
- color: #222;
26
- -moz-border-radius: 3px; -webkit-border-radius: 3px;
27
- background: #e3e4e3; border: 1px solid #d5d5d5; padding: 7px 10px;
28
- }
29
- .note.todo { background: #ffffc5; border-color: #ececaa; }
30
- .note.returns_void { background: #efefef; }
31
- .note.deprecated { background: #ffe5e5; border-color: #e9dada; }
32
- .note.title { text-transform: lowercase; padding: 1px 5px; margin-left: 5px; font-size: 0.9em; font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; }
33
- h1 .note.title { font-size: 0.5em; font-weight: normal; padding: 3px 5px; position: relative; top: -3px; text-transform: capitalize; }
34
- .note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; }
35
- .note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; }
36
- .note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; }
37
- .note.title.private { background: #d5d5d5; border-color: #c5c5c5; }
38
-
39
- h3.inherited {
40
- font-style: italic;
41
- font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
42
- font-weight: normal;
43
- padding: 0;
44
- margin: 0;
45
- margin-top: 12px;
46
- margin-bottom: 3px;
47
- font-size: 13px;
48
- }
49
- p.inherited {
50
- padding: 0;
51
- margin: 0;
52
- margin-left: 25px;
53
- }
54
-
55
- dl.box {
56
- width: 520px;
57
- font-size: 1em;
58
- }
59
- dl.box dt {
60
- float: left;
61
- display: block;
62
- width: 100px;
63
- margin: 0;
64
- text-align: right;
65
- font-weight: bold;
66
- border: 1px solid #aaa;
67
- border-width: 1px 0px 0px 1px;
68
- padding: 6px 0;
69
- padding-right: 10px;
70
- }
71
- dl.box dd {
72
- float: left;
73
- display: block;
74
- width: 380px;
75
- margin: 0;
76
- padding: 6px 0;
77
- padding-right: 20px;
78
- border: 1px solid #aaa;
79
- border-width: 1px 1px 0 0;
80
- }
81
- dl.box .last {
82
- border-bottom: 1px solid #aaa;
83
- }
84
- dl.box .r1 { background: #eee; }
85
-
86
- ul.toplevel { list-style: none; padding-left: 0; font-size: 1.1em; }
87
- #files { padding-left: 15px; font-size: 1.1em; }
88
-
89
- #files { padding: 0; }
90
- #files li { list-style: none; display: inline; padding: 7px 12px; line-height: 35px; }
91
-
92
- dl.constants { margin-left: 40px; }
93
- dl.constants dt { font-weight: bold; font-size: 1.1em; margin-bottom: 5px; }
94
- dl.constants dd { width: 75%; white-space: pre; font-family: monospace; margin-bottom: 18px; }
95
-
96
- .summary_desc { margin-left: 32px; display: block; font-family: sans-serif; }
97
- .summary_desc tt { font-size: 0.9em; }
98
- dl.constants .summary_desc { font-size: 0.9em; font-weight: normal; }
99
-
100
- .method_details { border-top: 1px dotted #aaa; margin-top: 15px; padding-top: 0; }
101
- .method_details.first { border: 0; }
102
- p.signature {
103
- font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace;
104
- padding: 6px 10px; margin-top: 18px;
105
- background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
106
- }
107
- p.signature tt { font-family: Monaco, Consolas, Courier, monospace; }
108
- p.signature .overload { display: block; }
109
- p.signature .extras { font-weight: normal; font-family: sans-serif; color: #444; font-size: 1em; }
110
- p.signature .aliases { display: block; font-weight: normal; font-size: 0.9em; font-family: sans-serif; margin-top: 0px; color: #555; }
111
- p.signature .aliases .names { font-family: Monaco, Consolas, Courier, monospace; font-weight: bold; color: #000; font-size: 1.2em; }
112
-
113
- .tags h3 { font-size: 1em; margin-bottom: 0; }
114
- .tags ul { margin-top: 5px; padding-left: 30px; list-style: square; }
115
- .tags ul li { margin-bottom: 3px; }
116
- .tags ul .name { font-family: monospace; font-weight: bold; }
117
- .tags ul p.note { padding: 3px 6px; }
118
- .tags { margin-bottom: 12px; }
119
-
120
- .tags .examples h3 { margin-bottom: 10px; }
121
- .tags .examples h4 { padding: 0; margin: 0; margin-left: 15px; font-weight: bold; font-size: 0.9em; }
122
-
123
- .tags .overload .overload_item { list-style: none; margin-bottom: 25px; }
124
- .tags .overload .overload_item .signature {
125
- padding: 2px 8px;
126
- background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
127
- }
128
- .tags .overload .signature { margin-left: -15px; font-family: monospace; display: block; font-size: 1.1em; }
129
- .tags .overload .docstring { margin-top: 15px; }
130
-
131
- .defines { display: none; }
132
-
133
- #method_missing_details .notice.this { position: relative; top: -8px; color: #888; padding: 0; margin: 0; }
134
-
135
- .showSource { font-size: 0.9em; }
136
- .showSource a:link, .showSource a:visited { text-decoration: none; color: #666; }
137
-
138
- #content a:link, #content a:visited { text-decoration: none; color: #05a; }
139
- #content a:hover { background: #ffffa5; }
140
- .docstring { margin-right: 6em; }
141
-
142
- ul.summary {
143
- list-style: none;
144
- font-family: monospace;
145
- font-size: 1em;
146
- line-height: 1.5em;
147
- }
148
- ul.summary a:link, ul.summary a:visited {
149
- text-decoration: none; font-size: 1.1em;
150
- }
151
- ul.summary li { margin-bottom: 5px; }
152
- .summary .summary_signature {
153
- padding: 1px 10px;
154
- background: #eaeaff; border: 1px solid #dfdfe5;
155
- -moz-border-radius: 3px; -webkit-border-radius: 3px;
156
- }
157
- .summary_signature:hover { background: #eeeeff; cursor: pointer; }
158
- #content .summary_signature:hover a:link,
159
- #content .summary_signature:hover a:visited {
160
- background: transparent;
161
- color: #48f;
162
- }
163
-
164
- p.inherited a { font-family: monospace; font-size: 0.9em; }
165
- p.inherited { word-spacing: 5px; font-size: 1.2em; }
166
-
167
- p.children { font-size: 1.2em; }
168
- p.children a { font-size: 0.9em; }
169
- p.children strong { font-size: 0.8em; }
170
- p.children strong.modules { padding-left: 5px; }
171
-
172
- ul.fullTree { display: none; padding-left: 0; list-style: none; margin-left: 0; margin-bottom: 10px; }
173
- ul.fullTree ul { margin-left: 0; padding-left: 0; list-style: none; }
174
- ul.fullTree li { text-align: center; }
175
- ul.fullTree li.next:before { font-size: 1.2em; content: '\2B06'; color: #bbb; display: block; margin-top: 3px; }
176
-
177
- #search { position: absolute; right: 14px; top: 0px; }
178
- #search a:link, #search a:visited {
179
- display: block; float: left; margin-right: 4px;
180
- padding: 8px 10px; text-decoration: none; color: #05a; background: #eaeaff;
181
- border: 1px solid #d8d8e5;
182
- -moz-border-radius-bottomleft: 3px; -moz-border-radius-bottomright: 3px;
183
- -webkit-border-bottom-left-radius: 3px; -webkit-border-bottom-right-radius: 3px;
184
- }
185
- #search a:hover { background: #eef; color: #06b; }
186
- #search a.active {
187
- background: #568; padding-bottom: 20px; color: #fff; border: 1px solid #457;
188
- -moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px;
189
- -webkit-border-top-left-radius: 5px; -webkit-border-top-right-radius: 5px;
190
- }
191
- #search a.inactive { color: #999; }
192
- .frames #search { display: none; }
193
- .inheritanceTree, .toggleDefines { float: right; }
194
-
195
- #menu { font-size: 1.3em; color: #bbb; top: -5px; position: relative; }
196
- #menu .title, #menu a { font-size: 0.7em; }
197
- #menu .title { color: #555; }
198
- #menu a:link, #menu a:visited { color: #333; text-decoration: none; border-bottom: 1px dotted #bbd; }
199
- #menu a:hover { color: #05a; }
200
- #menu .noframes { display: none; }
201
- .frames #menu .noframes { display: inline; float: right; }
202
-
203
- #footer { margin-top: 15px; border-top: 1px solid #ccc; text-align: center; padding: 7px 0; color: #999; }
204
- #footer a:link, #footer a:visited { color: #444; text-decoration: none; border-bottom: 1px dotted #bbd; }
205
- #footer a:hover { color: #05a; }
206
-
207
- #listing ul.alpha { font-size: 1.1em; }
208
- #listing ul.alpha { margin: 0; padding: 0; padding-bottom: 10px; list-style: none; }
209
- #listing ul.alpha li.letter { font-size: 1.4em; padding-bottom: 10px; }
210
- #listing ul.alpha ul { margin: 0; padding-left: 15px; }
211
- #listing ul small { color: #666; font-size: 0.7em; }
212
-
213
- li.r1 { background: #f0f0f0; }
214
- li.r2 { background: #fafafa; }
215
-
216
- #search_frame {
217
- background: #fff;
218
- display: none;
219
- position: absolute;
220
- top: 36px;
221
- right: 18px;
222
- width: 500px;
223
- height: 80%;
224
- overflow-y: scroll;
225
- border: 1px solid #999;
226
- border-collapse: collapse;
227
- -webkit-box-shadow: -2px 5px 25px #aaa;
228
- -moz-box-shadow: -2px 5px 25px #aaa;
229
- -moz-border-radius: 2px;
230
- -webkit-border-radius: 2px;
231
- }
232
-
233
- #content ul.summary li.deprecated a:link,
234
- #content ul.summary li.deprecated a:visited { text-decoration: line-through; font-style: italic; }
235
-
236
- /* syntax highlighting */
237
- .source_code { display: none; padding: 3px 8px; border-left: 8px solid #ddd; margin-top: 5px; }
238
- #filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; }
239
- #filecontents pre.code, .docstring pre.code { display: block; }
240
- .source_code .lines { padding-right: 12px; color: #555; text-align: right; }
241
- #filecontents pre.code, .docstring pre.code,
242
- .tags .example { padding: 5px 12px; margin-top: 4px; border: 1px solid #eef; background: #f5f5ff; }
243
- pre.code { color: #000; }
244
- pre.code .info.file { color: #555; }
245
- pre.code .val { color: #036A07; }
246
- pre.code .tstring_content,
247
- pre.code .heredoc_beg, pre.code .heredoc_end,
248
- pre.code .qwords_beg, pre.code .qwords_end,
249
- pre.code .tstring, pre.code .dstring { color: #036A07; }
250
- pre.code .fid, pre.code .id.new, pre.code .id.to_s,
251
- pre.code .id.to_sym, pre.code .id.to_f,
252
- pre.code .dot + pre.code .id,
253
- pre.code .id.to_i pre.code .id.each { color: #0085FF; }
254
- pre.code .comment { color: #0066FF; }
255
- pre.code .const, pre.code .constant { color: #585CF6; }
256
- pre.code .symbol { color: #C5060B; }
257
- pre.code .kw,
258
- pre.code .label,
259
- pre.code .id.require,
260
- pre.code .id.extend,
261
- pre.code .id.include { color: #0000FF; }
262
- pre.code .ivar { color: #318495; }
263
- pre.code .gvar,
264
- pre.code .id.backref,
265
- pre.code .id.nth_ref { color: #6D79DE; }
266
- pre.code .regexp, .dregexp { color: #036A07; }
267
- pre.code a { border-bottom: 1px dotted #bbf; }
268
-
data/doc/file.README.html DELETED
@@ -1,90 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta name="Content-Type" content="text/html; charset=UTF-8" />
6
- <title>Documentation by YARD 0.5.3</title>
7
- <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
8
- <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
9
-
10
- <script type="text/javascript" charset="utf-8">
11
- relpath = '';
12
- if (relpath != '') relpath += '/';
13
- </script>
14
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
15
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
16
-
17
- </head>
18
- <body>
19
- <script type="text/javascript" charset="utf-8">
20
- if (window.top.frames.main) document.body.className = 'frames';
21
- </script>
22
-
23
- <div id="header">
24
- <div id="menu">
25
-
26
- <a href="_index.html" title="Index">Index</a> &raquo;
27
- <span class="title">File: README</span>
28
-
29
-
30
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
31
- </div>
32
-
33
- <div id="search">
34
- <a id="class_list_link" href="#">Class List</a>
35
- <a id="method_list_link" href="#">Method List</a>
36
- <a id ="file_list_link" href="#">File List</a>
37
- </div>
38
-
39
- <div class="clear"></div>
40
- </div>
41
-
42
- <iframe id="search_frame"></iframe>
43
-
44
- <div id="content"><div id='filecontents'><h1>marc4j4r</h1>
45
-
46
- <p>marc4j4r is some simple syntactic sugar on top of the java libary <a href="http://marc4j.tigris.org/">marc4j</a>. It allows iteration
47
- via #each and implements many of the same convenience functions as <a href="http://marc.rubyforge.org/">ruby-marc</a>.</p>
48
-
49
- <p>Most of the good stuff is in RecordImpl and DataFieldImpl. They, along with the *Reader classes, now implement #each
50
- for their subparts as well as #[] where it makes sense. See the examples in the documentation for more information.</p>
51
-
52
- <p>There's also a convenience module method, MARC4J4R.reader, to get a reader, as shown below.</p>
53
-
54
- <h2>Example</h2>
55
-
56
- <pre class="code"><span class='require identifier id'>require</span> <span class='string val'>'rubygems'</span>
57
- <span class='require identifier id'>require</span> <span class='string val'>'marc4j4r'</span>
58
-
59
- <span class='reader identifier id'>reader</span> <span class='assign token'>=</span> <span class='MARC4J4R constant id'>MARC4J4R</span><span class='dot token'>.</span><span class='reader identifier id'>reader</span><span class='lparen token'>(</span><span class='string val'>'test.mrc'</span><span class='rparen token'>)</span>
60
- <span class='comment val'>#reader = MARC4J4R.reader('test.mrc', :strictmarc) # be explicit</span>
61
- <span class='comment val'>#preader = MARC4J4R.reader('test.mrc', :permissivemarc)</span>
62
- <span class='comment val'>#xmlreader = MARC4J4R.reader('test.xml', :marcxml)</span>
63
- <span class='comment val'># </span>
64
- <span class='comment val'># Can also use an IO object</span>
65
- <span class='comment val'># reader = MARC4J4R.reader(File.new('test.mrc'))</span>
66
-
67
-
68
- <span class='reader identifier id'>reader</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='r identifier id'>r</span><span class='bitor op'>|</span>
69
- <span class='lccn identifier id'>lccn</span> <span class='assign token'>=</span> <span class='r identifier id'>r</span><span class='lbrack token'>[</span><span class='string val'>'010'</span><span class='rbrack token'>]</span><span class='lbrack token'>[</span><span class='string val'>'a'</span><span class='rbrack token'>]</span> <span class='if if_mod kw'>if</span> <span class='r identifier id'>r</span><span class='lbrack token'>[</span><span class='string val'>'010'</span><span class='rbrack token'>]</span>
70
- <span class='isSBns identifier id'>isSBns</span> <span class='assign token'>=</span> <span class='r identifier id'>r</span><span class='dot token'>.</span><span class='find_by_tag identifier id'>find_by_tag</span><span class='lparen token'>(</span><span class='lbrack token'>[</span><span class='string val'>'020'</span><span class='comma token'>,</span> <span class='string val'>'022'</span><span class='rbrack token'>]</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='map identifier id'>map</span> <span class='lbrace token'>{</span><span class='bitor op'>|</span><span class='f identifier id'>f</span><span class='bitor op'>|</span> <span class='f identifier id'>f</span><span class='lbrack token'>[</span><span class='string val'>'a'</span><span class='rbrack token'>]</span><span class='rbrace token'>}</span>
71
- <span class='first035 identifier id'>first035</span> <span class='assign token'>=</span> <span class='r identifier id'>r</span><span class='lbrack token'>[</span><span class='string val'>'035'</span><span class='rbrack token'>]</span>
72
- <span class='fullTitle identifier id'>fullTitle</span> <span class='assign token'>=</span> <span class='r identifier id'>r</span><span class='lbrack token'>[</span><span class='string val'>'245'</span><span class='rbrack token'>]</span><span class='dot token'>.</span><span class='sub_values identifier id'>sub_values</span><span class='lparen token'>(</span><span class='lbrack token'>[</span><span class='string val'>'a'</span><span class='comma token'>,</span> <span class='string val'>'b'</span><span class='comma token'>,</span> <span class='string val'>'d'</span><span class='comma token'>,</span> <span class='string val'>'f'</span><span class='comma token'>,</span> <span class='string val'>'h'</span><span class='rbrack token'>]</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='join identifier id'>join</span><span class='lparen token'>(</span><span class='string val'>' '</span><span class='rparen token'>)</span>
73
- <span class='r identifier id'>r</span><span class='lbrack token'>[</span><span class='string val'>'300'</span><span class='rbrack token'>]</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='subfield identifier id'>subfield</span><span class='bitor op'>|</span>
74
- <span class='puts identifier id'>puts</span> <span class='subfield identifier id'>subfield</span><span class='dot token'>.</span><span class='code identifier id'>code</span> <span class='plus op'>+</span> <span class='string val'>' '</span> <span class='plus op'>+</span> <span class='subfield identifier id'>subfield</span><span class='dot token'>.</span><span class='value identifier id'>value</span>
75
- <span class='end end kw'>end</span>
76
- <span class='end end kw'>end</span>
77
- </pre>
78
-
79
- <p>== Copyright</p>
80
-
81
- <p>Copyright (c) 2010 BillDueber. See LICENSE for details.</p></div></div>
82
-
83
- <div id="footer">
84
- Generated on Fri Feb 12 16:38:06 2010 by
85
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool">yard</a>
86
- 0.5.3 (ruby-1.8.7).
87
- </div>
88
-
89
- </body>
90
- </html>
data/doc/file_list.html DELETED
@@ -1,38 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html>
4
- <head>
5
- <meta name="Content-Type" content="text/html; charset=UTF-8" />
6
- <link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" charset="utf-8" />
7
- <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
8
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
9
- <script type="text/javascript" charset="utf-8" src="js/full_list.js"></script>
10
- <base id="base_target" target="_parent" />
11
- </head>
12
- <body>
13
- <script type="text/javascript" charset="utf-8">
14
- if (window.top.frames.main) {
15
- document.getElementById('base_target').target = 'main';
16
- document.body.className = 'frames';
17
- }
18
- </script>
19
- <div id="content">
20
- <h1 id="full_list_header">File List</h1>
21
- <div id="nav">
22
- <a target="_self" href="class_list.html">Classes</a> |
23
- <a target="_self" href="method_list.html">Methods</a> |
24
- <a target="_self" href="file_list.html">Files</a>
25
- </div>
26
- <div id="search">Search: <input type="text" /></div>
27
-
28
- <ul id="full_list" class="files">
29
-
30
-
31
- <li class="r1"><a href="index.html" title="README">README</a></li>
32
-
33
-
34
- </ul>
35
- </div>
36
- </body>
37
- </html>
38
-
data/doc/frames.html DELETED
@@ -1,13 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
3
-
4
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
- <head>
6
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
7
- <title>Documentation by YARD 0.5.3</title>
8
- </head>
9
- <frameset cols="20%,*">
10
- <frame name="list" src="class_list.html" />
11
- <frame name="main" src="index.html" />
12
- </frameset>
13
- </html>
data/doc/index.html DELETED
@@ -1,90 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta name="Content-Type" content="text/html; charset=UTF-8" />
6
- <title>Documentation by YARD 0.5.3</title>
7
- <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
8
- <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
9
-
10
- <script type="text/javascript" charset="utf-8">
11
- relpath = '';
12
- if (relpath != '') relpath += '/';
13
- </script>
14
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
15
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
16
-
17
- </head>
18
- <body>
19
- <script type="text/javascript" charset="utf-8">
20
- if (window.top.frames.main) document.body.className = 'frames';
21
- </script>
22
-
23
- <div id="header">
24
- <div id="menu">
25
-
26
- <a href="_index.html" title="Index">Index</a> &raquo;
27
- <span class="title">File: README</span>
28
-
29
-
30
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
31
- </div>
32
-
33
- <div id="search">
34
- <a id="class_list_link" href="#">Class List</a>
35
- <a id="method_list_link" href="#">Method List</a>
36
- <a id ="file_list_link" href="#">File List</a>
37
- </div>
38
-
39
- <div class="clear"></div>
40
- </div>
41
-
42
- <iframe id="search_frame"></iframe>
43
-
44
- <div id="content"><div id='filecontents'><h1>marc4j4r</h1>
45
-
46
- <p>marc4j4r is some simple syntactic sugar on top of the java libary <a href="http://marc4j.tigris.org/">marc4j</a>. It allows iteration
47
- via #each and implements many of the same convenience functions as <a href="http://marc.rubyforge.org/">ruby-marc</a>.</p>
48
-
49
- <p>Most of the good stuff is in RecordImpl and DataFieldImpl. They, along with the *Reader classes, now implement #each
50
- for their subparts as well as #[] where it makes sense. See the examples in the documentation for more information.</p>
51
-
52
- <p>There's also a convenience module method, MARC4J4R.reader, to get a reader, as shown below.</p>
53
-
54
- <h2>Example</h2>
55
-
56
- <pre class="code"><span class='require identifier id'>require</span> <span class='string val'>'rubygems'</span>
57
- <span class='require identifier id'>require</span> <span class='string val'>'marc4j4r'</span>
58
-
59
- <span class='reader identifier id'>reader</span> <span class='assign token'>=</span> <span class='MARC4J4R constant id'>MARC4J4R</span><span class='dot token'>.</span><span class='reader identifier id'>reader</span><span class='lparen token'>(</span><span class='string val'>'test.mrc'</span><span class='rparen token'>)</span>
60
- <span class='comment val'>#reader = MARC4J4R.reader('test.mrc', :strictmarc) # be explicit</span>
61
- <span class='comment val'>#preader = MARC4J4R.reader('test.mrc', :permissivemarc)</span>
62
- <span class='comment val'>#xmlreader = MARC4J4R.reader('test.xml', :marcxml)</span>
63
- <span class='comment val'># </span>
64
- <span class='comment val'># Can also use an IO object</span>
65
- <span class='comment val'># reader = MARC4J4R.reader(File.new('test.mrc'))</span>
66
-
67
-
68
- <span class='reader identifier id'>reader</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='r identifier id'>r</span><span class='bitor op'>|</span>
69
- <span class='lccn identifier id'>lccn</span> <span class='assign token'>=</span> <span class='r identifier id'>r</span><span class='lbrack token'>[</span><span class='string val'>'010'</span><span class='rbrack token'>]</span><span class='lbrack token'>[</span><span class='string val'>'a'</span><span class='rbrack token'>]</span> <span class='if if_mod kw'>if</span> <span class='r identifier id'>r</span><span class='lbrack token'>[</span><span class='string val'>'010'</span><span class='rbrack token'>]</span>
70
- <span class='isSBns identifier id'>isSBns</span> <span class='assign token'>=</span> <span class='r identifier id'>r</span><span class='dot token'>.</span><span class='find_by_tag identifier id'>find_by_tag</span><span class='lparen token'>(</span><span class='lbrack token'>[</span><span class='string val'>'020'</span><span class='comma token'>,</span> <span class='string val'>'022'</span><span class='rbrack token'>]</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='map identifier id'>map</span> <span class='lbrace token'>{</span><span class='bitor op'>|</span><span class='f identifier id'>f</span><span class='bitor op'>|</span> <span class='f identifier id'>f</span><span class='lbrack token'>[</span><span class='string val'>'a'</span><span class='rbrack token'>]</span><span class='rbrace token'>}</span>
71
- <span class='first035 identifier id'>first035</span> <span class='assign token'>=</span> <span class='r identifier id'>r</span><span class='lbrack token'>[</span><span class='string val'>'035'</span><span class='rbrack token'>]</span>
72
- <span class='fullTitle identifier id'>fullTitle</span> <span class='assign token'>=</span> <span class='r identifier id'>r</span><span class='lbrack token'>[</span><span class='string val'>'245'</span><span class='rbrack token'>]</span><span class='dot token'>.</span><span class='sub_values identifier id'>sub_values</span><span class='lparen token'>(</span><span class='lbrack token'>[</span><span class='string val'>'a'</span><span class='comma token'>,</span> <span class='string val'>'b'</span><span class='comma token'>,</span> <span class='string val'>'d'</span><span class='comma token'>,</span> <span class='string val'>'f'</span><span class='comma token'>,</span> <span class='string val'>'h'</span><span class='rbrack token'>]</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='join identifier id'>join</span><span class='lparen token'>(</span><span class='string val'>' '</span><span class='rparen token'>)</span>
73
- <span class='r identifier id'>r</span><span class='lbrack token'>[</span><span class='string val'>'300'</span><span class='rbrack token'>]</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='subfield identifier id'>subfield</span><span class='bitor op'>|</span>
74
- <span class='puts identifier id'>puts</span> <span class='subfield identifier id'>subfield</span><span class='dot token'>.</span><span class='code identifier id'>code</span> <span class='plus op'>+</span> <span class='string val'>' '</span> <span class='plus op'>+</span> <span class='subfield identifier id'>subfield</span><span class='dot token'>.</span><span class='value identifier id'>value</span>
75
- <span class='end end kw'>end</span>
76
- <span class='end end kw'>end</span>
77
- </pre>
78
-
79
- <p>== Copyright</p>
80
-
81
- <p>Copyright (c) 2010 BillDueber. See LICENSE for details.</p></div></div>
82
-
83
- <div id="footer">
84
- Generated on Fri Feb 12 16:38:05 2010 by
85
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool">yard</a>
86
- 0.5.3 (ruby-1.8.7).
87
- </div>
88
-
89
- </body>
90
- </html>
data/doc/js/app.js DELETED
@@ -1,99 +0,0 @@
1
- function createSourceLinks() {
2
- $('.method_details_list .source_code').
3
- before("<span class='showSource'>[<a href='#' class='toggleSource'>View source</a>]</span>");
4
- $('.toggleSource').toggle(function() {
5
- $(this).parent().next().slideDown(100);
6
- $(this).text("Hide source");
7
- },
8
- function() {
9
- $(this).parent().next().slideUp(100);
10
- $(this).text("View source");
11
- });
12
- }
13
-
14
- function createDefineLinks() {
15
- var tHeight = 0;
16
- $('.defines').after(" <a href='#' class='toggleDefines'>more...</a>");
17
- $('.toggleDefines').toggle(function() {
18
- tHeight = $(this).parent().prev().height();
19
- $(this).prev().show();
20
- $(this).parent().prev().height($(this).parent().height());
21
- $(this).text("(less)");
22
- },
23
- function() {
24
- $(this).prev().hide();
25
- $(this).parent().prev().height(tHeight);
26
- $(this).text("more...")
27
- });
28
- }
29
-
30
- function createFullTreeLinks() {
31
- var tHeight = 0;
32
- $('.inheritanceTree').toggle(function() {
33
- tHeight = $(this).parent().prev().height();
34
- $(this).prev().prev().hide();
35
- $(this).prev().show();
36
- $(this).text("(hide)");
37
- $(this).parent().prev().height($(this).parent().height());
38
- },
39
- function() {
40
- $(this).prev().prev().show();
41
- $(this).prev().hide();
42
- $(this).parent().prev().height(tHeight);
43
- $(this).text("show all")
44
- });
45
- }
46
-
47
- function fixBoxInfoHeights() {
48
- $('dl.box dd.r1, dl.box dd.r2').each(function() {
49
- $(this).prev().height($(this).height());
50
- });
51
- }
52
-
53
- function searchFrameLinks() {
54
- $('#method_list_link').click(function() {
55
- toggleSearchFrame(this, relpath + 'method_list.html');
56
- });
57
-
58
- $('#class_list_link').click(function() {
59
- toggleSearchFrame(this, relpath + 'class_list.html');
60
- });
61
-
62
- $('#file_list_link').click(function() {
63
- toggleSearchFrame(this, relpath + 'file_list.html');
64
- });
65
- }
66
-
67
- function toggleSearchFrame(id, link) {
68
- var frame = $('#search_frame');
69
- $('#search a').removeClass('active').addClass('inactive');
70
- if (frame.attr('src') == link && frame.css('display') != "none") {
71
- frame.slideUp(100);
72
- $('#search a').removeClass('active inactive');
73
- }
74
- else {
75
- $(id).addClass('active').removeClass('inactive');
76
- frame.attr('src', link).slideDown(100);
77
- }
78
- }
79
-
80
- function linkSummaries() {
81
- $('.summary_signature').click(function() {
82
- document.location = $(this).find('a').attr('href');
83
- });
84
- }
85
-
86
- function framesInit() {
87
- if (window.top.frames.main) {
88
- document.body.className = 'frames';
89
- $('#menu .noframes a').attr('href', document.location);
90
- }
91
- }
92
-
93
- $(framesInit);
94
- $(createSourceLinks);
95
- $(createDefineLinks);
96
- $(createFullTreeLinks);
97
- $(fixBoxInfoHeights);
98
- $(searchFrameLinks);
99
- $(linkSummaries);