Commit graph

5 commits

Author SHA1 Message Date
Egor Larionov 12547b5bcb Put the swizzle operators behind a feature flag "swizzle" to avoid increasing
the binary size by approximately 20% by default.
2017-10-01 13:26:47 -07:00
Egor Larionov 768b6b71f0 Add a doc explanation to each swizzle function. 2017-09-30 16:37:07 -07:00
Egor Larionov 76f00b7941 Extend swizzles to increase the dimension of a vector.
For example this is now valid:
```
let p2 = Point2::new(1.0, 2.0);
let p3 = p2.xyx(); // producing Point3 { x:1.0, y:2.0, z:1.0 }
```
2017-09-30 15:09:03 -07:00
Egor Larionov cc7047555d Complete the list of generated swizzle operators. 2017-09-30 14:41:17 -07:00
Egor Larionov 985db6b604 Initial implementation of swizzle operators using a build script that generates
a macro, which is included in macros.rs and subsequently used to implement
swizzle operators in vectors and points
2017-09-30 01:38:03 -07:00