// Copyright 2022 David Robillard // SPDX-License-Identifier: ISC #include "serd/value.h" #include #include SerdValue serd_nothing(void) { static const SerdValue value = {SERD_NOTHING, {0}}; return value; } SerdValue serd_bool(const bool v) { const SerdValue value = {SERD_BOOL, {v}}; return value; } SerdValue serd_double(const double v) { SerdValue value = {SERD_DOUBLE, {0}}; value.data.as_double = v; return value; } SerdValue serd_float(const float v) { SerdValue value = {SERD_FLOAT, {0}}; value.data.as_float = v; return value; } SerdValue serd_long(const int64_t v) { SerdValue value = {SERD_LONG, {0}}; value.data.as_long = v; return value; } SerdValue serd_int(const int32_t v) { SerdValue value = {SERD_INT, {0}}; value.data.as_int = v; return value; } SerdValue serd_short(const int16_t v) { SerdValue value = {SERD_SHORT, {0}}; value.data.as_short = v; return value; } SerdValue serd_byte(const int8_t v) { SerdValue value = {SERD_BYTE, {0}}; value.data.as_byte = v; return value; } SerdValue serd_ulong(const uint64_t v) { SerdValue value = {SERD_ULONG, {0}}; value.data.as_ulong = v; return value; } SerdValue serd_uint(const uint32_t v) { SerdValue value = {SERD_UINT, {0}}; value.data.as_uint = v; return value; } SerdValue serd_ushort(const uint16_t v) { SerdValue value = {SERD_USHORT, {0}}; value.data.as_ushort = v; return value; } SerdValue serd_ubyte(const uint8_t v) { SerdValue value = {SERD_UBYTE, {0}}; value.data.as_ubyte = v; return value; }