X-Git-Url: https://git.mxchange.org/?p=core.git;a=blobdiff_plain;f=contrib%2Ffile_stack%2Fformat.txt;h=058b5b879a9e72436ec6b83ebfd6396d555d87ae;hp=637baf6f811203c1cf9449e20a223674c8e1297b;hb=276a54f13460010f0a5866466820c101ee08cbe6;hpb=2724091df3f002f07609232a74ad5620934dbb47 diff --git a/contrib/file_stack/format.txt b/contrib/file_stack/format.txt index 637baf6f..058b5b87 100644 --- a/contrib/file_stack/format.txt +++ b/contrib/file_stack/format.txt @@ -1,23 +1,24 @@ A file-based stack: =================== -This is the format for a file-based stack which works as any Stackable class. +This is the format for a file-based stack which works as any other Stackable +class. General made up: -Purpose: | "magic" | separator | count | position | separator | ----------+-----------+-----------+----------+----------+-----------+ -Bytes: | 9 | 1 | 20 (hex) | 20 (hex) | 1 | ----------+-----------+-----------+----------+----------+-----------+ -Example: | STACKv1.0 | 00 | 00...ff | 00...ff | ff | +Purpose: | "magic" | separator | count | separator | position | separator | +---------+-----------+-----------+----------+-----------+------0---+-----------+ +Bytes: | 9 | 1 | 20 (hex) | 1 | 20 (hex) | 1 | +---------+-----------+-----------+----------+-----------+----------+-----------+ +Example: | STACKv1.0 | 01 | 00...ff | 01 | 00...ff | 02 | Continued: Purpose: | hash 0 | separator | name 0 | entry 0 | hash n | separator | name n | entry n | EOF | ---------+--------+-----------+--------+------------+--------+-----------+--------+------------+-----+ -Bytes: | ??? | 1 | 10 | 1-n (pack) | ??? | 1 | 10 | 1-n (pack) | 1 | +Bytes: | 64 | 1 | 10 | 1-n (pack) | 64 | 1 | 10 | 1-n (pack) | 1 | ---------+--------+-----------+--------+------------+--------+-----------+--------+------------+-----+ -Example: | abc | ??? | foo | ... | abc | ??? | bar | ... | EOF | +Example: | abc | 03 | foo | ... | abc | 03 | bar | ... | EOF | Explanations: ------------- @@ -25,8 +26,9 @@ Explanations: separator - Serves to detect end of strings with unknown/flexible length count - Total amount of entries (not deleted) encoded in hexa-decimal position - Seek position of current entry (which current() will give) - hash X - Hash sum of entry X + hash X - Hash sum of entry X (SHA 256) name X - Name of stack the entries belongs in entry X - The actual data, compressed with pack() EOF - End-of-file character + ... - Data ??? - Must be still found out which character/hashing algorthym fits best