Class: PropertyList::BinaryParser
- Inherits:
-
Object
- Object
- PropertyList::BinaryParser
- Includes:
- BinaryMarkers
- Defined in:
- lib/property-list/binary_parser.rb
Overview
Reference:
https://opensource.apple.com/source/CF/CF-1151.16/CFBinaryPList.c.auto.html
Constant Summary
Constants included from BinaryMarkers
PropertyList::BinaryMarkers::MARKER_ARRAY, PropertyList::BinaryMarkers::MARKER_ASCII_STRING, PropertyList::BinaryMarkers::MARKER_DATA, PropertyList::BinaryMarkers::MARKER_DATE, PropertyList::BinaryMarkers::MARKER_DICT, PropertyList::BinaryMarkers::MARKER_FALSE, PropertyList::BinaryMarkers::MARKER_FILL, PropertyList::BinaryMarkers::MARKER_INT, PropertyList::BinaryMarkers::MARKER_NO_BASE_URL, PropertyList::BinaryMarkers::MARKER_NULL, PropertyList::BinaryMarkers::MARKER_ORD_SET, PropertyList::BinaryMarkers::MARKER_REAL, PropertyList::BinaryMarkers::MARKER_SET, PropertyList::BinaryMarkers::MARKER_TRUE, PropertyList::BinaryMarkers::MARKER_UID, PropertyList::BinaryMarkers::MARKER_UTF16BE_STRING, PropertyList::BinaryMarkers::MARKER_UTF8_STRING, PropertyList::BinaryMarkers::MARKER_UUID, PropertyList::BinaryMarkers::MARKER_WITH_BASE_URL, PropertyList::BinaryMarkers::TIME_INTERVAL_SINCE_1970
Instance Method Summary collapse
-
#initialize(src) ⇒ BinaryParser
constructor
A new instance of BinaryParser.
- #parse ⇒ Object
Constructor Details
#initialize(src) ⇒ BinaryParser
Returns a new instance of BinaryParser.
11 12 13 14 15 16 |
# File 'lib/property-list/binary_parser.rb', line 11 def initialize src @src = src @offset_byte_size, @ref_byte_size, @flatten_objects_size, @root_object_index, @offset_table_addr = \ @src.byteslice((-32)..(-1)).unpack '@6C2Q>3' end |
Instance Method Details
#parse ⇒ Object
18 19 20 21 |
# File 'lib/property-list/binary_parser.rb', line 18 def parse @offset_table = decode_offset_table decode_id @root_object_index end |