示例#1
0
TRI_json_t* TRI_SortArrayJson (TRI_json_t* array) {
    TRI_ASSERT(array != nullptr);
    TRI_ASSERT(array->_type == TRI_JSON_ARRAY);

    size_t const n = TRI_LengthVector(&array->_value._objects);

    if (n > 1) {
        // only sort if more than one value in array
        qsort(TRI_BeginVector(&array->_value._objects), n, sizeof(TRI_json_t), &CompareJson);
    }

    return array;
}
示例#2
0
TRI_json_t* TRI_SortListJson (TRI_json_t* const list) {
  size_t n;

  assert(list);
  assert(list->_type == TRI_JSON_LIST);

  n = list->_value._objects._length;
  if (n > 1) {
    // only sort if more than one value in list
    SortListJson((TRI_json_t*) TRI_BeginVector(&list->_value._objects), 
                 (TRI_json_t*) TRI_EndVector(&list->_value._objects));
  }

  return list;
}