Class: Zip::ZipExtraField::Generic
Overview
Meta class for extra fields
Direct Known Subclasses
Class Method Summary (collapse)
Instance Method Summary (collapse)
- - (Object) ==(other)
-
- (Object) initial_parse(binstr)
return field [size, content] or false.
- - (Object) to_c_dir_bin
- - (Object) to_local_bin
Class Method Details
+ (Object) name
1670 1671 1672 |
# File 'lib/zip/zip.rb', line 1670 def self.name self.to_s.split("::")[-1] end |
+ (Object) register_map
1664 1665 1666 1667 1668 |
# File 'lib/zip/zip.rb', line 1664 def self.register_map if self.const_defined?(:HEADER_ID) ID_MAP[self.const_get(:HEADER_ID)] = self end end |
Instance Method Details
- (Object) ==(other)
1686 1687 1688 1689 1690 1691 1692 |
# File 'lib/zip/zip.rb', line 1686 def ==(other) self.class != other.class and return false each { |k, v| v != other[k] and return false } true end |
- (Object) initial_parse(binstr)
return field [size, content] or false
1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 |
# File 'lib/zip/zip.rb', line 1675 def initial_parse(binstr) if ! binstr # If nil, start with empty. return false elsif binstr[0,2] != self.class.const_get(:HEADER_ID) $stderr.puts "Warning: weired extra feild header ID. skip parsing" return false end [binstr[2,2].unpack("v")[0], binstr[4..-1]] end |
- (Object) to_c_dir_bin
1699 1700 1701 1702 |
# File 'lib/zip/zip.rb', line 1699 def to_c_dir_bin s = pack_for_c_dir self.class.const_get(:HEADER_ID) + [s.length].pack("v") + s end |
- (Object) to_local_bin
1694 1695 1696 1697 |
# File 'lib/zip/zip.rb', line 1694 def to_local_bin s = pack_for_local self.class.const_get(:HEADER_ID) + [s.length].pack("v") + s end |