diff --git a/README.md b/README.md new file mode 100644 index 0000000..b4ce482 --- /dev/null +++ b/README.md @@ -0,0 +1,48 @@ +biner +==== + +The Simplest Interface Description Language for Binary Format + +## features + +- provides readable way to express binary format +- generates pack/unpack function for C from biner file + +## requirements + +- flex +- bison +- cmake +- gcc (generated codes uses GCC extension) + +## install + +1. add this repo to yours as submodule +2. write the following code on your CMakeLists.txt + +```CMake +add_subdirectory(path/to/biner) +target_biner_sources(target-name + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/generated + SOURCES + file1.biner + file2.biner +) +``` + +Now `file1.biner.h` and `file2.biner.h` are generated under `${CMAKE_CURRENT_BINARY_DIR}/generated` directory. + +You can get an example from `test` directory. + +## license + +What The Fuck You Want To Public License + +## author + +falsycat + +- [portfolio](https://falsy.cat) +- [twitter](https://twitter.com/falsycat) + +If you find something, please contact me at email address written in my portfolio. diff --git a/TODO.TXT b/TODO.TXT deleted file mode 100644 index e42a658..0000000 --- a/TODO.TXT +++ /dev/null @@ -1,16 +0,0 @@ -X parser -X error handling (compiler message) -X user-defined type resolving -X make enum for generic types -X constant resolving in expression -X check if an expression is static/dynamic -X enum support -X constant support -X conditional switching support -X union support -X C transpiler for unpacking -X C transpiler for packing -X setup tests -X add bitmanip operators -X handling of overflown or negative expression - release 1.0.0