midilib 2.0.4 → 2.0.5

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 (94) hide show
  1. checksums.yaml +7 -0
  2. data/README.rdoc +9 -4
  3. data/Rakefile +2 -6
  4. data/examples/from_scratch.rb +3 -5
  5. data/examples/measures_mbt.rb +4 -4
  6. data/examples/print_program_changes.rb +9 -9
  7. data/examples/reader2text.rb +188 -188
  8. data/examples/seq2text.rb +17 -17
  9. data/examples/split.rb +19 -19
  10. data/examples/strings.rb +14 -14
  11. data/examples/transpose.rb +31 -31
  12. data/html/IO.html +65 -169
  13. data/html/MIDI.html +138 -256
  14. data/html/MIDI/ActiveSense.html +89 -178
  15. data/html/MIDI/ChannelEvent.html +95 -183
  16. data/html/MIDI/ChannelPressure.html +105 -190
  17. data/html/MIDI/Clock.html +89 -178
  18. data/html/MIDI/Continue.html +89 -178
  19. data/html/MIDI/Controller.html +107 -192
  20. data/html/MIDI/Event.html +138 -222
  21. data/html/MIDI/IO.html +45 -157
  22. data/html/MIDI/IO/MIDIFile.html +596 -568
  23. data/html/MIDI/IO/SeqReader.html +272 -314
  24. data/html/MIDI/IO/SeqWriter.html +229 -305
  25. data/html/MIDI/KeySig.html +129 -211
  26. data/html/MIDI/MIDI.html +45 -154
  27. data/html/MIDI/MIDI/MIDI.html +45 -154
  28. data/html/MIDI/MIDI/MIDI/Array.html +87 -185
  29. data/html/MIDI/Marker.html +71 -170
  30. data/html/MIDI/Measure.html +95 -190
  31. data/html/MIDI/Measures.html +103 -193
  32. data/html/MIDI/MetaEvent.html +180 -253
  33. data/html/MIDI/NoteEvent.html +118 -204
  34. data/html/MIDI/NoteOff.html +95 -183
  35. data/html/MIDI/NoteOn.html +95 -183
  36. data/html/MIDI/PitchBend.html +106 -191
  37. data/html/MIDI/PolyPressure.html +106 -189
  38. data/html/MIDI/ProgramChange.html +105 -190
  39. data/html/MIDI/Realtime.html +98 -184
  40. data/html/MIDI/Sequence.html +246 -311
  41. data/html/MIDI/SongPointer.html +106 -191
  42. data/html/MIDI/SongSelect.html +105 -190
  43. data/html/MIDI/Start.html +89 -178
  44. data/html/MIDI/Stop.html +89 -178
  45. data/html/MIDI/SystemCommon.html +71 -170
  46. data/html/MIDI/SystemExclusive.html +108 -193
  47. data/html/MIDI/SystemReset.html +89 -178
  48. data/html/MIDI/Tempo.html +135 -213
  49. data/html/MIDI/TimeSig.html +135 -214
  50. data/html/MIDI/Track.html +217 -291
  51. data/html/MIDI/TuneRequest.html +98 -184
  52. data/html/MIDI/Utils.html +89 -189
  53. data/html/README_rdoc.html +237 -257
  54. data/html/TODO_rdoc.html +64 -139
  55. data/html/created.rid +14 -14
  56. data/html/css/fonts.css +167 -0
  57. data/html/{rdoc.css → css/rdoc.css} +265 -218
  58. data/html/fonts/Lato-Light.ttf +0 -0
  59. data/html/fonts/Lato-LightItalic.ttf +0 -0
  60. data/html/fonts/Lato-Regular.ttf +0 -0
  61. data/html/fonts/Lato-RegularItalic.ttf +0 -0
  62. data/html/fonts/SourceCodePro-Bold.ttf +0 -0
  63. data/html/fonts/SourceCodePro-Regular.ttf +0 -0
  64. data/html/images/add.png +0 -0
  65. data/html/images/arrow_up.png +0 -0
  66. data/html/images/delete.png +0 -0
  67. data/html/images/tag_blue.png +0 -0
  68. data/html/index.html +187 -169
  69. data/html/js/darkfish.js +41 -33
  70. data/html/js/jquery.js +4 -18
  71. data/html/js/navigation.js.gz +0 -0
  72. data/html/js/search.js +20 -5
  73. data/html/js/search_index.js +1 -1
  74. data/html/js/search_index.js.gz +0 -0
  75. data/html/js/searcher.js.gz +0 -0
  76. data/html/table_of_contents.html +1111 -498
  77. data/install.rb +43 -32
  78. data/lib/midilib/consts.rb +407 -407
  79. data/lib/midilib/event.rb +295 -294
  80. data/lib/midilib/info.rb +5 -5
  81. data/lib/midilib/io/midifile.rb +266 -267
  82. data/lib/midilib/io/seqreader.rb +106 -106
  83. data/lib/midilib/io/seqwriter.rb +59 -60
  84. data/lib/midilib/measure.rb +69 -69
  85. data/lib/midilib/sequence.rb +68 -70
  86. data/lib/midilib/track.rb +96 -102
  87. data/lib/midilib/utils.rb +15 -15
  88. data/test/event_equality.rb +50 -50
  89. data/test/test_event.rb +120 -122
  90. data/test/test_io.rb +35 -48
  91. data/test/test_sequence.rb +60 -60
  92. data/test/test_track.rb +154 -154
  93. data/test/test_varlen.rb +23 -25
  94. metadata +65 -57
@@ -21,21 +21,21 @@ DEFAULT_MIDI_TEST_FILE = 'NoFences.mid'
21
21
  # Read from MIDI file
22
22
  seq = MIDI::Sequence.new()
23
23
 
24
- File.open(ARGV[0] || DEFAULT_MIDI_TEST_FILE, 'rb') { | file |
25
- # The block we pass in to Sequence.read is called at the end of every
26
- # track read. It is optional, but is useful for progress reports.
27
- seq.read(file) { | track, num_tracks, i |
28
- puts "read track #{track ? track.name : ''} (#{i} of #{num_tracks})"
29
- }
30
- }
24
+ File.open(ARGV[0] || DEFAULT_MIDI_TEST_FILE, 'rb') do |file|
25
+ # The block we pass in to Sequence.read is called at the end of every
26
+ # track read. It is optional, but is useful for progress reports.
27
+ seq.read(file) do |track, num_tracks, i|
28
+ puts "read track #{track ? track.name : ''} (#{i} of #{num_tracks})"
29
+ end
30
+ end
31
31
 
32
- seq.each { | track |
33
- puts "*** track name \"#{track.name}\""
34
- puts "instrument name \"#{track.instrument}\""
35
- puts "#{track.events.length} events"
36
- track.each { | e |
37
- e.print_decimal_numbers = true # default = false (print hex)
38
- e.print_note_names = true # default = false (print note numbers)
39
- puts e
40
- }
41
- }
32
+ seq.each do |track|
33
+ puts "*** track name \"#{track.name}\""
34
+ puts "instrument name \"#{track.instrument}\""
35
+ puts "#{track.events.length} events"
36
+ track.each do |e|
37
+ e.print_decimal_numbers = true # default = false (print hex)
38
+ e.print_note_names = true # default = false (print note numbers)
39
+ puts e
40
+ end
41
+ end
@@ -22,31 +22,31 @@ DEFAULT_MIDI_TEST_FILE = 'NoFences.mid'
22
22
  filename = ARGV[0]
23
23
  include_tempo_track = true
24
24
  if filename == '-x'
25
- include_tempo_track = false
26
- filename = ARGV[1]
25
+ include_tempo_track = false
26
+ filename = ARGV[1]
27
27
  end
28
28
 
29
29
  # Read from MIDI file
30
30
  seq = MIDI::Sequence.new()
31
31
 
32
- File.open(filename || DEFAULT_MIDI_TEST_FILE, 'rb') { | file |
33
- # The block we pass in to Sequence.read is called at the end of every
34
- # track read. It is optional, but is useful for progress reports.
35
- seq.read(file) { | track, num_tracks, i |
36
- puts "read track #{track ? track.name : ''} (#{i} of #{num_tracks})"
37
- }
38
- }
32
+ File.open(filename || DEFAULT_MIDI_TEST_FILE, 'rb') do |file|
33
+ # The block we pass in to Sequence.read is called at the end of every
34
+ # track read. It is optional, but is useful for progress reports.
35
+ seq.read(file) do |track, num_tracks, i|
36
+ puts "read track #{track ? track.name : ''} (#{i} of #{num_tracks})"
37
+ end
38
+ end
39
39
 
40
40
  t0 = seq.tracks[0]
41
41
  unless include_tempo_track
42
- s = MIDI::Sequence.new
43
- s.tracks << t0
44
- File.open("tempo_track.mid", 'wb') { | file | s.write(file) }
42
+ s = MIDI::Sequence.new
43
+ s.tracks << t0
44
+ File.open("tempo_track.mid", 'wb') { | file | s.write(file) }
45
+ end
46
+ seq.each_with_index do |track, i|
47
+ next unless i > 0
48
+ s = MIDI::Sequence.new
49
+ s.tracks << t0 if include_tempo_track
50
+ s.tracks << track
51
+ File.open("#{track.name}.mid", 'wb') { | file | s.write(file) }
45
52
  end
46
- seq.each_with_index { | track, i |
47
- next unless i > 0
48
- s = MIDI::Sequence.new
49
- s.tracks << t0 if include_tempo_track
50
- s.tracks << track
51
- File.open("#{track.name}.mid", 'wb') { | file | s.write(file) }
52
- }
@@ -16,19 +16,19 @@ require 'midilib/consts'
16
16
  DEFAULT_MIDI_TEST_FILE = 'NoFences.mid'
17
17
 
18
18
  seq = MIDI::Sequence.new()
19
- File.open(ARGV[0] || DEFAULT_MIDI_TEST_FILE, 'rb') { | file |
20
- # The block we pass in to Sequence.read is called at the end of every
21
- # track read. It is optional, but is useful for progress reports.
22
- seq.read(file) { | track, num_tracks, i |
23
- puts "read track #{track ? track.name : ''} (#{i} of #{num_tracks})"
24
- }
25
- }
19
+ File.open(ARGV[0] || DEFAULT_MIDI_TEST_FILE, 'rb') do |file|
20
+ # The block we pass in to Sequence.read is called at the end of every
21
+ # track read. It is optional, but is useful for progress reports.
22
+ seq.read(file) do |track, num_tracks, i|
23
+ puts "read track #{track ? track.name : ''} (#{i} of #{num_tracks})"
24
+ end
25
+ end
26
26
 
27
27
  include MIDI
28
- seq.each { | track |
29
- track.each { | event |
30
- puts event.data if event.kind_of?(MIDI::MetaEvent) &&
31
- [META_TEXT, META_COPYRIGHT, META_SEQ_NAME, META_INSTRUMENT,
32
- META_LYRIC, META_CUE, META_MARKER].include?(event.meta_type)
33
- }
34
- }
28
+ seq.each do |track|
29
+ track.each do |event|
30
+ puts event.data if event.kind_of?(MIDI::MetaEvent) &&
31
+ [META_TEXT, META_COPYRIGHT, META_SEQ_NAME, META_INSTRUMENT,
32
+ META_LYRIC, META_CUE, META_MARKER].include?(event.meta_type)
33
+ end
34
+ end
@@ -19,14 +19,14 @@ require 'midilib/io/seqwriter'
19
19
 
20
20
 
21
21
  def usage
22
- $stderr.print <<EOF
22
+ $stderr.print <<EOF
23
23
  usage: #{$0} [--channel|-c channel] [--transpose|-t half_steps]
24
24
  input_midi_file output_midi_file
25
25
 
26
26
  --channel|-c channel 1-16; default is 1
27
27
  --transpose|-t half_steps default = 12 (one octave up)
28
28
  EOF
29
- exit(1)
29
+ exit(1)
30
30
  end
31
31
 
32
32
  transpose = 12
@@ -34,40 +34,40 @@ channel = 0
34
34
 
35
35
  g = GetoptLong.new(['--transpose', '-t', GetoptLong::REQUIRED_ARGUMENT],
36
36
  ['--channel', '-c', GetoptLong::REQUIRED_ARGUMENT])
37
- g.each { | name, arg |
38
- case name
39
- when '--transpose'
40
- transpose = arg.to_i
41
- when '--channel'
42
- channel = arg.to_i - 1
43
- else
44
- usage()
45
- end
46
- }
37
+ g.each do |name, arg|
38
+ case name
39
+ when '--transpose'
40
+ transpose = arg.to_i
41
+ when '--channel'
42
+ channel = arg.to_i - 1
43
+ else
44
+ usage()
45
+ end
46
+ end
47
47
 
48
48
  usage() unless ARGV.length >= 2
49
49
 
50
50
  seq = MIDI::Sequence.new()
51
- File.open(ARGV[0], 'rb') { | file |
52
- # The block we pass in to Sequence.read is called at the end of every
53
- # track read. It is optional, but is useful for progress reports.
54
- seq.read(file) { | num_tracks, i |
55
- puts "read track #{i} of #{num_tracks}"
56
- }
57
- }
51
+ File.open(ARGV[0], 'rb') do |file|
52
+ # The block we pass in to Sequence.read is called at the end of every
53
+ # track read. It is optional, but is useful for progress reports.
54
+ seq.read(file) do |num_tracks, i|
55
+ puts "read track #{i} of #{num_tracks}"
56
+ end
57
+ end
58
58
 
59
- seq.each { | track |
60
- track.each { | event |
61
- if event.kind_of?(MIDI::NoteEvent) && event.channel == channel
62
- val = event.note + transpose
63
- if val < 0 || val > 127
64
- $stderr.puts "transposition out of range; ignored"
65
- else
66
- event.note = val
67
- end
68
- end
69
- }
70
- }
59
+ seq.each do |track|
60
+ track.each do |event|
61
+ if event.kind_of?(MIDI::NoteEvent) && event.channel == channel
62
+ val = event.note + transpose
63
+ if val < 0 || val > 127
64
+ $stderr.puts "transposition out of range; ignored"
65
+ else
66
+ event.note = val
67
+ end
68
+ end
69
+ end
70
+ end
71
71
 
72
72
  # Output to named file or stdout.
73
73
  file = ARGV[1] ? File.open(ARGV[1], 'wb') : $stdout
@@ -2,197 +2,90 @@
2
2
 
3
3
  <html>
4
4
  <head>
5
- <meta content="text/html; charset=US-ASCII" http-equiv="Content-Type">
5
+ <meta charset="UTF-8">
6
6
 
7
7
  <title>class IO - midilib</title>
8
8
 
9
- <link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
10
-
11
9
  <script type="text/javascript">
12
10
  var rdoc_rel_prefix = "./";
13
11
  </script>
14
12
 
15
- <script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
16
- <script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
17
- <script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
18
- <script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
19
- <script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
20
- <script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
13
+ <script src="./js/jquery.js"></script>
14
+ <script src="./js/darkfish.js"></script>
15
+
16
+ <link href="./css/fonts.css" rel="stylesheet">
17
+ <link href="./css/rdoc.css" rel="stylesheet">
18
+
21
19
 
22
20
 
23
- <body id="top" class="class">
24
- <nav id="metadata">
25
- <nav id="home-section" class="section">
26
- <h3 class="section-header">
27
- <a href="./index.html">Home</a>
21
+ <body id="top" role="document" class="class">
22
+ <nav role="navigation">
23
+ <div id="project-navigation">
24
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
25
+ <h2>
26
+ <a href="./index.html" rel="home">Home</a>
27
+ </h2>
28
+
29
+ <div id="table-of-contents-navigation">
30
+ <a href="./table_of_contents.html#pages">Pages</a>
28
31
  <a href="./table_of_contents.html#classes">Classes</a>
29
32
  <a href="./table_of_contents.html#methods">Methods</a>
30
- </h3>
31
- </nav>
32
-
33
+ </div>
34
+ </div>
33
35
 
34
- <nav id="search-section" class="section project-section" class="initially-hidden">
36
+ <div id="search-section" role="search" class="project-section initially-hidden">
35
37
  <form action="#" method="get" accept-charset="utf-8">
36
- <h3 class="section-header">
37
- <input type="text" name="search" placeholder="Search" id="search-field"
38
+ <div id="search-field-wrapper">
39
+ <input id="search-field" role="combobox" aria-label="Search"
40
+ aria-autocomplete="list" aria-controls="search-results"
41
+ type="text" name="search" placeholder="Search" spellcheck="false"
38
42
  title="Type to search, Up and Down to navigate, Enter to load">
39
- </h3>
40
- </form>
41
-
42
- <ul id="search-results" class="initially-hidden"></ul>
43
- </nav>
44
-
43
+ </div>
45
44
 
46
- <div id="file-metadata">
47
- <nav id="file-list-section" class="section">
48
- <h3 class="section-header">Defined In</h3>
49
- <ul>
50
- <li>lib/midilib/io/midifile.rb
51
- </ul>
52
- </nav>
45
+ <ul id="search-results" aria-label="Search Results"
46
+ aria-busy="false" aria-expanded="false"
47
+ aria-atomic="false" class="initially-hidden"></ul>
48
+ </form>
49
+ </div>
53
50
 
54
-
55
51
  </div>
56
52
 
53
+
54
+
57
55
  <div id="class-metadata">
58
56
 
59
- <nav id="parent-class-section" class="section">
60
- <h3 class="section-header">Parent</h3>
57
+ <div id="parent-class-section" class="nav-section">
58
+ <h3>Parent</h3>
59
+
61
60
 
62
61
  <p class="link">Object
63
62
 
64
- </nav>
63
+ </div>
65
64
 
66
65
 
66
+
67
67
  <!-- Method Quickref -->
68
- <nav id="method-list-section" class="section">
69
- <h3 class="section-header">Methods</h3>
68
+ <div id="method-list-section" class="nav-section">
69
+ <h3>Methods</h3>
70
70
 
71
- <ul class="link-list">
71
+ <ul class="link-list" role="directory">
72
72
 
73
- <li><a href="#method-i-readbyte">#readbyte</a>
73
+ <li ><a href="#method-i-readbyte">#readbyte</a>
74
74
 
75
75
  </ul>
76
- </nav>
77
-
78
- </div>
79
-
80
- <div id="project-metadata">
81
- <nav id="fileindex-section" class="section project-section">
82
- <h3 class="section-header">Pages</h3>
83
-
84
- <ul>
85
-
86
- <li class="file"><a href="./README_rdoc.html">README</a>
87
-
88
- <li class="file"><a href="./TODO_rdoc.html">TODO</a>
89
-
90
- </ul>
91
- </nav>
92
-
93
- <nav id="classindex-section" class="section project-section">
94
- <h3 class="section-header">Class and Module Index</h3>
95
-
96
- <ul class="link-list">
97
-
98
- <li><a href="./MIDI.html">MIDI</a>
99
-
100
- <li><a href="./MIDI/ActiveSense.html">MIDI::ActiveSense</a>
101
-
102
- <li><a href="./MIDI/ChannelEvent.html">MIDI::ChannelEvent</a>
103
-
104
- <li><a href="./MIDI/ChannelPressure.html">MIDI::ChannelPressure</a>
105
-
106
- <li><a href="./MIDI/Clock.html">MIDI::Clock</a>
107
-
108
- <li><a href="./MIDI/Continue.html">MIDI::Continue</a>
109
-
110
- <li><a href="./MIDI/Controller.html">MIDI::Controller</a>
111
-
112
- <li><a href="./MIDI/Event.html">MIDI::Event</a>
113
-
114
- <li><a href="./MIDI/IO.html">MIDI::IO</a>
115
-
116
- <li><a href="./MIDI/IO/MIDIFile.html">MIDI::IO::MIDIFile</a>
117
-
118
- <li><a href="./MIDI/IO/SeqReader.html">MIDI::IO::SeqReader</a>
119
-
120
- <li><a href="./MIDI/IO/SeqWriter.html">MIDI::IO::SeqWriter</a>
121
-
122
- <li><a href="./MIDI/KeySig.html">MIDI::KeySig</a>
123
-
124
- <li><a href="./MIDI/MIDI.html">MIDI::MIDI</a>
125
-
126
- <li><a href="./MIDI/MIDI/MIDI.html">MIDI::MIDI::MIDI</a>
127
-
128
- <li><a href="./MIDI/MIDI/MIDI/Array.html">MIDI::MIDI::MIDI::Array</a>
129
-
130
- <li><a href="./MIDI/Marker.html">MIDI::Marker</a>
131
-
132
- <li><a href="./MIDI/Measure.html">MIDI::Measure</a>
133
-
134
- <li><a href="./MIDI/Measures.html">MIDI::Measures</a>
135
-
136
- <li><a href="./MIDI/MetaEvent.html">MIDI::MetaEvent</a>
137
-
138
- <li><a href="./MIDI/NoteEvent.html">MIDI::NoteEvent</a>
139
-
140
- <li><a href="./MIDI/NoteOff.html">MIDI::NoteOff</a>
141
-
142
- <li><a href="./MIDI/NoteOff.html">MIDI::NoteOffEvent</a>
143
-
144
- <li><a href="./MIDI/NoteOn.html">MIDI::NoteOn</a>
145
-
146
- <li><a href="./MIDI/NoteOn.html">MIDI::NoteOnEvent</a>
147
-
148
- <li><a href="./MIDI/PitchBend.html">MIDI::PitchBend</a>
149
-
150
- <li><a href="./MIDI/PolyPressure.html">MIDI::PolyPressure</a>
151
-
152
- <li><a href="./MIDI/ProgramChange.html">MIDI::ProgramChange</a>
153
-
154
- <li><a href="./MIDI/Realtime.html">MIDI::Realtime</a>
155
-
156
- <li><a href="./MIDI/Sequence.html">MIDI::Sequence</a>
157
-
158
- <li><a href="./MIDI/SongPointer.html">MIDI::SongPointer</a>
159
-
160
- <li><a href="./MIDI/SongSelect.html">MIDI::SongSelect</a>
161
-
162
- <li><a href="./MIDI/Start.html">MIDI::Start</a>
163
-
164
- <li><a href="./MIDI/Stop.html">MIDI::Stop</a>
165
-
166
- <li><a href="./MIDI/SystemCommon.html">MIDI::SystemCommon</a>
167
-
168
- <li><a href="./MIDI/SystemExclusive.html">MIDI::SystemExclusive</a>
169
-
170
- <li><a href="./MIDI/SystemReset.html">MIDI::SystemReset</a>
171
-
172
- <li><a href="./MIDI/Tempo.html">MIDI::Tempo</a>
173
-
174
- <li><a href="./MIDI/TimeSig.html">MIDI::TimeSig</a>
175
-
176
- <li><a href="./MIDI/Track.html">MIDI::Track</a>
177
-
178
- <li><a href="./MIDI/TuneRequest.html">MIDI::TuneRequest</a>
179
-
180
- <li><a href="./MIDI/Utils.html">MIDI::Utils</a>
181
-
182
- <li><a href="./IO.html">IO</a>
183
-
184
- </ul>
185
- </nav>
76
+ </div>
186
77
 
187
78
  </div>
188
79
  </nav>
189
80
 
190
- <div id="documentation">
191
- <h1 class="class">class IO</h1>
81
+ <main role="main" aria-labelledby="class-IO">
82
+ <h1 id="class-IO" class="class">
83
+ class IO
84
+ </h1>
192
85
 
193
- <div id="description" class="description">
86
+ <section class="description">
194
87
 
195
- </div><!-- description -->
88
+ </section>
196
89
 
197
90
 
198
91
 
@@ -206,10 +99,11 @@
206
99
 
207
100
 
208
101
 
209
- <!-- Methods -->
210
102
 
211
- <section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
212
- <h3 class="section-header">Public Instance Methods</h3>
103
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
104
+ <header>
105
+ <h3>Public Instance Methods</h3>
106
+ </header>
213
107
 
214
108
 
215
109
  <div id="method-i-readbyte" class="method-detail ">
@@ -217,7 +111,9 @@
217
111
  <div class="method-heading">
218
112
  <span class="method-name">readbyte</span><span
219
113
  class="method-args">()</span>
114
+
220
115
  <span class="method-click-advice">click to toggle source</span>
116
+
221
117
  </div>
222
118
 
223
119
 
@@ -225,35 +121,35 @@
225
121
 
226
122
 
227
123
 
124
+
228
125
 
229
126
 
230
127
  <div class="method-source-code" id="readbyte-source">
231
128
  <pre><span class="ruby-comment"># File lib/midilib/io/midifile.rb, line 5</span>
232
129
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">readbyte</span>
233
130
  <span class="ruby-identifier">c</span> = <span class="ruby-identifier">getc</span>()
234
- <span class="ruby-identifier">raise</span> <span class="ruby-string">'unexpected EOF'</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">c</span>
131
+ <span class="ruby-identifier">raise</span> <span class="ruby-string">&#39;unexpected EOF&#39;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">c</span>
235
132
  <span class="ruby-identifier">c</span>
236
133
  <span class="ruby-keyword">end</span></pre>
237
- </div><!-- readbyte-source -->
134
+ </div>
238
135
 
239
136
  </div>
240
137
 
241
138
 
242
139
 
243
140
 
244
- </div><!-- readbyte-method -->
141
+ </div>
245
142
 
246
143
 
247
- </section><!-- public-instance-method-details -->
144
+ </section>
248
145
 
249
- </section><!-- 5Buntitled-5D -->
250
-
251
- </div><!-- documentation -->
146
+ </section>
147
+ </main>
252
148
 
253
149
 
254
- <footer id="validator-badges">
255
- <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
256
- <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
257
- <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
150
+ <footer id="validator-badges" role="contentinfo">
151
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
152
+ <p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.0.
153
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
258
154
  </footer>
259
155