Language

Package: uthash @ 2.1.0

Synopsis

Hash tables, lists, and other data structures implemented as C macros

Description

uthash implements a hash table and a few other basic data structures as C preprocessor macros. It aims to be minimalistic and efficient: it's around 1,000 lines of code which, being macros, inline automatically.

Unlike function calls with fixed prototypes, macros operate on untyped arguments. Thus, they are able to work with any type of structure and key. Any C structure can be stored in a hash table by adding UT_hash_handle to the structure and choosing one or more fields to act as the key.

Home page
https://troydhanson.github.io/uthash/
Location
License

Derivations

SystemTargetDerivationBuild status
x86_64-linux/gnu/store/02vp53gb8i0w4z9wnps2shkykqxp06pz-uthash-2.1.0.drv
x86_64-linuxxtensa-ath9k-elf/gnu/store/n238bjga0s210gczqr1sm970wdvg8mp8-uthash-2.1.0.drv
    x86_64-linuxx86_64-w64-mingw32/gnu/store/w7w4irbxgvv34rlz7ssqxldsn5wjwgb5-uthash-2.1.0.drv
    x86_64-linuxx86_64-pc-gnu/gnu/store/8izhm7wm7jm1mlki81bxlja7nd7sd7q9-uthash-2.1.0.drv
    x86_64-linuxx86_64-linux-gnux32/gnu/store/3sggmr246bchf9mbnc7n7clq57h56jms-uthash-2.1.0.drv
      x86_64-linuxriscv64-linux-gnu/gnu/store/jfgfzwk2pg4y8pxdbiixkim004ivyyg1-uthash-2.1.0.drv
      x86_64-linuxpowerpc-linux-gnu/gnu/store/xj8dbrw3akc58dy7p55rhw7p75wrjmaw-uthash-2.1.0.drv
        x86_64-linuxpowerpc64-linux-gnu/gnu/store/bfcjfp0dxjhv80d12pkyssdx9wzxqavb-uthash-2.1.0.drv
          x86_64-linuxpowerpc64le-linux-gnu/gnu/store/m83pkmk2p5ipvpaw9r2pl4kqymfpgi6k-uthash-2.1.0.drv
          x86_64-linuxor1k-elf/gnu/store/i4f419xwsihhhdmlpw8s54nw6274y9nv-uthash-2.1.0.drv
            x86_64-linuxmips64el-linux-gnu/gnu/store/wzrgmyhy2rxfr6vpvj9r0rv3yg9vyx72-uthash-2.1.0.drv
              x86_64-linuxloongarch64-linux-gnu/gnu/store/vh9cqyy9nmw0rizm4fs6prsbdjck82ra-uthash-2.1.0.drv
              x86_64-linuxi686-w64-mingw32/gnu/store/b8r43ll921pw3vrkgq3hkkfnwm1zdc1k-uthash-2.1.0.drv
                x86_64-linuxi586-pc-gnu/gnu/store/bxwl0ihmdw6zyaszr5n1qi4m6034kabg-uthash-2.1.0.drv
                x86_64-linuxavr/gnu/store/jbdqmbrxj989mic77mfcwbmvqsjrhzvr-uthash-2.1.0.drv
                  x86_64-linuxarm-linux-gnueabihf/gnu/store/gjgl5kj2i32h20wzy1ahjck5i4qdibq3-uthash-2.1.0.drv
                  x86_64-linuxaarch64-linux-gnu/gnu/store/s15961whdl6am3pjkf101s3bb8fypazf-uthash-2.1.0.drv
                  x86_64-gnu/gnu/store/k7x1r3w8pnc63rj0f2qmrn21drvc582z-uthash-2.1.0.drv
                    riscv64-linux/gnu/store/g93z0kqf5w94ci19vssbzki40k0kdmsn-uthash-2.1.0.drv
                    powerpc-linux/gnu/store/3saplh9gpjsvw9r88dkqik3z3swn0h9s-uthash-2.1.0.drv
                      powerpc64le-linux/gnu/store/xbwhpbmihiihms541aa6y4yxy51zyaw7-uthash-2.1.0.drv
                      mips64el-linux/gnu/store/72qs6szk4darr50ixfss1l2ddhp7if0h-uthash-2.1.0.drv
                        i686-linux/gnu/store/1d0php4dk19yclnkyzbjakimhgjhfinc-uthash-2.1.0.drv
                        i586-gnu/gnu/store/lf5d1jq4sghvmrxi5wyjn7vh1zazvnkm-uthash-2.1.0.drv
                          armhf-linux/gnu/store/bs146jqf22wgqicbw0ylifljvdas5ysn-uthash-2.1.0.drv
                          aarch64-linux/gnu/store/g57rw9kkl83s2920i03vyqgm68a390rr-uthash-2.1.0.drv

                          Lint warnings

                          LinterMessageLocation
                          compiler-for-target

                          Check that cross-compilers are used when cross-compiling

                          'CC' should be set to '(cc-for-target)' instead of 'gcc'
                          • gnu/packages/datastructures.scm (line: 264, column: 5)
                          optional-tests

                          Make sure tests are only run when requested

                          the 'check' phase should respect #:tests?
                          • gnu/packages/datastructures.scm (line: 264, column: 5)