skalibs

Mirror/fork of https://skarnet.org/software/skalibs/
git clone https://ccx.te2000.cz/git/skalibs
Log | Files | Refs | README | LICENSE

bits-template (3067B)


      1 
      2 extern void uint@BITS@_pack (char *, uint@BITS@_t) ;
      3 extern void uint@BITS@_pack_big (char *, uint@BITS@_t) ;
      4 extern void uint@BITS@_unpack (char const *, uint@BITS@_t *) ;
      5 extern void uint@BITS@_unpack_big (char const *, uint@BITS@_t *) ;
      6 extern uint@BITS@_t uint@BITS@_bswap (uint@BITS@_t) ;
      7 extern void uint@BITS@_bswapp (uint@BITS@_t *) ;
      8 extern void uint@BITS@_bswapn (uint@BITS@_t *, size_t) ;
      9 
     10 #define UINT@BITS@_FMT @DFMT@
     11 #define UINT@BITS@_OFMT @OFMT@
     12 #define UINT@BITS@_XFMT @XFMT@
     13 #define UINT@BITS@_BFMT @BFMT@
     14 
     15 #define uint@BITS@_fmt_base uint64_fmt_generic
     16 #define uint@BITS@0_fmt_base uint640_fmt_generic
     17 #define uint@BITS@_fmt(s, u) uint@BITS@_fmt_base(s, (u), 10)
     18 #define uint@BITS@0_fmt(s, u, n) uint@BITS@0_fmt_base(s, u, (n), 10)
     19 #define uint@BITS@_ofmt(s, o) uint@BITS@_fmt_base(s, (o), 8)
     20 #define uint@BITS@0_ofmt(s, o, n) uint@BITS@0_fmt_base(s, o, (n), 8)
     21 #define uint@BITS@_xfmt(s, x) uint@BITS@_fmt_base(s, (x), 16)
     22 #define uint@BITS@0_xfmt(s, x, n) uint@BITS@0_fmt_base(s, x, (n), 16)
     23 #define uint@BITS@_bfmt(s, b) uint@BITS@_fmt_base(s, (b), 2)
     24 #define uint@BITS@0_bfmt(s, b, n) uint@BITS@0_fmt_base(s, b, (n), 2)
     25 
     26 extern size_t uint@BITS@_fmtlist (char *, uint@BITS@_t const *, size_t) ;
     27 
     28 extern size_t uint@BITS@_scan_base (char const *, uint@BITS@_t *, uint8_t) ;
     29 extern size_t uint@BITS@0_scan_base (char const *, uint@BITS@_t *, uint8_t) ;
     30 
     31 #define uint@BITS@_scan(s, u) uint@BITS@_scan_base(s, (u), 10)
     32 #define uint@BITS@0_scan(s, u) uint@BITS@0_scan_base(s, (u), 10)
     33 #define uint@BITS@_oscan(s, u) uint@BITS@_scan_base(s, (u), 8)
     34 #define uint@BITS@0_oscan(s, u) uint@BITS@0_scan_base(s, (u), 8)
     35 #define uint@BITS@_xscan(s, u) uint@BITS@_scan_base(s, (u), 16)
     36 #define uint@BITS@0_xscan(s, u) uint@BITS@0_scan_base(s, (u), 16)
     37 #define uint@BITS@_bscan(s, u) uint@BITS@_scan_base(s, (u), 2)
     38 #define uint@BITS@0_bscan(s, u) uint@BITS@0_scan_base(s, (u), 2)
     39 
     40 extern size_t uint@BITS@_scanlist (uint@BITS@_t *, size_t, char const *, size_t *) ;
     41 
     42 #define int@BITS@_fmt_base int64_fmt_generic
     43 #define int@BITS@_fmt(s, u) int@BITS@_fmt_base(s, (u), 10)
     44 #define int@BITS@_ofmt(s, o) int@BITS@_fmt_base(s, (o), 8)
     45 #define int@BITS@_xfmt(s, x) int@BITS@_fmt_base(s, (x), 16)
     46 #define int@BITS@_bfmt(s, b) int@BITS@_fmt_base(s, (b), 2)
     47 
     48 extern size_t int@BITS@_fmtlist (char *, int@BITS@_t const *, size_t) ;
     49 
     50 extern size_t int@BITS@_scan_base (char const *, int@BITS@_t *, uint8_t) ;
     51 extern size_t int@BITS@0_scan_base (char const *, int@BITS@_t *, uint8_t) ;
     52 
     53 #define int@BITS@_scan(s, u) int@BITS@_scan_base(s, (u), 10)
     54 #define int@BITS@0_scan(s, u) int@BITS@0_scan_base(s, (u), 10)
     55 #define int@BITS@_oscan(s, u) int@BITS@_scan_base(s, (u), 8)
     56 #define int@BITS@0_oscan(s, u) int@BITS@0_scan_base(s, (u), 8)
     57 #define int@BITS@_xscan(s, u) int@BITS@_scan_base(s, (u), 16)
     58 #define int@BITS@0_xscan(s, u) int@BITS@0_scan_base(s, (u), 16)
     59 #define int@BITS@_bscan(s, u) int@BITS@_scan_base(s, (u), 2)
     60 #define int@BITS@0_bscan(s, u) int@BITS@0_scan_base(s, (u), 2)
     61 
     62 extern size_t int@BITS@_scanlist (int@BITS@_t *, size_t, char const *, size_t *) ;