diff options
Diffstat (limited to 'src/Selection.h')
| -rw-r--r-- | src/Selection.h | 98 | 
1 files changed, 49 insertions, 49 deletions
diff --git a/src/Selection.h b/src/Selection.h index 82fc4aa48..d078c043e 100644 --- a/src/Selection.h +++ b/src/Selection.h @@ -19,37 +19,37 @@ public:  		if (virtualSpace < 0)  			virtualSpace = 0;  	} -	void Reset() { +	void Reset() noexcept {  		position = 0;  		virtualSpace = 0;  	} -	void MoveForInsertDelete(bool insertion, Sci::Position startChange, Sci::Position length); -	bool operator ==(const SelectionPosition &other) const { +	void MoveForInsertDelete(bool insertion, Sci::Position startChange, Sci::Position length) noexcept; +	bool operator ==(const SelectionPosition &other) const noexcept {  		return position == other.position && virtualSpace == other.virtualSpace;  	} -	bool operator <(const SelectionPosition &other) const; -	bool operator >(const SelectionPosition &other) const; -	bool operator <=(const SelectionPosition &other) const; -	bool operator >=(const SelectionPosition &other) const; -	Sci::Position Position() const { +	bool operator <(const SelectionPosition &other) const noexcept; +	bool operator >(const SelectionPosition &other) const noexcept; +	bool operator <=(const SelectionPosition &other) const noexcept; +	bool operator >=(const SelectionPosition &other) const noexcept; +	Sci::Position Position() const noexcept {  		return position;  	} -	void SetPosition(Sci::Position position_) { +	void SetPosition(Sci::Position position_) noexcept {  		position = position_;  		virtualSpace = 0;  	} -	Sci::Position VirtualSpace() const { +	Sci::Position VirtualSpace() const noexcept {  		return virtualSpace;  	} -	void SetVirtualSpace(Sci::Position virtualSpace_) { +	void SetVirtualSpace(Sci::Position virtualSpace_) noexcept {  		PLATFORM_ASSERT(virtualSpace_ < 800000);  		if (virtualSpace_ >= 0)  			virtualSpace = virtualSpace_;  	} -	void Add(Sci::Position increment) { +	void Add(Sci::Position increment) noexcept {  		position = position + increment;  	} -	bool IsValid() const { +	bool IsValid() const noexcept {  		return position >= 0;  	}  }; @@ -58,9 +58,9 @@ public:  struct SelectionSegment {  	SelectionPosition start;  	SelectionPosition end; -	SelectionSegment() : start(), end() { +	SelectionSegment() noexcept : start(), end() {  	} -	SelectionSegment(SelectionPosition a, SelectionPosition b) { +	SelectionSegment(SelectionPosition a, SelectionPosition b) noexcept {  		if (a < b) {  			start = a;  			end = b; @@ -69,10 +69,10 @@ struct SelectionSegment {  			end = a;  		}  	} -	bool Empty() const { +	bool Empty() const noexcept {  		return start == end;  	} -	void Extend(SelectionPosition p) { +	void Extend(SelectionPosition p) noexcept {  		if (start > p)  			start = p;  		if (end < p) @@ -94,40 +94,40 @@ struct SelectionRange {  	}  	SelectionRange(Sci::Position caret_, Sci::Position anchor_) noexcept : caret(caret_), anchor(anchor_) {  	} -	bool Empty() const { +	bool Empty() const noexcept {  		return anchor == caret;  	} -	Sci::Position Length() const; +	Sci::Position Length() const noexcept;  	// Sci::Position Width() const;	// Like Length but takes virtual space into account -	bool operator ==(const SelectionRange &other) const { +	bool operator ==(const SelectionRange &other) const noexcept {  		return caret == other.caret && anchor == other.anchor;  	} -	bool operator <(const SelectionRange &other) const { +	bool operator <(const SelectionRange &other) const noexcept {  		return caret < other.caret || ((caret == other.caret) && (anchor < other.anchor));  	} -	void Reset() { +	void Reset() noexcept {  		anchor.Reset();  		caret.Reset();  	} -	void ClearVirtualSpace() { +	void ClearVirtualSpace() noexcept {  		anchor.SetVirtualSpace(0);  		caret.SetVirtualSpace(0);  	} -	void MoveForInsertDelete(bool insertion, Sci::Position startChange, Sci::Position length); -	bool Contains(Sci::Position pos) const; -	bool Contains(SelectionPosition sp) const; -	bool ContainsCharacter(Sci::Position posCharacter) const; -	SelectionSegment Intersect(SelectionSegment check) const; -	SelectionPosition Start() const { +	void MoveForInsertDelete(bool insertion, Sci::Position startChange, Sci::Position length) noexcept; +	bool Contains(Sci::Position pos) const noexcept; +	bool Contains(SelectionPosition sp) const noexcept; +	bool ContainsCharacter(Sci::Position posCharacter) const noexcept; +	SelectionSegment Intersect(SelectionSegment check) const noexcept; +	SelectionPosition Start() const noexcept {  		return (anchor < caret) ? anchor : caret;  	} -	SelectionPosition End() const { +	SelectionPosition End() const noexcept {  		return (anchor < caret) ? caret : anchor;  	} -	void Swap(); -	bool Trim(SelectionRange range); +	void Swap() noexcept; +	bool Trim(SelectionRange range) noexcept;  	// If range is all virtual collapse to start of virtual space -	void MinimizeVirtualSpace(); +	void MinimizeVirtualSpace() noexcept;  };  class Selection { @@ -141,31 +141,31 @@ public:  	enum selTypes { noSel, selStream, selRectangle, selLines, selThin };  	selTypes selType; -	Selection() noexcept; +	Selection();  	~Selection(); -	bool IsRectangular() const; +	bool IsRectangular() const noexcept;  	Sci::Position MainCaret() const;  	Sci::Position MainAnchor() const; -	SelectionRange &Rectangular(); +	SelectionRange &Rectangular() noexcept;  	SelectionSegment Limits() const;  	// This is for when you want to move the caret in response to a  	// user direction command - for rectangular selections, use the range  	// that covers all selected text otherwise return the main selection.  	SelectionSegment LimitsForRectangularElseMain() const; -	size_t Count() const; -	size_t Main() const; -	void SetMain(size_t r); +	size_t Count() const noexcept; +	size_t Main() const noexcept; +	void SetMain(size_t r) noexcept;  	SelectionRange &Range(size_t r);  	const SelectionRange &Range(size_t r) const;  	SelectionRange &RangeMain();  	const SelectionRange &RangeMain() const;  	SelectionPosition Start() const; -	bool MoveExtends() const; -	void SetMoveExtends(bool moveExtends_); -	bool Empty() const; -	SelectionPosition Last() const; -	Sci::Position Length() const; -	void MovePositions(bool insertion, Sci::Position startChange, Sci::Position length); +	bool MoveExtends() const noexcept; +	void SetMoveExtends(bool moveExtends_) noexcept; +	bool Empty() const noexcept; +	SelectionPosition Last() const noexcept; +	Sci::Position Length() const noexcept; +	void MovePositions(bool insertion, Sci::Position startChange, Sci::Position length) noexcept;  	void TrimSelection(SelectionRange range);  	void TrimOtherSelections(size_t r, SelectionRange range);  	void SetSelection(SelectionRange range); @@ -174,14 +174,14 @@ public:  	void DropSelection(size_t r);  	void DropAdditionalRanges();  	void TentativeSelection(SelectionRange range); -	void CommitTentative(); +	void CommitTentative() noexcept;  	int CharacterInSelection(Sci::Position posCharacter) const;  	int InSelectionForEOL(Sci::Position pos) const; -	Sci::Position VirtualSpaceFor(Sci::Position pos) const; +	Sci::Position VirtualSpaceFor(Sci::Position pos) const noexcept;  	void Clear();  	void RemoveDuplicates(); -	void RotateMain(); -	bool Tentative() const { return tentativeMain; } +	void RotateMain() noexcept; +	bool Tentative() const noexcept { return tentativeMain; }  	std::vector<SelectionRange> RangesCopy() const {  		return ranges;  	}  | 
