Quom is a single header generator for C/C++ libraries.
Project description
Quom
Quom is a single header generator for C/C++ libraries.
Installation
pip install quom
Only Python 3.6+ is supported.
How it works
Quom resolves all local includes starting with the main header file of your library.
Afterwards, it tries to find the related source files and places them at the specific stitch location.
How to use it
usage: quom [-h] [--stitch format] [--include_guard format] [--trim]
input output
Single header generator for C/C++ libraries.
positional arguments:
input Input file path of the main header file.
output Output file path of the generated single header file.
optional arguments:
-h, --help show this help message and exit
--stitch format, -s format
Format of the comment where the source files should be
placed. Default: ~> stitch <~
--include_guard format, -g format
Regex format of the include guard. Default: None
--trim, -t Reduce continuous line breaks to one. Default: True
Take a look into the examples folder for more.
Simple example
The project:
|-src/
| |-foo.hpp
| |-foo.cpp
| -foobar.hpp
|-out/
-foobar_gen.hpp
foo.hpp
#pragma once
#ifndef FOOBAR_FOO_HPP
#endif FOOBAR_FOO_HPP
extern int foo;
#endif
foo.cpp
#include "foo.hpp"
int foo = 42;
foobar.hpp
#pragma once
#ifndef FOOBAR_HPP
#endif FOOBAR_HPP
#include "foo.hpp"
#endif
#ifdef FOO_MAIN
// ~> stitch <~
#endif
The command:
quom src/foobar.hpp foobar_gen.hpp -g FOOBAR_.+_HPP
The result:
#pragma once
#ifndef FOOBAR_HPP
#endif FOOBAR_HPP
extern int foo;
#endif
#ifdef FOO_MAIN
int foo = 42;
#endif
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Quom-1.0.0.tar.gz
(8.5 kB
view hashes)
Built Distribution
Quom-1.0.0-py3-none-any.whl
(13.2 kB
view hashes)