From cd628e62f21dc03bc8d62bf5c8bf1fd65d025dd2 Mon Sep 17 00:00:00 2001 From: Neil Date: Mon, 22 Jan 2018 08:20:37 +1100 Subject: Make clamp generic so can be used on more types. Updated comments. --- src/Position.h | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/Position.h b/src/Position.h index 258eb177f..166fc24da 100644 --- a/src/Position.h +++ b/src/Position.h @@ -11,6 +11,7 @@ /** * A Position is a position within a document between two characters or at the beginning or end. * Sometimes used as a character index where it identifies the character after the position. + * A Line is a document or screen line. */ namespace Sci { @@ -18,14 +19,10 @@ namespace Sci { typedef int Position; typedef int Line; -// A later version (4.x) of this file may: -//#if defined(SCI_LARGE_FILE_SUPPORT) -//typedef std::ptrdiff_t Position; -// or may allow runtime choice between different position sizes. - const Position invalidPosition = -1; -inline int clamp(int val, int minVal, int maxVal) { +template +inline constexpr T clamp(T val, T minVal, T maxVal) { if (val > maxVal) val = maxVal; if (val < minVal) -- cgit v1.2.3