A parsed highlighted line.
A fragment holds information about the text being styled, the color to apply and if it is emphasis/strong.
Possible colors.
The common uses of the color are the following:
Highlight type. Normal will highlight the line in a way to differentiate it from the rest, like github's yellow background. Add will highlight in a manner that gives the ideia of new content added. Delete will highlight in a manner that gives the ideia of deleted content. The specific styles will depend on the Theme chosen.
Highlight lines given a highlight type, start and end index.
If no highlight type is given (Nothing), it will remove any
highlight from that lines.
Negative indexes are taken starting from the end of the list.
A line holds information about its fragments and if is highlighted in any way.