xref: /freebsd/contrib/libcbor/src/cbor/internal/loaders.h (revision 5d3e7166f6a0187fa3f8831b16a06bd9955c21ff)
110ff414cSEd Maste /*
210ff414cSEd Maste  * Copyright (c) 2014-2020 Pavel Kalvoda <me@pavelkalvoda.com>
310ff414cSEd Maste  *
410ff414cSEd Maste  * libcbor is free software; you can redistribute it and/or modify
510ff414cSEd Maste  * it under the terms of the MIT license. See LICENSE for details.
610ff414cSEd Maste  */
710ff414cSEd Maste 
810ff414cSEd Maste #ifndef LIBCBOR_LOADERS_H
910ff414cSEd Maste #define LIBCBOR_LOADERS_H
1010ff414cSEd Maste 
1110ff414cSEd Maste #include "cbor/common.h"
1210ff414cSEd Maste 
1310ff414cSEd Maste #ifdef __cplusplus
1410ff414cSEd Maste extern "C" {
1510ff414cSEd Maste #endif
1610ff414cSEd Maste 
1710ff414cSEd Maste /* Read the given uint from the given location, no questions asked */
18*5d3e7166SEd Maste _CBOR_NODISCARD
1910ff414cSEd Maste uint8_t _cbor_load_uint8(const unsigned char *source);
2010ff414cSEd Maste 
21*5d3e7166SEd Maste _CBOR_NODISCARD
2210ff414cSEd Maste uint16_t _cbor_load_uint16(const unsigned char *source);
2310ff414cSEd Maste 
24*5d3e7166SEd Maste _CBOR_NODISCARD
2510ff414cSEd Maste uint32_t _cbor_load_uint32(const unsigned char *source);
2610ff414cSEd Maste 
27*5d3e7166SEd Maste _CBOR_NODISCARD
2810ff414cSEd Maste uint64_t _cbor_load_uint64(const unsigned char *source);
2910ff414cSEd Maste 
30*5d3e7166SEd Maste _CBOR_NODISCARD
31*5d3e7166SEd Maste float _cbor_load_half(cbor_data source);
3210ff414cSEd Maste 
33*5d3e7166SEd Maste _CBOR_NODISCARD
3410ff414cSEd Maste float _cbor_load_float(cbor_data source);
3510ff414cSEd Maste 
36*5d3e7166SEd Maste _CBOR_NODISCARD
3710ff414cSEd Maste double _cbor_load_double(cbor_data source);
3810ff414cSEd Maste 
3910ff414cSEd Maste #ifdef __cplusplus
4010ff414cSEd Maste }
4110ff414cSEd Maste #endif
4210ff414cSEd Maste 
4310ff414cSEd Maste #endif  // LIBCBOR_LOADERS_H
44