├── .github └── workflows │ └── test.yml ├── .gitignore ├── .gitlab-ci.yml ├── .rustfmt.toml ├── Cargo.toml ├── LICENSE-APACHE ├── LICENSE-MIT ├── README.md ├── TODO.md ├── base ├── Cargo.toml └── src │ ├── emplacer.rs │ ├── error.rs │ ├── lib.rs │ ├── primitive.rs │ ├── traits.rs │ └── utils │ ├── iter.rs │ ├── mem.rs │ └── mod.rs ├── containers ├── Cargo.toml └── src │ ├── bytes.rs │ ├── flex.rs │ ├── lib.rs │ ├── string.rs │ ├── vec.rs │ └── wrap.rs ├── io ├── Cargo.toml └── src │ ├── async_ │ ├── io.rs │ ├── mod.rs │ ├── recv.rs │ └── send.rs │ ├── blocking │ ├── io.rs │ ├── mod.rs │ ├── recv.rs │ └── send.rs │ ├── common │ ├── error.rs │ ├── io.rs │ └── mod.rs │ ├── lib.rs │ └── tests │ ├── async_.rs │ ├── blocking.rs │ ├── common.rs │ └── mod.rs ├── macros ├── Cargo.toml └── src │ ├── context.rs │ ├── info.rs │ ├── items │ ├── align_as.rs │ ├── base.rs │ ├── cast.rs │ ├── enum_.rs │ ├── flat.rs │ ├── init.rs │ ├── mod.rs │ ├── portable.rs │ ├── tag.rs │ ├── unsized_.rs │ └── unsized_enum.rs │ ├── lib.rs │ └── utils │ ├── field_iter.rs │ ├── generic.rs │ └── mod.rs ├── portable ├── Cargo.toml └── src │ ├── bool_.rs │ ├── float.rs │ ├── impl_.rs │ ├── int.rs │ ├── lib.rs │ └── tests.rs ├── src └── lib.rs └── tests ├── Cargo.toml └── src ├── c_like_enum.rs ├── generics.rs ├── lib.rs ├── not_default.rs ├── portable.rs ├── sized_enum ├── auto.rs ├── manual.rs ├── mod.rs └── tests.rs ├── sized_struct ├── auto.rs ├── manual.rs ├── mod.rs └── tests.rs ├── unsized_enum ├── auto.rs ├── manual.rs ├── mod.rs └── tests.rs ├── unsized_sized_enum.rs └── unsized_struct ├── auto.rs ├── manual.rs ├── mod.rs └── tests.rs /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitlab-ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/.gitlab-ci.yml -------------------------------------------------------------------------------- /.rustfmt.toml: -------------------------------------------------------------------------------- 1 | max_width = 127 2 | -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/LICENSE-APACHE -------------------------------------------------------------------------------- /LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/LICENSE-MIT -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/README.md -------------------------------------------------------------------------------- /TODO.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/TODO.md -------------------------------------------------------------------------------- /base/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/base/Cargo.toml -------------------------------------------------------------------------------- /base/src/emplacer.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/base/src/emplacer.rs -------------------------------------------------------------------------------- /base/src/error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/base/src/error.rs -------------------------------------------------------------------------------- /base/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/base/src/lib.rs -------------------------------------------------------------------------------- /base/src/primitive.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/base/src/primitive.rs -------------------------------------------------------------------------------- /base/src/traits.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/base/src/traits.rs -------------------------------------------------------------------------------- /base/src/utils/iter.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/base/src/utils/iter.rs -------------------------------------------------------------------------------- /base/src/utils/mem.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/base/src/utils/mem.rs -------------------------------------------------------------------------------- /base/src/utils/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/base/src/utils/mod.rs -------------------------------------------------------------------------------- /containers/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/containers/Cargo.toml -------------------------------------------------------------------------------- /containers/src/bytes.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/containers/src/bytes.rs -------------------------------------------------------------------------------- /containers/src/flex.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/containers/src/flex.rs -------------------------------------------------------------------------------- /containers/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/containers/src/lib.rs -------------------------------------------------------------------------------- /containers/src/string.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/containers/src/string.rs -------------------------------------------------------------------------------- /containers/src/vec.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/containers/src/vec.rs -------------------------------------------------------------------------------- /containers/src/wrap.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/containers/src/wrap.rs -------------------------------------------------------------------------------- /io/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/Cargo.toml -------------------------------------------------------------------------------- /io/src/async_/io.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/async_/io.rs -------------------------------------------------------------------------------- /io/src/async_/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/async_/mod.rs -------------------------------------------------------------------------------- /io/src/async_/recv.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/async_/recv.rs -------------------------------------------------------------------------------- /io/src/async_/send.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/async_/send.rs -------------------------------------------------------------------------------- /io/src/blocking/io.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/blocking/io.rs -------------------------------------------------------------------------------- /io/src/blocking/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/blocking/mod.rs -------------------------------------------------------------------------------- /io/src/blocking/recv.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/blocking/recv.rs -------------------------------------------------------------------------------- /io/src/blocking/send.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/blocking/send.rs -------------------------------------------------------------------------------- /io/src/common/error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/common/error.rs -------------------------------------------------------------------------------- /io/src/common/io.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/common/io.rs -------------------------------------------------------------------------------- /io/src/common/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/common/mod.rs -------------------------------------------------------------------------------- /io/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/lib.rs -------------------------------------------------------------------------------- /io/src/tests/async_.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/tests/async_.rs -------------------------------------------------------------------------------- /io/src/tests/blocking.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/tests/blocking.rs -------------------------------------------------------------------------------- /io/src/tests/common.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/tests/common.rs -------------------------------------------------------------------------------- /io/src/tests/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/io/src/tests/mod.rs -------------------------------------------------------------------------------- /macros/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/Cargo.toml -------------------------------------------------------------------------------- /macros/src/context.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/context.rs -------------------------------------------------------------------------------- /macros/src/info.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/info.rs -------------------------------------------------------------------------------- /macros/src/items/align_as.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/items/align_as.rs -------------------------------------------------------------------------------- /macros/src/items/base.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/items/base.rs -------------------------------------------------------------------------------- /macros/src/items/cast.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/items/cast.rs -------------------------------------------------------------------------------- /macros/src/items/enum_.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/items/enum_.rs -------------------------------------------------------------------------------- /macros/src/items/flat.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/items/flat.rs -------------------------------------------------------------------------------- /macros/src/items/init.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/items/init.rs -------------------------------------------------------------------------------- /macros/src/items/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/items/mod.rs -------------------------------------------------------------------------------- /macros/src/items/portable.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/items/portable.rs -------------------------------------------------------------------------------- /macros/src/items/tag.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/items/tag.rs -------------------------------------------------------------------------------- /macros/src/items/unsized_.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/items/unsized_.rs -------------------------------------------------------------------------------- /macros/src/items/unsized_enum.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/items/unsized_enum.rs -------------------------------------------------------------------------------- /macros/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/lib.rs -------------------------------------------------------------------------------- /macros/src/utils/field_iter.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/utils/field_iter.rs -------------------------------------------------------------------------------- /macros/src/utils/generic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/utils/generic.rs -------------------------------------------------------------------------------- /macros/src/utils/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/macros/src/utils/mod.rs -------------------------------------------------------------------------------- /portable/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/portable/Cargo.toml -------------------------------------------------------------------------------- /portable/src/bool_.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/portable/src/bool_.rs -------------------------------------------------------------------------------- /portable/src/float.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/portable/src/float.rs -------------------------------------------------------------------------------- /portable/src/impl_.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/portable/src/impl_.rs -------------------------------------------------------------------------------- /portable/src/int.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/portable/src/int.rs -------------------------------------------------------------------------------- /portable/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/portable/src/lib.rs -------------------------------------------------------------------------------- /portable/src/tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/portable/src/tests.rs -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/src/lib.rs -------------------------------------------------------------------------------- /tests/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/Cargo.toml -------------------------------------------------------------------------------- /tests/src/c_like_enum.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/c_like_enum.rs -------------------------------------------------------------------------------- /tests/src/generics.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/generics.rs -------------------------------------------------------------------------------- /tests/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/lib.rs -------------------------------------------------------------------------------- /tests/src/not_default.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/not_default.rs -------------------------------------------------------------------------------- /tests/src/portable.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/portable.rs -------------------------------------------------------------------------------- /tests/src/sized_enum/auto.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/sized_enum/auto.rs -------------------------------------------------------------------------------- /tests/src/sized_enum/manual.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/sized_enum/manual.rs -------------------------------------------------------------------------------- /tests/src/sized_enum/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/sized_enum/mod.rs -------------------------------------------------------------------------------- /tests/src/sized_enum/tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/sized_enum/tests.rs -------------------------------------------------------------------------------- /tests/src/sized_struct/auto.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/sized_struct/auto.rs -------------------------------------------------------------------------------- /tests/src/sized_struct/manual.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/sized_struct/manual.rs -------------------------------------------------------------------------------- /tests/src/sized_struct/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/sized_struct/mod.rs -------------------------------------------------------------------------------- /tests/src/sized_struct/tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/sized_struct/tests.rs -------------------------------------------------------------------------------- /tests/src/unsized_enum/auto.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/unsized_enum/auto.rs -------------------------------------------------------------------------------- /tests/src/unsized_enum/manual.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/unsized_enum/manual.rs -------------------------------------------------------------------------------- /tests/src/unsized_enum/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/unsized_enum/mod.rs -------------------------------------------------------------------------------- /tests/src/unsized_enum/tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/unsized_enum/tests.rs -------------------------------------------------------------------------------- /tests/src/unsized_sized_enum.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/unsized_sized_enum.rs -------------------------------------------------------------------------------- /tests/src/unsized_struct/auto.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/unsized_struct/auto.rs -------------------------------------------------------------------------------- /tests/src/unsized_struct/manual.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/unsized_struct/manual.rs -------------------------------------------------------------------------------- /tests/src/unsized_struct/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/unsized_struct/mod.rs -------------------------------------------------------------------------------- /tests/src/unsized_struct/tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/agerasev/flatty/HEAD/tests/src/unsized_struct/tests.rs --------------------------------------------------------------------------------