+ case REPOKEY_TYPE_ID:
+ if (data && data->localpool)
+ kv->str = stringpool_id2str(&data->spool, kv->id);
+ else
+ kv->str = pool_dep2str(repo->pool, kv->id);
+ printf("%s: %s\n", keyname, kv->str);
+ break;
+ case REPOKEY_TYPE_CONSTANTID:
+ printf("%s: %s\n", keyname, pool_dep2str(repo->pool, kv->id));
+ break;
+ case REPOKEY_TYPE_IDARRAY:
+ if (!kv->entry)
+ printf("%s:\n%*s", keyname, indent, "");
+ if (data && data->localpool)
+ printf(" %s\n", stringpool_id2str(&data->spool, kv->id));
+ else
+ printf(" %s\n", pool_dep2str(repo->pool, kv->id));
+ break;
+ case REPOKEY_TYPE_STR:
+ printf("%s: %s\n", keyname, kv->str);
+ break;
+ case REPOKEY_TYPE_VOID:
+ printf("%s: (void)\n", keyname);
+ break;
+ case REPOKEY_TYPE_U32:
+ case REPOKEY_TYPE_CONSTANT:
+ printf("%s: %u\n", keyname, kv->num);
+ break;
+ case REPOKEY_TYPE_NUM:
+ printf("%s: %llu\n", keyname, SOLV_KV_NUM64(kv));
+ break;
+ case REPOKEY_TYPE_BINARY:
+ if (kv->num)
+ printf("%s: %02x..%02x len %u\n", keyname, (unsigned char)kv->str[0], (unsigned char)kv->str[kv->num - 1], kv->num);
+ else
+ printf("%s: len 0\n", keyname);
+ break;
+ case REPOKEY_TYPE_DIRNUMNUMARRAY:
+ if (!kv->entry)
+ printf("%s:\n%*s", keyname, indent, "");
+ printf(" %s %u %u\n", repodata_dir2str(data, kv->id, 0), kv->num, kv->num2);
+ break;
+ case REPOKEY_TYPE_DIRSTRARRAY:
+ if (!kv->entry)
+ printf("%s:\n%*s", keyname, indent, "");
+ printf(" %s\n", repodata_dir2str(data, kv->id, kv->str));
+ break;
+ case REPOKEY_TYPE_FIXARRAY:
+ case REPOKEY_TYPE_FLEXARRAY:
+ if (!kv->entry)
+ printf("%s:\n", keyname);
+ else
+ printf("\n");
+ break;
+ default:
+ if (solv_chksum_len(key->type))