search method
Search given substring
in the whole document
Supports caseSensitive
and wholeWord
options
Returns correspondent offsets
Implementation
List<int> search(
String substring, {
bool caseSensitive = false,
bool wholeWord = false,
}) {
final matches = <int>[];
for (final node in _root.children) {
if (node is Line) {
_searchLine(substring, caseSensitive, wholeWord,
searchConfigurations.searchEmbedMode, node, matches);
} else if (node is Block) {
for (final line in Iterable.castFrom<dynamic, Line>(node.children)) {
_searchLine(substring, caseSensitive, wholeWord,
searchConfigurations.searchEmbedMode, line, matches);
}
} else {
throw StateError('Unreachable.');
}
}
return matches;
}