Пример #1
0
struct ast_json *ast_json_vpack(char const *format, va_list ap)
{
	struct ast_json *r = NULL;
	if (format) {
		r = (struct ast_json *)json_vpack_ex(NULL, 0, format, ap);
	}
	return r;
}
Пример #2
0
la_codec_value_t *la_codec_pack_ex(la_codec_error_t *error, size_t flags, const char *fmt, ...)
{
    la_codec_value_t *ret;
    va_list ap;
    va_start(ap, fmt);
    ret = (la_codec_value_t *) json_vpack_ex((json_error_t *) error, flags, fmt, ap);
    va_end(ap);
    return ret;
}
Пример #3
0
la_codec_value_t *la_codec_pack(const char *fmt, ...)
{
    la_codec_value_t *ret;
    va_list ap;
    va_start(ap, fmt);
    ret = (la_codec_value_t *) json_vpack_ex(NULL, 0, fmt, ap);
    va_end(ap);
    return ret;
}
Пример #4
0
json_t *json_pack(const char *fmt, ...)
{
    json_t *value;
    va_list ap;

    va_start(ap, fmt);
    value = json_vpack_ex(NULL, 0, fmt, ap);
    va_end(ap);

    return value;
}
Пример #5
0
json_t *json_pack_ex(json_error_t *error, size_t flags, const char *fmt, ...)
{
    json_t *value;
    va_list ap;

    va_start(ap, fmt);
    value = json_vpack_ex(error, flags, fmt, ap);
    va_end(ap);

    return value;
}
Пример #6
0
struct ast_json *ast_json_vpack(char const *format, va_list ap)
{
	json_error_t error;
	struct ast_json *r = NULL;
	if (format) {
		r = (struct ast_json *)json_vpack_ex(&error, 0, format, ap);
		if (!r && !ast_strlen_zero(error.text)) {
			ast_log(LOG_ERROR,
				"Error building JSON from '%s': %s.\n",
				format, error.text);
		}
	}
	return r;
}
Пример #7
0
flux_future_t *flux_event_publish_pack (flux_t *h,
                                        const char *topic, int flags,
                                        const char *fmt, ...)
{
    va_list ap;
    json_t *o;
    char *json_str;
    flux_future_t *f;

    if (!h || !topic || !fmt || (flags & ~(FLUX_MSGFLAG_PRIVATE)) != 0) {
        errno = EINVAL;
        return NULL;
    }
    va_start (ap, fmt);
    o = json_vpack_ex (NULL, 0, fmt, ap);
    va_end (ap);
    if (!o) {
        errno = EINVAL;
        return NULL;
    }
    if (!(json_str = json_dumps (o, JSON_COMPACT))) {
        json_decref (o);
        errno = ENOMEM;
        return NULL;
    }
    json_decref (o);
    if (!(f = wrap_event_rpc (h,  topic, flags,
                              json_str, strlen (json_str) + 1))) {
        int saved_errno = errno;
        free (json_str);
        errno = saved_errno;
        return NULL;
    }
    free (json_str);
    return f;
}
Пример #8
0
la_codec_value_t *la_codec_vpack_ex(la_codec_error_t *error, size_t flags, const char *fmt, va_list ap)
{
    return (la_codec_value_t *) json_vpack_ex((json_error_t *) error, flags, fmt, ap);
}