From 74bb9cd27242b9320f99ff4d2b50c3051576cc14 Mon Sep 17 00:00:00 2001 From: crupest Date: Tue, 8 Feb 2022 16:53:51 +0800 Subject: ... --- include/cru/common/Range.hpp | 43 ------------------------------------------- 1 file changed, 43 deletions(-) delete mode 100644 include/cru/common/Range.hpp (limited to 'include/cru/common/Range.hpp') diff --git a/include/cru/common/Range.hpp b/include/cru/common/Range.hpp deleted file mode 100644 index ecc61243..00000000 --- a/include/cru/common/Range.hpp +++ /dev/null @@ -1,43 +0,0 @@ -#pragma once -#include "Base.hpp" - -namespace cru { -struct Range final { - constexpr static Range FromTwoSides(gsl::index start, gsl::index end) { - return Range(start, end - start); - } - - constexpr static Range FromTwoSides(gsl::index start, gsl::index end, - gsl::index offset) { - return Range(start + offset, end - start); - } - - constexpr Range() = default; - constexpr Range(const gsl::index position, const gsl::index count = 0) - : position(position), count(count) {} - - gsl::index GetStart() const { return position; } - gsl::index GetEnd() const { return position + count; } - - void ChangeEnd(gsl::index new_end) { count = new_end - position; } - - Range Normalize() const { - auto result = *this; - if (result.count < 0) { - result.position += result.count; - result.count = -result.count; - } - return result; - } - - Range CoerceInto(gsl::index min, gsl::index max) const { - auto coerce = [min, max](gsl::index index) { - return index > max ? max : (index < min ? min : index); - }; - return Range::FromTwoSides(coerce(GetStart()), coerce(GetEnd())); - } - - gsl::index position = 0; - gsl::index count = 0; -}; -} // namespace cru -- cgit v1.2.3