After experiments with loading the whole file at once, and with decoding and parsing in separate thread, lazy reader turned to be the fastest/least memory intensive solution. Characters are now decoded in small batches. This improved parsing speed by ~20%. No global state anymore. Anchors are now zero terminated strings and TagDirectives are a simple array. Event structure was changed to prevent size increase. Minor fixes and improvements. |
||
|---|---|---|
| .. | ||
| common.d | ||
| compare.d | ||
| constructor.d | ||
| emitter.d | ||
| errors.d | ||
| inputoutput.d | ||
| reader.d | ||
| representer.d | ||
| resolver.d | ||
| tokens.d | ||