C API: libjq - troyp/jq GitHub Wiki

TBD

Documentation for the C API is mostly missing, but the source code is a pretty good source of documentation at this point.

Stability:

  • Types and functions whose names start with jq_ and jv_, and constants (including enums) whose names start with JQ_ and JV_, are exported and public, and their implementations are not likely to change in backwards-incompatible ways.

  • All other symbols exported in jq.h, jv.h, or by libjq, are not public, should not be exported, and may change backwards-incompatibly at any time.

  • The jq bytecode is not stable and is subject to change at any time.

  • Interfaces relating to jq's internals (e.g., for disassembly of jq programs) are not stable (e.g., jq might some day compile to native code via LLVM, therefore losing the ability disassemble jq programs as interpreted instructions).