void compileTo(VertexArray& va) { if (!code.empty()) throw std::logic_error("Custom code cannot be recorded into a macro"); va.reserve(ops.size()); std::stable_sort(ops.begin(), ops.end()); for (DrawOps::const_iterator op = ops.begin(), end = ops.end(); op != end; ++op) op->compileTo(va); }