MKCHDR(1)

πŸ“¦ version 1.3.1, in debian bookworm, ubuntu jammy, ubuntu noble

✨ MKCHDR β€” the manual page, but make it cute ✨

okay so bestie, welcome to mkchdr from the General Commands Manual πŸ’– this is the lil tool that creates a C header file from a type table and honestly? iconic behaviour.


🌸 NAME 🌸

mkchdr β€” creates a C header file from a type table πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

mkchdr <tbl-file> [output-file]

that's it. that's the whole vibe. two args, one of them optional, main character energy fr fr ✨


πŸ¦‹ DESCRIPTION πŸ¦‹

so here's the tea, bestie πŸ“

mkchdr will generate a C header file from the given type table. The C data structures get written to the given output file. And if you don't hand it an output file? No worries, babe β€” the C header just goes straight to stdout. πŸ’«

The generated C data structure is the value representation that the table driven encoder expects (and that the decoder returns) for the type definitions in the given type table. πŸ“

Now, important detail so you don't get it twisted: the table driven encoder and decoder, etc. routines do not use the generated header. Nope! They treat the data in a generic way. The generated header file is purely there to save you the hassle of dealing with ASN.1 values in that same generic way. Instead, you get properly named structs and field names. 🏷️✨

And like, technically? You do not need to use mkchdr to use the table driven encoders etc. β€” but it is recommended. Consider it a glow-up for your code, iykyk. πŸ‘‘


🧚 FILES 🧚

  • snacc/tbl-tools/mkchdr/ β€” Source code for the mkchdr program πŸ—‚οΈ

πŸ’€ BUGS πŸ’€

There is no means of customizing the generated data structure. That's it. That's the whole bug. Take what you get, bestie 😭 no customisation options, no sliders, no nothing.


πŸ‘‘ COPYING πŸ‘‘

Copyright (c) 1993 Mike Sample and the University of British Columbia

Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.

Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.

fr fr read the license before you go copying, bestie β€” it's giving "share the receipts" energy 🫢

🌈 AUTHOR 🌈

Mike Sample <msample@cs.ubc.ca>, University of British Columbia πŸ’œ


⭐ ACKNOWLEDGEMENTS ⭐

This work was made possible by grants from the Canadian Institute for Telecommunications Research (CITR) and Natural Sciences and Engineering Research Council of Canada (NSERC). πŸŽ€ funding the vibes since forever, we love to see it πŸ’–


and that's a wrap on this page of the General Commands Manual, dated 11 July 1993 πŸ—“οΈβœ¨ (yes bestie, MKCHDR(1), that one). slay, go generate some headers πŸ’…πŸŒΈ

πŸ“¦ where this page comes from