Skip to content

larskarlitski/c-variant

 
 

Repository files navigation

c-variant - Standalone GVariant Implementation in Standard ISO-C11

DETAILS:
        https://github.com/c-util/c-variant

BUG REPORTS:
        https://github.com/c-util/c-variant/issues

GIT:
        git@github.com:c-util/c-variant.git
        https://github.com/c-util/c-variant.git

GITWEB:
        https://github.com/c-util/c-variant

LICENSE:
        LGPLv2.1+ (LICENSE.LGPL2.1)
        See COPYING for details.

ABOUT:
        The c-variant project is a stand-alone implementation of the GVariant
        specification, implemented in ISO-C11 with only very limited
        dependencies on GCC/llvm compiler extensions. The library is aimed for
        native use in C wherever GVariants need to be streamed. It is not aimed
        for language bindings, nor recommended for use in native GVariant type
        systems. It does not place any restrictions, though. You are free to
        use it in any situation where you have to deal with GVariants.

        GVariant is a specification for a type-system, including its
        serialization format. It has its origins in DBus and glib, but is
        completely independent of those. GVariant was designed for native use
        in C. Large parts of its type-system can be represented natively in C
        (including compound types via 'struct', real nesting via void
        pointers, ...). However, GVariant extends this system with dynamically
        sized arrays, strings, and true nesting. For more details, you are
        recommended to read an introduction into GVariant, or dive directly
        into the specification.

        This library is optimized for marshaling/demarshaling of pakets or
        files that are serialized as GVariants. It has a very convenient API to
        (de-)serialize compound types from/to native types in C.
        If you rather want a type-system built on GVariant, you are recommended
        to look at the glib-2 implementation, including GObject.

About

Standalone GVariant Implementation in Standard ISO-C11

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 96.2%
  • Makefile 1.9%
  • M4 1.6%
  • Other 0.3%