------------------- Abstract_Cursor -- -------------------
type Abstract_Character_Cursor is limited interface and Abstract_Cursor;
Cursor that points to single character.
type Abstract_Cursor is limited interface;
type Abstract_Segment_Cursor is limited interface and Abstract_Cursor;
Cursor that points to some segment of the string.
function Character_Index
(Self : Abstract_Character_Cursor'Class)
return VSS.Strings.Character_Index'Base
Returns index of the character.
function Character_Length
(Self : Abstract_Segment_Cursor)
return VSS.Strings.Character_Count
Length of the segment in characters.
function Element
(Self : Abstract_Segment_Cursor)
return VSS.Strings.Virtual_String
Returns text segment pointed by the cursor.
function First_Character_Index
(Self : Abstract_Cursor)
return VSS.Strings.Character_Index'Base
Return index of the first character of the logical element. This index is zero when cursor is invalid or points before the first character of the string data; or large than length of the string when cursor points after last characters of the string data.
function First_Marker
(Self : Abstract_Cursor)
return VSS.Strings.Cursors.Markers.Character_Marker
Return marker of the first character of the logical element.
function First_UTF16_Offset
(Self : Abstract_Cursor)
return VSS.Unicode.UTF16_Code_Unit_Index
Return offset of the first UTF-16 code unit of the logical element.
function First_UTF8_Offset
(Self : Abstract_Cursor)
return VSS.Unicode.UTF8_Code_Unit_Index
Return offset of the first UTF-8 code unit of the logical element.
function Is_Valid (Self : Abstract_Cursor) return Boolean
Return True when cursor is valid: it points to some logical element in the string, including logical element before the string and after the string when applicable.
function Last_Character_Index
(Self : Abstract_Cursor)
return VSS.Strings.Character_Index'Base
Return index of the last character of the logical element. Returned value when cursor points to the empty logical element or to the logical element before or after the string data depends from the particular implementation.
function Last_Marker
(Self : Abstract_Cursor)
return VSS.Strings.Cursors.Markers.Character_Marker
Return marker of the last character of the logical element.
function Last_UTF16_Offset
(Self : Abstract_Cursor)
return VSS.Unicode.UTF16_Code_Unit_Index
Return offset of the last UTF-16 code unit of the logical element.
function Last_UTF8_Offset
(Self : Abstract_Cursor)
return VSS.Unicode.UTF8_Code_Unit_Index
Return offset of the last UTF-8 code unit of the logical element.
function Marker
(Self : Abstract_Character_Cursor'Class)
return VSS.Strings.Cursors.Markers.Character_Marker
Return marker of the character.