├── .github └── workflows │ └── ci.yml ├── .gitignore ├── Cargo.toml ├── LICENSE-APACHE ├── LICENSE-MIT ├── README.md ├── enum-ptr-derive ├── Cargo.toml └── src │ ├── gen.rs │ ├── input.rs │ ├── lib.rs │ └── validate.rs ├── enum-ptr-test ├── Cargo.toml ├── src │ └── lib.rs └── tests │ ├── fail │ ├── borrow.rs │ ├── borrow.stderr │ ├── borrow_mut.rs │ ├── borrow_mut.stderr │ ├── compact_copy.rs │ ├── compact_copy.stderr │ ├── discrinimant.rs │ ├── discrinimant.stderr │ ├── field_num.rs │ ├── field_num.stderr │ ├── field_type.rs │ ├── field_type.stderr │ ├── lifetime_borrow.rs │ ├── lifetime_borrow.stderr │ ├── lifetime_get.rs │ ├── lifetime_get.stderr │ ├── lifetime_map.rs │ ├── lifetime_map.stderr │ ├── repr.rs │ └── repr.stderr │ └── should_fail.rs ├── enum-ptr ├── Cargo.toml └── src │ ├── base │ ├── compact.rs │ ├── convert.rs │ ├── inner.rs │ └── mod.rs │ ├── lib.rs │ ├── traits │ ├── aligned.rs │ ├── borrow.rs │ ├── borrow_mut.rs │ └── mod.rs │ └── utils │ ├── get.rs │ ├── mod.rs │ ├── shift.rs │ └── unit.rs └── playground ├── Cargo.toml ├── src └── lib.rs └── tests └── ref_type_vis.rs /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/LICENSE-APACHE -------------------------------------------------------------------------------- /LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/LICENSE-MIT -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/README.md -------------------------------------------------------------------------------- /enum-ptr-derive/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-derive/Cargo.toml -------------------------------------------------------------------------------- /enum-ptr-derive/src/gen.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-derive/src/gen.rs -------------------------------------------------------------------------------- /enum-ptr-derive/src/input.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-derive/src/input.rs -------------------------------------------------------------------------------- /enum-ptr-derive/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-derive/src/lib.rs -------------------------------------------------------------------------------- /enum-ptr-derive/src/validate.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-derive/src/validate.rs -------------------------------------------------------------------------------- /enum-ptr-test/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/Cargo.toml -------------------------------------------------------------------------------- /enum-ptr-test/src/lib.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/borrow.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/borrow.rs -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/borrow.stderr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/borrow.stderr -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/borrow_mut.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/borrow_mut.rs -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/borrow_mut.stderr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/borrow_mut.stderr -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/compact_copy.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/compact_copy.rs -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/compact_copy.stderr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/compact_copy.stderr -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/discrinimant.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/discrinimant.rs -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/discrinimant.stderr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/discrinimant.stderr -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/field_num.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/field_num.rs -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/field_num.stderr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/field_num.stderr -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/field_type.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/field_type.rs -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/field_type.stderr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/field_type.stderr -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/lifetime_borrow.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/lifetime_borrow.rs -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/lifetime_borrow.stderr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/lifetime_borrow.stderr -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/lifetime_get.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/lifetime_get.rs -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/lifetime_get.stderr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/lifetime_get.stderr -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/lifetime_map.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/lifetime_map.rs -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/lifetime_map.stderr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/lifetime_map.stderr -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/repr.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/repr.rs -------------------------------------------------------------------------------- /enum-ptr-test/tests/fail/repr.stderr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/fail/repr.stderr -------------------------------------------------------------------------------- /enum-ptr-test/tests/should_fail.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr-test/tests/should_fail.rs -------------------------------------------------------------------------------- /enum-ptr/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/Cargo.toml -------------------------------------------------------------------------------- /enum-ptr/src/base/compact.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/base/compact.rs -------------------------------------------------------------------------------- /enum-ptr/src/base/convert.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/base/convert.rs -------------------------------------------------------------------------------- /enum-ptr/src/base/inner.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/base/inner.rs -------------------------------------------------------------------------------- /enum-ptr/src/base/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/base/mod.rs -------------------------------------------------------------------------------- /enum-ptr/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/lib.rs -------------------------------------------------------------------------------- /enum-ptr/src/traits/aligned.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/traits/aligned.rs -------------------------------------------------------------------------------- /enum-ptr/src/traits/borrow.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/traits/borrow.rs -------------------------------------------------------------------------------- /enum-ptr/src/traits/borrow_mut.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/traits/borrow_mut.rs -------------------------------------------------------------------------------- /enum-ptr/src/traits/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/traits/mod.rs -------------------------------------------------------------------------------- /enum-ptr/src/utils/get.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/utils/get.rs -------------------------------------------------------------------------------- /enum-ptr/src/utils/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/utils/mod.rs -------------------------------------------------------------------------------- /enum-ptr/src/utils/shift.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/utils/shift.rs -------------------------------------------------------------------------------- /enum-ptr/src/utils/unit.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/enum-ptr/src/utils/unit.rs -------------------------------------------------------------------------------- /playground/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/playground/Cargo.toml -------------------------------------------------------------------------------- /playground/src/lib.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /playground/tests/ref_type_vis.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuarticCat/enum-ptr/HEAD/playground/tests/ref_type_vis.rs --------------------------------------------------------------------------------