It is expected that between omnilinter invocations not much content has changed. So, we can cache content matching results and have a huge performance gain.
Cache key would include include rule and absolute path, condition would be path lastmod time and size, and content would be match flag and list of matched lines.