You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
745 B
C

#include "../../object.h"
#define OBJ_TYPE struct ap_object
static struct json_object_field image_layout[] = {
JSON_FIELD_FIXED_STRING( type, "Image", true ),
{
.key = "url",
.offset = 0,
.required = true,
.type = &json_field_string,
},
JSON_FIELD_END,
};
#undef OBJ_TYPE
bool image_writer( struct json_writer* jw, const char* field_name, void* field_data, struct json_object_field* layout_field_data )
{
char** avatar = field_data;
if( !*avatar ) { return false; }
write:
json_write_field_name(jw,field_name);
json_write_pretty_object_layout( jw, image_layout, avatar );
return true;
}
struct json_field_type image_type = {
.reader = json_field_object_composite_reader,
.writer = image_writer,
.layout = image_layout,
};