class QCborArray

The QCborArray class is used to hold an array of CBOR elements. More

Synopsis

Methods

Static functions

Note

This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE

Detailed Description

This class can be used to hold one sequential container in CBOR (an array). CBOR is the Concise Binary Object Representation, a very compact form of binary data encoding that is a superset of JSON. It was created by the IETF Constrained RESTful Environments (CoRE) WG, which has used it in many new RFCs. It is meant to be used alongside the CoAP protocol.

QCborArray is very similar to QVariantList and QJsonArray and its API is almost identical to those two classes. It can also be converted to and from those two, though there may be loss of information in some conversions.

See also

QCborValue QCborMap QJsonArray QList Parsing and displaying CBOR data Serialization Converter Saving and Loading a Game

__init__()

Constructs an empty QCborArray .

__init__(other)
Parameters:

otherQCborArray

Copies the contents of other into this object.

append(value)
Parameters:

valueQCborValue

at(i)
Parameters:

i – int

Return type:

QCborValue

Returns the QCborValue element at position i in the array.

If the array is smaller than i elements, this function returns a QCborValue containing an undefined value. For that reason, it is not possible with this function to tell apart the situation where the array is not large enough from the case where the array starts with an undefined value.

clear()

Empties this array.

See also

isEmpty()

compare(other)
Parameters:

otherQCborArray

Return type:

int

Compares this array and other, comparing each element in sequence, and returns an integer that indicates whether this array should be sorted before (if the result is negative) or after other (if the result is positive). If this function returns 0, the two arrays are equal and contain the same elements.

For more information on CBOR sorting order, see compare() .

See also

compare() compare() operator==()

contains(value)
Parameters:

valueQCborValue

Return type:

bool

Returns true if this array contains an element that is equal to value.

empty()
Return type:

bool

Synonym for isEmpty() . This function is provided for compatibility with generic code that uses the Standard Library API.

Returns true if this array is empty ( size() == 0).

See also

isEmpty() size()

first()
Return type:

QCborValue

Returns the first QCborValue of this array.

If the array is empty, this function returns a QCborValue containing an undefined value. For that reason, it is not possible with this function to tell apart the situation where the array is not large enough from the case where the array ends with an undefined value.

static fromJsonArray(array)
Parameters:

arrayQJsonArray

Return type:

QCborArray

Converts all JSON items found in the array array to CBOR using QCborValue::fromJson(), and returns the CBOR array composed of those elements.

This conversion is lossless, as the CBOR type system is a superset of JSON’s. Moreover, the array returned by this function can be converted back to the original array by using toJsonArray() .

static fromStringList(list)
Parameters:

list – list of strings

Return type:

QCborArray

Returns a QCborArray containing all the strings found in the list list.

static fromVariantList(list)
Parameters:

list – .list of QVariant

Return type:

QCborArray

Converts all the items in the list to CBOR using fromVariant() and returns the array composed of those elements.

Conversion from QVariant is not completely lossless. Please see the documentation in fromVariant() for more information.

insert(i, value)
Parameters:
isEmpty()
Return type:

bool

Returns true if this QCborArray is empty (that is if size() is 0).

See also

size() clear()

last()
Return type:

QCborValue

Returns the last QCborValue of this array.

If the array is empty, this function returns a QCborValue containing an undefined value. For that reason, it is not possible with this function to tell apart the situation where the array is not large enough from the case where the array ends with an undefined value.

__ne__(rhs)
Parameters:

rhsQCborArray

Return type:

bool

Compares lhs and rhs arrays, comparing each element in sequence, and returns true if the two arrays’ contents are different, false otherwise.

For more information on CBOR equality in Qt, see, compare() .

See also

compare() operator==() operator==() operator==() operator

__ne__(rhs)
Parameters:

rhsQCborValue

Return type:

bool

__add__(v)
Parameters:

vQCborValue

Return type:

QCborArray

Returns a new QCborArray containing the same elements as this array, plus v appended as the last element.

See also

operator+=() operator append()

__iadd__(v)
Parameters:

vQCborValue

Return type:

QCborArray

Appends v to this array and returns a reference to this array.

See also

append() insert() operator+() operator

__lt__(rhs)
Parameters:

rhsQCborArray

Return type:

bool

Compares lhs and rhs arrays, comparing each element in sequence, and returns true if lhs array should be sorted before rhs, false otherwise.

For more information on CBOR sorting order, see compare() .

See also

compare() operator==() operator==() operator==() operator!=() operator

__lt__(rhs)
Parameters:

rhsQCborValue

Return type:

bool

__lshift__(v)
Parameters:

vQCborValue

Return type:

QCborArray

Appends v to this array and returns a reference to this array.

See also

append() insert() operator+() operator+=()

__le__(rhs)
Parameters:

rhsQCborArray

Return type:

bool

Compares lhs and rhs arrays, comparing each element in sequence, and returns true if lhs array should be sorted before rhs, or if both arrays contains the same elements, false otherwise.

For more information on CBOR sorting order, see compare() .

See also

compare() operator==() operator==() operator==() operator!=() operator

__le__(rhs)
Parameters:

rhsQCborValue

Return type:

bool

__eq__(rhs)
Parameters:

rhsQCborArray

Return type:

bool

Compares lhs and rhs arrays, comparing each element in sequence, and returns true if both arrays contains the same elements, false otherwise.

For more information on CBOR equality in Qt, see, compare() .

See also

compare() operator==() operator==() operator!=() operator

__eq__(rhs)
Parameters:

rhsQCborValue

Return type:

bool

__gt__(rhs)
Parameters:

rhsQCborArray

Return type:

bool

Compares lhs and rhs arrays, comparing each element in sequence, and returns true if lhs array should be sorted after rhs, false otherwise.

For more information on CBOR sorting order, see compare() .

See also

compare() operator==() operator==() operator==() operator!=() operator>=()

__gt__(rhs)
Parameters:

rhsQCborValue

Return type:

bool

__ge__(rhs)
Parameters:

rhsQCborArray

Return type:

bool

Compares lhs and rhs arrays, comparing each element in sequence, and returns true if lhs array should be sorted after rhs, or if both arrays contains the same elements, false otherwise.

For more information on CBOR sorting order, see compare() .

See also

compare() operator==() operator==() operator==() operator!=() operator>()

__ge__(rhs)
Parameters:

rhsQCborValue

Return type:

bool

operator(i)
Parameters:

i – int

Return type:

QCborValue

Returns the QCborValue element at position i in the array.

If the array is smaller than i elements, this function returns a QCborValue containing an undefined value. For that reason, it is not possible with this function to tell apart the situation where the array is not large enough from the case where the array contains an undefined value at position i.

pop_back()

Synonym for removeLast() . This function is provided for compatibility with generic code that uses the Standard Library API.

Removes the last element of this array. The array must not be empty before the removal

pop_front()

Synonym for removeFirst() . This function is provided for compatibility with generic code that uses the Standard Library API.

Removes the first element of this array. The array must not be empty before the removal

prepend(value)
Parameters:

valueQCborValue

push_back(t)
Parameters:

tQCborValue

Synonym for append() . This function is provided for compatibility with generic code that uses the Standard Library API.

Appends the element t to this array.

push_front(t)
Parameters:

tQCborValue

Synonym for prepend() . This function is provided for compatibility with generic code that uses the Standard Library API.

Prepends the element t to this array.

removeAt(i)
Parameters:

i – int

Removes the item at position i from the array. The array must have more than i elements before the removal.

removeFirst()

Removes the first item in the array, making the second element become the first. The array must not be empty before this call.

removeLast()

Removes the last item in the array. The array must not be empty before this call.

size()
Return type:

int

Returns the size of this array.

See also

isEmpty()

swap(other)
Parameters:

otherQCborArray

Swaps the contents of this object and other.

takeAt(i)
Parameters:

i – int

Return type:

QCborValue

Removes the item at position i from the array and returns it. The array must have more than i elements before the removal.

takeFirst()
Return type:

QCborValue

Removes the first item in the array and returns it, making the second element become the first. The array must not be empty before this call.

takeLast()
Return type:

QCborValue

Removes the last item in the array and returns it. The array must not be empty before this call.

toCborValue()
Return type:

QCborValue

Explicitly construcuts a QCborValue object that represents this array. This function is usually not necessary since QCborValue has a constructor for QCborArray , so the conversion is implicit.

Converting QCborArray to QCborValue allows it to be used in any context where QCborValues can be used, including as items in QCborArrays and as keys and mapped types in QCborMap . Converting an array to QCborValue allows access to toCbor() .

See also

QCborValue(const QCborArray &)

toJsonArray()
Return type:

QJsonArray

Recursively converts every QCborValue element in this array to JSON using toJsonValue() and returns the corresponding QJsonArray composed of those elements.

Please note that CBOR contains a richer and wider type set than JSON, so some information may be lost in this conversion. For more details on what conversions are applied, see toJsonValue() .

toVariantList()
Return type:

.list of QVariant

Recursively converts each QCborValue in this array using toVariant() and returns the QVariantList composed of the converted items.

Conversion to QVariant is not completely lossless. Please see the documentation in toVariant() for more information.