A pipeline function maps lunr.Token to lunr.Token. A lunr.Token contains the token string as well as all known metadata. A pipeline function can mutate the token string or mutate (or add) metadata for a given token.
A pipeline function can indicate that the passed token should be discarded by returning null, undefined or an empty string. This token will not be passed to any downstream pipeline functions and will not be added to the index.
Multiple tokens can be returned by returning an array of tokens. Each token will be passed to any downstream pipeline functions and all will returned tokens will be added to the index.
Any number of pipeline functions may be chained together using a lunr.Pipeline.