mktables: Do some table-driven code generation
authorKarl Williamson <public@khwilliamson.com>
Fri, 4 Oct 2013 04:06:29 +0000 (22:06 -0600)
committerKarl Williamson <public@khwilliamson.com>
Fri, 4 Oct 2013 05:19:41 +0000 (23:19 -0600)
commit83b686358daaf353059b8967df38f1da0e49d0d7
tree26e5b51bd83db64cadcd6ca8cece7ff6cdbfe470
parent524a8e5e7bc570137fe6cfc3ded0b743f44a834f
mktables: Do some table-driven code generation

The Unicode Character Database consists of many files in various
different formats.  mktables has a single routine that processes the
most common format type.  Files with different formats are run through
filters to transform them into this format, so that almost all end up
being handles by this common function.

This commit adds a way of specifying the format for one of the other
format types, and then automatically generating the code to do the
transformation.  This doesn't work if the file has lines that have
special cases, such as if there is a known typo in it; the current
scheme can be used for those.

Unfortunately, all but one of the candidate files in Unicode 6.2 aren't
suitable for this table-driven approach.  But a second one is coming in
6.3, and I anticipate more in the future, as Unicode has tightened their
quality control significantly in recent releases.
lib/unicore/mktables