Skip to content

Commit

Permalink
Merge branch 'main' of github.com:mas-bandwidth/serialize
Browse files Browse the repository at this point in the history
  • Loading branch information
gafferongames committed Dec 24, 2023
2 parents ba4e2e5 + bc5eb93 commit 53d6a1f
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 7 deletions.
8 changes: 4 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: CI
name: CI

on: [push, pull_request]

Expand Down Expand Up @@ -39,8 +39,8 @@ jobs:
if: runner.os == 'Windows'
run: |
premake5 vs2019
msbuild reliable.sln -nologo -m -t:Clean -p:Configuration=${{ matrix.configuration }}
msbuild reliable.sln -nologo -m -p:Configuration=${{ matrix.configuration }}
msbuild serialize.sln -nologo -m -t:Clean -p:Configuration=${{ matrix.configuration }}
msbuild serialize.sln -nologo -m -p:Configuration=${{ matrix.configuration }}
- name: Test (vs2019)
if: runner.os == 'Windows'
run: "& ./bin/${{ matrix.configuration }}/test.exe"
run: "& ./bin/${{ matrix.configuration }}/test.exe"
12 changes: 9 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,15 @@

**serialize** is a simple bitpacking serializer for C++.

Now you can easily write a bool with only one bit, or serialize any integer value up to 64 bits while taking up only that many bits in the buffer.

A template based serialization system is also included so you can have one serialize function that unifies read and write.
It has the following features:

* Serialize a bool with only one bit
* Serialize any integer value from [1,64] bits writing only that number of bits to the buffer
* Serialize signed integer values with [min,max] writing only the required bits to the buffer
* Serialize floats, doubles, compressed floats, strings, byte arrays, varints, and integers relative to another integer
* Alignment support so you can align your bitstream to a byte boundary whenever you want
* Template based serialization system so you can write a unified serialize function instead of separate read and write functions
* Separate read and write methods so you can still have separate read and write methods if you prefer that

# Author

Expand Down

0 comments on commit 53d6a1f

Please sign in to comment.