namespace glm { template GLM_FUNC_QUALIFIER vec nextFloat(vec const& x) { vec Result; for(length_t i = 0, n = Result.length(); i < n; ++i) Result[i] = nextFloat(x[i]); return Result; } template GLM_FUNC_QUALIFIER vec nextFloat(vec const& x, int ULPs) { vec Result; for(length_t i = 0, n = Result.length(); i < n; ++i) Result[i] = nextFloat(x[i], ULPs); return Result; } template GLM_FUNC_QUALIFIER vec nextFloat(vec const& x, vec const& ULPs) { vec Result; for(length_t i = 0, n = Result.length(); i < n; ++i) Result[i] = nextFloat(x[i], ULPs[i]); return Result; } template GLM_FUNC_QUALIFIER vec prevFloat(vec const& x) { vec Result; for(length_t i = 0, n = Result.length(); i < n; ++i) Result[i] = prevFloat(x[i]); return Result; } template GLM_FUNC_QUALIFIER vec prevFloat(vec const& x, int ULPs) { vec Result; for(length_t i = 0, n = Result.length(); i < n; ++i) Result[i] = prevFloat(x[i], ULPs); return Result; } template GLM_FUNC_QUALIFIER vec prevFloat(vec const& x, vec const& ULPs) { vec Result; for(length_t i = 0, n = Result.length(); i < n; ++i) Result[i] = prevFloat(x[i], ULPs[i]); return Result; } template GLM_FUNC_QUALIFIER vec floatDistance(vec const& x, vec const& y) { vec Result; for(length_t i = 0, n = Result.length(); i < n; ++i) Result[i] = floatDistance(x[i], y[i]); return Result; } template GLM_FUNC_QUALIFIER vec floatDistance(vec const& x, vec const& y) { vec Result; for(length_t i = 0, n = Result.length(); i < n; ++i) Result[i] = floatDistance(x[i], y[i]); return Result; } }//namespace glm