 |
Flutter Linux Embedder
|
|
Go to the documentation of this file.
106 g_string_append_printf(
buffer,
"%" G_GINT64_FORMAT,
value);
115 for (
int i =
buffer->len - 1; i >= 0; i--) {
117 if (
buffer->str[i] ==
'.') {
118 zero_count = zero_count == 0 ? 0 : zero_count - 1;
121 if (
buffer->str[i] !=
'0') {
130 switch (
value->type) {
132 g_string_append(
buffer,
"null");
136 g_string_append(
buffer,
"true");
138 g_string_append(
buffer,
"false");
152 g_string_append(
buffer,
"[");
156 g_string_append(
buffer,
", ");
160 g_string_append(
buffer,
"]");
164 g_string_append(
buffer,
"[");
168 g_string_append(
buffer,
", ");
172 g_string_append(
buffer,
"]");
176 g_string_append(
buffer,
"[");
180 g_string_append(
buffer,
", ");
184 g_string_append(
buffer,
"]");
188 g_string_append(
buffer,
"[");
192 g_string_append(
buffer,
", ");
196 g_string_append(
buffer,
"]");
200 g_string_append(
buffer,
"[");
204 g_string_append(
buffer,
", ");
208 g_string_append(
buffer,
"]");
212 g_string_append(
buffer,
"[");
215 g_string_append(
buffer,
", ");
219 g_string_append(
buffer,
"]");
223 g_string_append(
buffer,
"{");
226 g_string_append(
buffer,
", ");
229 g_string_append(
buffer,
": ");
232 g_string_append(
buffer,
"}");
236 g_string_append_printf(
buffer,
"<unknown type %d>",
value->type);
248 return reinterpret_cast<FlValue*
>(
self);
255 return reinterpret_cast<FlValue*
>(
self);
262 return reinterpret_cast<FlValue*
>(
self);
269 return reinterpret_cast<FlValue*
>(
self);
273 size_t value_length) {
277 value_length == 0 ? g_strdup(
"") : g_strndup(
value, value_length);
278 return reinterpret_cast<FlValue*
>(
self);
282 size_t data_length) {
286 self->values =
static_cast<uint8_t*
>(g_malloc(
sizeof(uint8_t) * data_length));
287 memcpy(
self->values, data,
sizeof(uint8_t) * data_length);
288 return reinterpret_cast<FlValue*
>(
self);
294 static_cast<const uint8_t*
>(g_bytes_get_data(data, &length));
299 size_t data_length) {
303 self->values =
static_cast<int32_t*
>(g_malloc(
sizeof(int32_t) * data_length));
304 memcpy(
self->values, data,
sizeof(int32_t) * data_length);
305 return reinterpret_cast<FlValue*
>(
self);
309 size_t data_length) {
313 self->values =
static_cast<int64_t*
>(g_malloc(
sizeof(int64_t) * data_length));
314 memcpy(
self->values, data,
sizeof(int64_t) * data_length);
315 return reinterpret_cast<FlValue*
>(
self);
319 size_t data_length) {
323 self->values =
static_cast<float*
>(g_malloc(
sizeof(
float) * data_length));
324 memcpy(
self->values, data,
sizeof(
float) * data_length);
325 return reinterpret_cast<FlValue*
>(
self);
329 size_t data_length) {
333 self->values =
static_cast<double*
>(g_malloc(
sizeof(
double) * data_length));
334 memcpy(
self->values, data,
sizeof(
double) * data_length);
335 return reinterpret_cast<FlValue*
>(
self);
342 return reinterpret_cast<FlValue*
>(
self);
346 const gchar*
const* str_array) {
347 g_return_val_if_fail(str_array !=
nullptr,
nullptr);
349 for (
int i = 0; str_array[i] !=
nullptr; i++) {
360 return reinterpret_cast<FlValue*
>(
self);
364 g_return_val_if_fail(
self !=
nullptr,
nullptr);
370 g_return_if_fail(
self !=
nullptr);
371 g_return_if_fail(
self->ref_count > 0);
373 if (
self->ref_count != 0) {
377 switch (
self->type) {
410 g_ptr_array_unref(v->
values);
415 g_ptr_array_unref(v->
keys);
416 g_ptr_array_unref(v->
values);
434 g_return_val_if_fail(a !=
nullptr,
false);
435 g_return_val_if_fail(b !=
nullptr,
false);
437 if (a->type != b->type) {
462 if (values_a[i] != values_b[i]) {
475 if (values_a[i] != values_b[i]) {
488 if (values_a[i] != values_b[i]) {
501 if (values_a[i] != values_b[i]) {
514 if (values_a[i] != values_b[i]) {
539 if (value_b ==
nullptr) {
553 g_return_if_fail(
self !=
nullptr);
555 g_return_if_fail(
value !=
nullptr);
561 g_return_if_fail(
self !=
nullptr);
563 g_return_if_fail(
value !=
nullptr);
570 g_return_if_fail(
self !=
nullptr);
572 g_return_if_fail(key !=
nullptr);
573 g_return_if_fail(
value !=
nullptr);
581 g_return_if_fail(
self !=
nullptr);
583 g_return_if_fail(key !=
nullptr);
584 g_return_if_fail(
value !=
nullptr);
589 g_ptr_array_add(v->
keys, key);
593 v->
keys->pdata[index] = key;
602 g_return_if_fail(
self !=
nullptr);
604 g_return_if_fail(key !=
nullptr);
605 g_return_if_fail(
value !=
nullptr);
613 g_return_if_fail(
self !=
nullptr);
615 g_return_if_fail(key !=
nullptr);
616 g_return_if_fail(
value !=
nullptr);
622 g_return_val_if_fail(
self !=
nullptr, FALSE);
629 g_return_val_if_fail(
self !=
nullptr, 0);
636 g_return_val_if_fail(
self !=
nullptr, 0.0);
643 g_return_val_if_fail(
self !=
nullptr,
nullptr);
650 g_return_val_if_fail(
self !=
nullptr,
nullptr);
657 g_return_val_if_fail(
self !=
nullptr,
nullptr);
664 g_return_val_if_fail(
self !=
nullptr,
nullptr);
671 g_return_val_if_fail(
self !=
nullptr,
nullptr);
678 g_return_val_if_fail(
self !=
nullptr,
nullptr);
685 g_return_val_if_fail(
self !=
nullptr, 0);
695 switch (
self->type) {
736 g_return_val_if_fail(
self !=
nullptr,
nullptr);
740 return static_cast<FlValue*
>(g_ptr_array_index(v->
values, index));
744 g_return_val_if_fail(
self !=
nullptr,
nullptr);
748 return static_cast<FlValue*
>(g_ptr_array_index(v->
keys, index));
752 g_return_val_if_fail(
self !=
nullptr,
nullptr);
756 return static_cast<FlValue*
>(g_ptr_array_index(v->
values, index));
760 g_return_val_if_fail(
self !=
nullptr,
nullptr);
772 g_return_val_if_fail(
self !=
nullptr,
nullptr);
782 GString*
buffer = g_string_new(
"");
784 return g_string_free(
buffer, FALSE);
const G_MODULE_EXPORT int32_t * fl_value_get_int32_list(FlValue *self)
@ FL_VALUE_TYPE_UINT8_LIST
G_MODULE_EXPORT FlValue * fl_value_new_string_sized(const gchar *value, size_t value_length)
static void int_to_string(int64_t value, GString *buffer)
static FlValue * fl_value_new(FlValueType type, size_t size)
G_MODULE_EXPORT void fl_value_set_string_take(FlValue *self, const gchar *key, FlValue *value)
static void fl_value_destroy(gpointer value)
G_MODULE_EXPORT FlValue * fl_value_new_list()
G_MODULE_EXPORT FlValue * fl_value_new_float32_list(const float *data, size_t data_length)
const G_MODULE_EXPORT double * fl_value_get_float_list(FlValue *self)
G_MODULE_EXPORT FlValue * fl_value_new_bool(bool value)
typedefG_BEGIN_DECLS struct _FlValue FlValue
G_MODULE_EXPORT void fl_value_set_take(FlValue *self, FlValue *key, FlValue *value)
G_MODULE_EXPORT FlValue * fl_value_new_null()
G_MODULE_EXPORT bool fl_value_get_bool(FlValue *self)
const G_MODULE_EXPORT uint8_t * fl_value_get_uint8_list(FlValue *self)
G_MODULE_EXPORT void fl_value_set(FlValue *self, FlValue *key, FlValue *value)
G_MODULE_EXPORT FlValue * fl_value_lookup_string(FlValue *self, const gchar *key)
G_MODULE_EXPORT FlValue * fl_value_new_int(int64_t value)
const G_MODULE_EXPORT gchar * fl_value_get_string(FlValue *self)
const G_MODULE_EXPORT float * fl_value_get_float32_list(FlValue *self)
static void value_to_string(FlValue *value, GString *buffer)
G_MODULE_EXPORT int64_t fl_value_get_int(FlValue *self)
G_MODULE_EXPORT void fl_value_unref(FlValue *self)
G_MODULE_EXPORT FlValue * fl_value_ref(FlValue *self)
G_MODULE_EXPORT FlValue * fl_value_new_map()
G_MODULE_EXPORT FlValueType fl_value_get_type(FlValue *self)
G_MODULE_EXPORT FlValue * fl_value_get_list_value(FlValue *self, size_t index)
@ FL_VALUE_TYPE_FLOAT32_LIST
G_MODULE_EXPORT FlValue * fl_value_new_float_list(const double *data, size_t data_length)
static void float_to_string(double value, GString *buffer)
G_MODULE_EXPORT FlValue * fl_value_new_int32_list(const int32_t *data, size_t data_length)
G_MODULE_EXPORT double fl_value_get_float(FlValue *self)
G_MODULE_EXPORT void fl_value_append_take(FlValue *self, FlValue *value)
G_MODULE_EXPORT size_t fl_value_get_length(FlValue *self)
@ FL_VALUE_TYPE_INT64_LIST
G_MODULE_EXPORT bool fl_value_equal(FlValue *a, FlValue *b)
G_MODULE_EXPORT void fl_value_set_string(FlValue *self, const gchar *key, FlValue *value)
G_MODULE_EXPORT FlValue * fl_value_new_uint8_list_from_bytes(GBytes *data)
G_MODULE_EXPORT FlValue * fl_value_new_int64_list(const int64_t *data, size_t data_length)
G_MODULE_EXPORT FlValue * fl_value_new_list_from_strv(const gchar *const *str_array)
@ FL_VALUE_TYPE_FLOAT_LIST
G_MODULE_EXPORT FlValue * fl_value_new_uint8_list(const uint8_t *data, size_t data_length)
G_MODULE_EXPORT void fl_value_append(FlValue *self, FlValue *value)
static const uint8_t buffer[]
@ FL_VALUE_TYPE_INT32_LIST
G_MODULE_EXPORT FlValue * fl_value_new_float(double value)
static ssize_t fl_value_lookup_index(FlValue *self, FlValue *key)
G_MODULE_EXPORT FlValue * fl_value_lookup(FlValue *self, FlValue *key)
G_MODULE_EXPORT FlValue * fl_value_get_map_key(FlValue *self, size_t index)
const G_MODULE_EXPORT int64_t * fl_value_get_int64_list(FlValue *self)
G_MODULE_EXPORT FlValue * fl_value_get_map_value(FlValue *self, size_t index)
G_MODULE_EXPORT gchar * fl_value_to_string(FlValue *value)
G_MODULE_EXPORT FlValue * fl_value_new_string(const gchar *value)