+struct Swizzle: Expression
+{
+ NodePtr<Expression> left;
+ std::string component_group;
+ unsigned count = 0;
+ std::uint8_t components[4] = { 0, 0, 0, 0 };
+
+ virtual Swizzle *clone() const { return new Swizzle(*this); }
+ virtual void visit(NodeVisitor &);
+};
+