marc4j4r 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/doc/css/style.css ADDED
@@ -0,0 +1,268 @@
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
+
@@ -0,0 +1,91 @@
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 -- work with marc4j in JRuby</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 <a href="">the documentation</a> 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>
82
+ </div></div>
83
+
84
+ <div id="footer">
85
+ Generated on Sun Feb 14 22:11:52 2010 by
86
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool">yard</a>
87
+ 0.5.3 (ruby-1.8.7).
88
+ </div>
89
+
90
+ </body>
91
+ </html>
@@ -0,0 +1,38 @@
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 ADDED
@@ -0,0 +1,13 @@
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 ADDED
@@ -0,0 +1,91 @@
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 -- work with marc4j in JRuby</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 <a href="">the documentation</a> 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>
82
+ </div></div>
83
+
84
+ <div id="footer">
85
+ Generated on Sun Feb 14 22:11:52 2010 by
86
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool">yard</a>
87
+ 0.5.3 (ruby-1.8.7).
88
+ </div>
89
+
90
+ </body>
91
+ </html>
data/doc/js/app.js ADDED
@@ -0,0 +1,99 @@
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);