USet looks very much like SmallBitSet from SmallCollections.jl. UVec{U} seems to be somewhat similar to PackedVector{U,1,Bool} from the same package. The difference is that the length of a PackedVector is stored separately. I think it’s a good idea to store the length in the bit mask, see this post.
(Disclaimer: I’m the author of SmallCollections.jl. StackCollections.jl is older; I was not aware of it.)