<QtCborCommon>
L'en-tête <QtCborCommon> contient des définitions communes aux classes de streaming (QCborStreamReader et QCborStreamWriter) et à QCborValue. Plus...
| Header: | #include <QtCborCommon> |
Types
| enum class | QCborKnownTags { DateTimeString, UnixTime_t, PositiveBignum, NegativeBignum, Decimal, …, Signature } |
| enum class | QCborSimpleType { False, True, Null, Undefined } |
| enum class | QCborTag { } |
Voir aussi QCborError.
Documentation des types
enum class QCborKnownTags
Cette énumération contient une liste de balises CBOR, connues au moment de l'implémentation de Qt. Cette liste n'est pas exhaustive et ne contient que les balises soutenues par une RFC ou spécifiquement utilisées par l'implémentation de Qt.
La liste faisant autorité est maintenue par l'IANA dans le registre des balises CBOR.
| Constante | Valeur | Description |
|---|---|---|
QCborKnownTags::DateTimeString | 0 | Une chaîne de date et d'heure, formatée conformément à la RFC 3339, telle qu'affinée par la RFC 4287. Il s'agit du même format que Qt::ISODate et Qt::ISODateWithMs. |
QCborKnownTags::UnixTime_t | 1 | Une représentation numérique des secondes écoulées depuis 1970-01-01T00:00Z. |
QCborKnownTags::PositiveBignum | 2 | Un nombre positif de longueur arbitraire, codé sous forme de tableau d'octets dans l'ordre des octets du réseau. Par exemple, le nombre264 est représenté par un tableau d'octets contenant la valeur 0x01 suivie de 8 octets de zéro. |
QCborKnownTags::NegativeBignum | 3 | Un nombre négatif de longueur arbitraire, encodé comme la valeur absolue de ce nombre, moins un. Par exemple, un tableau d'octets contenant la valeur 0x02 suivie de 8 octets de zéro représente le nombre -265 - 1. |
QCborKnownTags::Decimal | 4 | Une fraction décimale, codée sous la forme d'un tableau de deux entiers : le premier est l'exposant de la puissance de 10, le second la mantisse intégrale. La valeur 273,15 serait codée sous la forme d'un tableau [-2, 27315]. |
QCborKnownTags::Bigfloat | 5 | Similaire à Decimal, mais l'exposant est une puissance de 2 à la place. |
QCborKnownTags::COSE_Encrypt0 | 16 | Une carte Encrypt0 telle que spécifiée par la RFC 8152 (CBOR Object Signing and Encryption). |
QCborKnownTags::COSE_Mac0 | 17 | Une carte Mac0 telle que spécifiée par le RFC 8152 (CBOR Object Signing and Encryption). |
QCborKnownTags::COSE_Sign1 | 18 | Une carte Sign1 telle que spécifiée par le RFC 8152 (CBOR Object Signing and Encryption). |
QCborKnownTags::ExpectedBase64url | 21 | Indique que le tableau d'octets doit être encodé à l'aide de Base64url si le flux est converti en JSON. |
QCborKnownTags::ExpectedBase64 | 22 | Indique que le tableau d'octets doit être encodé en utilisant Base64 si le flux est converti en JSON. |
QCborKnownTags::ExpectedBase16 | 23 | Indique que le tableau d'octets doit être encodé en Base16 (hex) si le flux est converti en JSON. |
QCborKnownTags::EncodedCbor | 24 | Indique que le tableau d'octets contient un flux CBOR. |
QCborKnownTags::Url | 32 | Indique que la chaîne contient une URL. |
QCborKnownTags::Base64url | 33 | Indique que la chaîne contient des données encodées à l'aide de Base64url. |
QCborKnownTags::Base64 | 34 | Indique que la chaîne contient des données encodées à l'aide de Base64. |
QCborKnownTags::RegularExpression | 35 | Indique que la chaîne contient un motif d'expression régulière compatible avec Perl. |
QCborKnownTags::MimeMessage | 36 | Indique que la chaîne contient un message MIME (conformément à la RFC 2045). |
QCborKnownTags::Uuid | 37 | Indique que le tableau d'octets contient un UUID. |
QCborKnownTags::COSE_Encrypt | 96 | Une carte Encrypt telle que spécifiée par la RFC 8152 (CBOR Object Signing and Encryption). |
QCborKnownTags::COSE_Mac | 97 | Une carte Mac telle que spécifiée par le RFC 8152 (CBOR Object Signing and Encryption). |
QCborKnownTags::COSE_Sign | 98 | Une carte Sign telle que spécifiée par le RFC 8152 (CBOR Object Signing and Encryption). |
QCborKnownTags::Signature | 55799 | Pas de changement dans l'interprétation ; cette balise peut être utilisée comme balise extérieure dans un flux CBOR en tant qu'en-tête de fichier. |
Les balises suivantes sont interprétées par QCborValue pendant le décodage et produiront des objets avec des types étendus de Qt XML, et il utilisera ces balises lors de l'encodage des mêmes types étendus.
| Constante | Valeur | Description |
|---|---|---|
QCborKnownTags::DateTimeString | 0 | QDateTime |
QCborKnownTags::UnixTime_t | 1 | QDateTime (uniquement lors du décodage) |
QCborKnownTags::Url | 32 | QUrl |
QCborKnownTags::Uuid | 37 | QUuid |
De plus, si un QCborValue contenant un QByteArray est étiqueté en utilisant l'un des ExpectedBase64url, ExpectedBase64 ou ExpectedBase16, QCborValue utilisera l'encodage attendu lors de la conversion en JSON (voir QCborValue::toJsonValue).
Voir aussi QCborTag, QCborStreamWriter::append(QCborTag), QCborStreamReader::isTag(), QCborStreamReader::toTag(), QCborValue::isTag(), et QCborValue::tag().
enum class QCborSimpleType
Cette énumération contient les "types simples" possibles pour CBOR. Les types simples vont de 0 à 255 et sont des types qui ne comportent aucune autre valeur.
Les valeurs suivantes sont actuellement connues :
| Constante | Valeur | Description |
|---|---|---|
QCborSimpleType::False | 20 | Un booléen "faux". |
QCborSimpleType::True | 21 | Un booléen "vrai". |
QCborSimpleType::Null | 22 | Absence de valeur (null). |
QCborSimpleType::Undefined | 23 | Valeur manquante ou supprimée, généralement une erreur. |
L'API Qt CBOR prend en charge le codage et le décodage de tout type simple, qu'il s'agisse de l'un des types ci-dessus ou de toute autre valeur.
Les applications ne doivent utiliser d'autres valeurs que si une spécification correspondante a été publiée, faute de quoi l'interprétation et la validation par la télécommande risquent d'échouer. Les valeurs 24 à 31 sont réservées et ne doivent pas être utilisées.
La liste actuelle faisant autorité est maintenue par l'IANA dans le registre des valeurs simples.
Voir également QCborStreamWriter::append(QCborSimpleType), QCborStreamReader::isSimpleType(), QCborStreamReader::toSimpleType(), QCborValue::isSimpleType() et QCborValue::toSimpleType().
enum class QCborTag
Cette énumération ne contient aucune énumération et n'est utilisée que pour fournir un accès sécurisé à une balise CBOR.
Les balises CBOR sont des nombres de 64 bits qui sont attachés aux types génériques CBOR pour fournir une signification sémantique supplémentaire. QCborTag peut être construit à partir d'une énumération trouvée dans QCborKnownTags ou directement en fournissant la représentation numérique.
Par exemple, ce qui suit crée un QCborValue contenant un tableau d'octets étiqueté avec un tag 2.
QCborValue(QCborTag(2), QByteArray("\x01\0\0\0\0\0\0\0\0", 9));
Voir aussi QCborKnownTags, QCborStreamWriter::append(QCborTag), QCborStreamReader::isTag(), QCborStreamReader::toTag(), QCborValue::isTag(), et QCborValue::tag().
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.