| Index: third_party/gsutil/third_party/crcmod/docs/source/make_predefined_table.py
|
| diff --git a/third_party/gsutil/third_party/crcmod/docs/source/make_predefined_table.py b/third_party/gsutil/third_party/crcmod/docs/source/make_predefined_table.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..df1a73fab85f5f066f8b5343bd642440be1dc453
|
| --- /dev/null
|
| +++ b/third_party/gsutil/third_party/crcmod/docs/source/make_predefined_table.py
|
| @@ -0,0 +1,45 @@
|
| +
|
| +from __future__ import print_function
|
| +
|
| +import numbers
|
| +
|
| +import crcmod.predefined
|
| +
|
| +table_data = [
|
| + [ "Name", 'name', 32, ],
|
| + [ "Polynomial", 'poly', 22, ],
|
| + [ "Reversed?", 'reverse', 10, ],
|
| + [ "Init-value", 'init', 20, ],
|
| + [ "XOR-out", 'xor_out', 20, ],
|
| + [ "Check", 'check', 20, ],
|
| +]
|
| +
|
| +ccitt_defns = [
|
| + 'kermit',
|
| + 'crc-ccitt-false',
|
| + 'crc-aug-ccitt',
|
| +]
|
| +
|
| +column_dashes = ' '.join(('=' * table_data_item[2] for table_data_item in table_data))
|
| +print(column_dashes)
|
| +print(' '.join(("%-*s" % (table_data_item[2], table_data_item[0]) for table_data_item in table_data)).strip())
|
| +print(column_dashes)
|
| +
|
| +for defn in crcmod.predefined._crc_definitions:
|
| + poly_width = crcmod.crcmod._verifyPoly(defn['poly'])
|
| + hex_width = (poly_width + 3) // 4
|
| + defn_data_list = []
|
| + for (header_text, key, width) in table_data:
|
| + if isinstance(defn[key], bool):
|
| + item = "%s" % (defn[key],)
|
| + elif isinstance(defn[key], numbers.Integral):
|
| + item = "0x%0*X" % (hex_width, defn[key])
|
| + else:
|
| + item = "``%s``" % (defn[key])
|
| + if defn['name'] in ccitt_defns:
|
| + item = ' '.join([item, '[#ccitt]_'])
|
| + item = "%-*s" % (width, item)
|
| + defn_data_list.append(item)
|
| + print(' '.join(defn_data_list).strip())
|
| +
|
| +print(column_dashes)
|
|
|