61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
# File 'lib/io.rb', line 61
def parseOLI()
if (@state & 0x01) === 0
parseSI()
end
if @stringIndex.length === 0
return self
end
@OLItype = @buffer.readUInt8()
case @OLItype
when Constants::UNSIGNED_CHAR, Constants::UNSIGNED_SHORT, Constants::UNSIGNED_INT
count = @buffer.readValue(@OLItype)
when 0xFF
return self
else
return self
end
for i in 0..(count - 1)
@objectLayoutIndex.push Array.new
numFields = @buffer.readValue(@buffer.readUInt8())
for j in 0..(numFields - 1)
@objectLayoutIndex[i].push(@buffer.readValue(@stringIndexType))
end
end
return self
end
|