\relax \@writefile{toc}{\contentsline {section}{\numberline {1}Converting a {\tt noweb} file to tool markup}{2}} \@writefile{toc}{\contentsline {subsection}{\numberline {1.1}Main program}{2}} \newsublabel{NW42oEvI-3xpA5i-1}{{}{2}} \nwixadd{\nwixd }{state}{NW42oEvI-3xpA5i-1} \nwixadd{\nwixd }{mark}{NW42oEvI-3xpA5i-1} \nwixadd{\nwixd }{index}{NW42oEvI-3xpA5i-1} \nwixadd{\nwixd }{print:unstate}{NW42oEvI-3xpA5i-1} \nwixadd{\nwixd }{print:unindex}{NW42oEvI-3xpA5i-1} \nwixadd{\nwixd }{print:unpair}{NW42oEvI-3xpA5i-1} \nwixadd{\nwixu }{strlen}{NW42oEvI-3xpA5i-1} \newsublabel{NW42oEvI-1p0Y9w-1}{{}{4}} \nwixadd{\nwixd }{markup}{NW42oEvI-1p0Y9w-1} \nwixadd{\nwixu }{getline}{NW42oEvI-1p0Y9w-1} \nwixadd{\nwixu }{mark}{NW42oEvI-1p0Y9w-1} \nwixadd{\nwixu }{module}{NW42oEvI-1p0Y9w-1} \nwixadd{\nwixu }{state}{NW42oEvI-1p0Y9w-1} \newsublabel{NW42oEvI-41SWH7-1}{{}{5}} \nwixadd{\nwixu }{first:undoc:unline}{NW42oEvI-41SWH7-1} \nwixadd{\nwixu }{getline:unexpand}{NW42oEvI-41SWH7-1} \nwixadd{\nwixu }{getmodname}{NW42oEvI-41SWH7-1} \nwixadd{\nwixu }{is:undef}{NW42oEvI-41SWH7-1} \nwixadd{\nwixu }{print:unpair}{NW42oEvI-41SWH7-1} \nwixadd{\nwixu }{print:unstate}{NW42oEvI-41SWH7-1} \nwixadd{\nwixu }{starts:uncode}{NW42oEvI-41SWH7-1} \nwixadd{\nwixu }{starts:undoc}{NW42oEvI-41SWH7-1} \nwixadd{\nwixu }{state}{NW42oEvI-41SWH7-1} \newsublabel{NW42oEvI-1YApjM-1}{{}{6}} \nwixadd{\nwixu }{strlen}{NW42oEvI-1YApjM-1} \newsublabel{NW42oEvI-4ME7dD-1}{{}{6}} \nwixadd{\nwixu }{print:unpair}{NW42oEvI-4ME7dD-1} \newsublabel{NW42oEvI-33VoO2-1}{{}{6}} \newsublabel{NW42oEvI-4WAQwL-1}{{}{6}} \newsublabel{NW42oEvI-1OQulU-1}{{}{7}} \newsublabel{NW42oEvI-VAZsu-1}{{}{7}} \newsublabel{NW42oEvI-3CPdPU-1}{{}{8}} \newsublabel{NW42oEvI-3CPdPU-2}{{}{8}} \newsublabel{NW42oEvI-3CPdPU-3}{{}{8}} \newsublabel{NW42oEvI-2hqJzA-1}{{}{8}} \newsublabel{NW42oEvI-2nF6qj-1}{{}{9}} \nwixadd{\nwixu }{state}{NW42oEvI-2nF6qj-1} \newsublabel{NW42oEvI-2hqJzA-2}{{}{9}} \newsublabel{NW42oEvI-2nF6qj-2}{{}{9}} \newsublabel{NW42oEvI-2hqJzA-3}{{}{9}} \newsublabel{NW42oEvI-2nF6qj-3}{{}{9}} \newsublabel{NW42oEvI-2hqJzA-4}{{}{9}} \newsublabel{NW42oEvI-2nF6qj-4}{{}{9}} \newsublabel{NW42oEvI-2hqJzA-5}{{}{9}} \newsublabel{NW42oEvI-2nF6qj-5}{{}{9}} \newsublabel{NW42oEvI-2hqJzA-6}{{}{10}} \newsublabel{NW42oEvI-2nF6qj-6}{{}{10}} \newsublabel{NW42oEvI-2hqJzA-7}{{}{10}} \newsublabel{NW42oEvI-2nF6qj-7}{{}{10}} \newsublabel{NW42oEvI-2hqJzA-8}{{}{10}} \newsublabel{NW42oEvI-2nF6qj-8}{{}{10}} \nwixadd{\nwixu }{print:unpair}{NW42oEvI-2nF6qj-8} \nwixadd{\nwixu }{state}{NW42oEvI-2nF6qj-8} \newsublabel{NW42oEvI-2hqJzA-9}{{}{10}} \newsublabel{NW42oEvI-2nF6qj-9}{{}{11}} \nwixadd{\nwixu }{state}{NW42oEvI-2nF6qj-9} \newsublabel{NW42oEvI-2hqJzA-A}{{}{11}} \newsublabel{NW42oEvI-2nF6qj-A}{{}{11}} \newsublabel{NW42oEvI-2hqJzA-B}{{}{11}} \newsublabel{NW42oEvI-2nF6qj-B}{{}{11}} \newsublabel{NW42oEvI-2hqJzA-C}{{}{11}} \newsublabel{NW42oEvI-2nF6qj-C}{{}{11}} \newsublabel{NW42oEvI-2hqJzA-D}{{}{11}} \newsublabel{NW42oEvI-2nF6qj-D}{{}{11}} \newsublabel{NW42oEvI-2hqJzA-E}{{}{11}} \newsublabel{NW42oEvI-2nF6qj-E}{{}{12}} \nwixadd{\nwixu }{print:unpair}{NW42oEvI-2nF6qj-E} \newsublabel{NW42oEvI-2hqJzA-F}{{}{12}} \newsublabel{NW42oEvI-2nF6qj-F}{{}{12}} \newsublabel{NW42oEvI-2hqJzA-G}{{}{12}} \newsublabel{NW42oEvI-2nF6qj-G}{{}{12}} \nwixadd{\nwixu }{state}{NW42oEvI-2nF6qj-G} \newsublabel{NW42oEvI-2hqJzA-H}{{}{12}} \newsublabel{NW42oEvI-2nF6qj-H}{{}{12}} \newsublabel{NW42oEvI-2hqJzA-I}{{}{13}} \newsublabel{NW42oEvI-2nF6qj-I}{{}{13}} \newsublabel{NW42oEvI-2hqJzA-J}{{}{13}} \newsublabel{NW42oEvI-2nF6qj-J}{{}{13}} \nwixadd{\nwixu }{state}{NW42oEvI-2nF6qj-J} \newsublabel{NW42oEvI-2hqJzA-K}{{}{13}} \newsublabel{NW42oEvI-2nF6qj-K}{{}{13}} \newsublabel{NW42oEvI-2hqJzA-L}{{}{13}} \newsublabel{NW42oEvI-2nF6qj-L}{{}{13}} \newsublabel{NW42oEvI-2hqJzA-M}{{}{13}} \newsublabel{NW42oEvI-2nF6qj-M}{{}{13}} \newsublabel{NW42oEvI-4TXvFF-1}{{}{14}} \newsublabel{NW42oEvI-3lowz3-1}{{}{14}} \newsublabel{NW42oEvI-1ruEsU-1}{{}{14}} \nwixadd{\nwixu }{checkptr}{NW42oEvI-1ruEsU-1} \nwixadd{\nwixu }{malloc}{NW42oEvI-1ruEsU-1} \nwixadd{\nwixu }{strlen}{NW42oEvI-1ruEsU-1} \newsublabel{NW42oEvI-3p7a7y-1}{{}{14}} \nwixadd{\nwixu }{print:unpair}{NW42oEvI-3p7a7y-1} \newsublabel{NW42oEvI-39aIQr-1}{{}{14}} \nwixadd{\nwixu }{print:unpair}{NW42oEvI-39aIQr-1} \newsublabel{NW42oEvI-dWoVE-1}{{}{14}} \nwixadd{\nwixu }{errorat}{NW42oEvI-dWoVE-1} \newsublabel{NW42oEvI-3ZQ5vb-1}{{}{15}} \nwixadd{\nwixu }{print:unindex}{NW42oEvI-3ZQ5vb-1} \nwixadd{\nwixu }{remove:undef:unmarker}{NW42oEvI-3ZQ5vb-1} \newsublabel{NW42oEvI-pCoxP-1}{{}{15}} \nwixadd{\nwixu }{errorat}{NW42oEvI-pCoxP-1} \newsublabel{NW42oEvI-1p0Y9w-2}{{}{16}} \nwixadd{\nwixu }{errorlevel}{NW42oEvI-1p0Y9w-2} \nwixadd{\nwixu }{errormsg}{NW42oEvI-1p0Y9w-2} \nwixadd{\nwixu }{markup}{NW42oEvI-1p0Y9w-2} \newsublabel{NW42oEvI-2FPTO7-1}{{}{16}} \nwixadd{\nwixu }{errormsg}{NW42oEvI-2FPTO7-1} \nwixadd{\nwixu }{tabsize}{NW42oEvI-2FPTO7-1} \@writefile{toc}{\contentsline {subsection}{\numberline {1.2}Identifying the special {\tt noweb} control sequences}{17}} \newsublabel{NW2WUCSj-1p0Y9w-3}{{}{17}} \nwixadd{\nwixu }{markup}{NW2WUCSj-1p0Y9w-3} \newsublabel{NW2WUCSj-LvGMf-1}{{}{18}} \nwixadd{\nwixd }{at:unsign}{NW2WUCSj-LvGMf-1} \newsublabel{NW2WUCSj-2CTHMJ-1}{{}{18}} \nwixadd{\nwixu }{at:unsign}{NW2WUCSj-2CTHMJ-1} \newsublabel{NW2WUCSj-2CTHMJ-2}{{}{18}} \nwixadd{\nwixu }{first:undoc:unline}{NW2WUCSj-2CTHMJ-2} \nwixadd{\nwixu }{starts:undoc}{NW2WUCSj-2CTHMJ-2} \newsublabel{NW2WUCSj-3tBClC-1}{{}{18}} \nwixadd{\nwixd }{starts:undoc}{NW2WUCSj-3tBClC-1} \nwixadd{\nwixd }{first:undoc:unline}{NW2WUCSj-3tBClC-1} \nwixadd{\nwixu }{at:unsign}{NW2WUCSj-3tBClC-1} \newsublabel{NW2WUCSj-2CTHMJ-3}{{}{18}} \nwixadd{\nwixu }{is:undef}{NW2WUCSj-2CTHMJ-3} \nwixadd{\nwixu }{remove:undef:unmarker}{NW2WUCSj-2CTHMJ-3} \newsublabel{NW2WUCSj-LvGMf-2}{{}{19}} \newsublabel{NW2WUCSj-3tBClC-2}{{}{19}} \nwixadd{\nwixu }{at:unsign}{NW2WUCSj-3tBClC-2} \nwixadd{\nwixu }{is:undef}{NW2WUCSj-3tBClC-2} \nwixadd{\nwixu }{remove:undef:unmarker}{NW2WUCSj-3tBClC-2} \newsublabel{NW2WUCSj-2XsoJE-1}{{}{19}} \nwixadd{\nwixd }{is:undef}{NW2WUCSj-2XsoJE-1} \nwixadd{\nwixd }{remove:undef:unmarker}{NW2WUCSj-2XsoJE-1} \nwixadd{\nwixu }{strlen}{NW2WUCSj-2XsoJE-1} \newsublabel{NW2WUCSj-2CTHMJ-4}{{}{19}} \nwixadd{\nwixu }{mark}{NW2WUCSj-2CTHMJ-4} \nwixadd{\nwixu }{mod:unend}{NW2WUCSj-2CTHMJ-4} \nwixadd{\nwixu }{mod:unstart}{NW2WUCSj-2CTHMJ-4} \nwixadd{\nwixu }{module}{NW2WUCSj-2CTHMJ-4} \newsublabel{NW2WUCSj-3tBClC-3}{{}{20}} \nwixadd{\nwixd }{mod:unstart}{NW2WUCSj-3tBClC-3} \nwixadd{\nwixd }{mod:unend}{NW2WUCSj-3tBClC-3} \nwixadd{\nwixu }{find:unescaped}{NW2WUCSj-3tBClC-3} \nwixadd{\nwixu }{mark}{NW2WUCSj-3tBClC-3} \newsublabel{NW2WUCSj-2CTHMJ-5}{{}{20}} \nwixadd{\nwixu }{getmodname}{NW2WUCSj-2CTHMJ-5} \nwixadd{\nwixu }{module}{NW2WUCSj-2CTHMJ-5} \nwixadd{\nwixu }{starts:uncode}{NW2WUCSj-2CTHMJ-5} \newsublabel{NW2WUCSj-3tBClC-4}{{}{20}} \nwixadd{\nwixd }{starts:uncode}{NW2WUCSj-3tBClC-4} \nwixadd{\nwixd }{getmodname}{NW2WUCSj-3tBClC-4} \nwixadd{\nwixu }{free}{NW2WUCSj-3tBClC-4} \nwixadd{\nwixu }{mod:unend}{NW2WUCSj-3tBClC-4} \nwixadd{\nwixu }{mod:unstart}{NW2WUCSj-3tBClC-4} \nwixadd{\nwixu }{module}{NW2WUCSj-3tBClC-4} \newsublabel{NW2WUCSj-2UCW9v-1}{{}{21}} \nwixadd{\nwixu }{errorat}{NW2WUCSj-2UCW9v-1} \nwixadd{\nwixu }{Module}{NW2WUCSj-2UCW9v-1} \newsublabel{NW2WUCSj-1t5WWt-1}{{}{21}} \nwixadd{\nwixu }{free}{NW2WUCSj-1t5WWt-1} \nwixadd{\nwixu }{impossible}{NW2WUCSj-1t5WWt-1} \nwixadd{\nwixu }{module}{NW2WUCSj-1t5WWt-1} \newsublabel{NW2WUCSj-2CTHMJ-6}{{}{21}} \nwixadd{\nwixu }{find:unescaped}{NW2WUCSj-2CTHMJ-6} \nwixadd{\nwixu }{mark}{NW2WUCSj-2CTHMJ-6} \nwixadd{\nwixu }{markup}{NW2WUCSj-2CTHMJ-6} \newsublabel{NW2WUCSj-3tBClC-5}{{}{22}} \nwixadd{\nwixd }{find:unescaped}{NW2WUCSj-3tBClC-5} \nwixadd{\nwixu }{mark}{NW2WUCSj-3tBClC-5} \nwixadd{\nwixu }{strlen}{NW2WUCSj-3tBClC-5} \@writefile{toc}{\contentsline {section}{\numberline {2}Tangling}{23}} \@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Main program}{23}} \newsublabel{NW1Xx3lK-1p0Y9w-4}{{}{23}} \nwixadd{\nwixu }{notangle}{NW1Xx3lK-1p0Y9w-4} \newsublabel{NW1Xx3lK-1p0Y9w-5}{{}{24}} \nwixadd{\nwixu }{apply:uneach:unmodule}{NW1Xx3lK-1p0Y9w-5} \nwixadd{\nwixu }{errorlevel}{NW1Xx3lK-1p0Y9w-5} \nwixadd{\nwixu }{module}{NW1Xx3lK-1p0Y9w-5} \nwixadd{\nwixu }{read:undefs}{NW1Xx3lK-1p0Y9w-5} \nwixadd{\nwixu }{remove:unfinal:unnewline}{NW1Xx3lK-1p0Y9w-5} \nwixadd{\nwixu }{tabsize}{NW1Xx3lK-1p0Y9w-5} \newsublabel{NW1Xx3lK-lpC7q-1}{{}{24}} \newsublabel{NW1Xx3lK-4T8Jmg-1}{{}{25}} \nwixadd{\nwixu }{errormsg}{NW1Xx3lK-4T8Jmg-1} \nwixadd{\nwixu }{module}{NW1Xx3lK-4T8Jmg-1} \nwixadd{\nwixu }{root}{NW1Xx3lK-4T8Jmg-1} \nwixadd{\nwixu }{tabsize}{NW1Xx3lK-4T8Jmg-1} \newsublabel{NW1Xx3lK-OPYcT-1}{{}{25}} \nwixadd{\nwixu }{errormsg}{NW1Xx3lK-OPYcT-1} \@writefile{toc}{\contentsline {subsection}{\numberline {2.2}Tangling a single file}{26}} \newsublabel{NW28sivH-2CTHMJ-7}{{}{26}} \newsublabel{NW28sivH-1p0Y9w-6}{{}{26}} \nwixadd{\nwixu }{notangle}{NW28sivH-1p0Y9w-6} \newsublabel{NW28sivH-1p0Y9w-7}{{}{26}} \nwixadd{\nwixd }{notangle}{NW28sivH-1p0Y9w-7} \nwixadd{\nwixu }{expand}{NW28sivH-1p0Y9w-7} \nwixadd{\nwixu }{getline}{NW28sivH-1p0Y9w-7} \nwixadd{\nwixu }{lookup}{NW28sivH-1p0Y9w-7} \nwixadd{\nwixu }{Module}{NW28sivH-1p0Y9w-7} \nwixadd{\nwixu }{module}{NW28sivH-1p0Y9w-7} \nwixadd{\nwixu }{root}{NW28sivH-1p0Y9w-7} \newsublabel{NW28sivH-2CTHMJ-8}{{}{27}} \nwixadd{\nwixu }{module}{NW28sivH-2CTHMJ-8} \nwixadd{\nwixu }{read:undefs}{NW28sivH-2CTHMJ-8} \newsublabel{NW28sivH-1p0Y9w-8}{{}{28}} \nwixadd{\nwixd }{read:undefs}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{addmodule}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{addnewline}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{addstring}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{getline}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{index}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{insert}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{insist}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{is:unend}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{is:unindex}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{is:unkeyword}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{Location}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{Module}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{module}{NW28sivH-1p0Y9w-8} \nwixadd{\nwixu }{warn:undots}{NW28sivH-1p0Y9w-8} \newsublabel{NW28sivH-1UrHvY-1}{{}{29}} \nwixadd{\nwixu }{getline}{NW28sivH-1UrHvY-1} \nwixadd{\nwixu }{is:unkeyword}{NW28sivH-1UrHvY-1} \newsublabel{NW28sivH-15Idtm-1}{{}{29}} \nwixadd{\nwixu }{is:unbegin}{NW28sivH-15Idtm-1} \nwixadd{\nwixu }{is:unindex}{NW28sivH-15Idtm-1} \nwixadd{\nwixu }{is:unkeyword}{NW28sivH-15Idtm-1} \newsublabel{NW28sivH-2WHYyW-1}{{}{29}} \nwixadd{\nwixu }{is:unkeyword}{NW28sivH-2WHYyW-1} \newsublabel{NW28sivH-32nMDL-1}{{}{29}} \nwixadd{\nwixu }{strcpy}{NW28sivH-32nMDL-1} \nwixadd{\nwixu }{strlen}{NW28sivH-32nMDL-1} \newsublabel{NW28sivH-1UFSXI-1}{{}{29}} \nwixadd{\nwixu }{overflow}{NW28sivH-1UFSXI-1} \nwixadd{\nwixu }{strcpy}{NW28sivH-1UFSXI-1} \nwixadd{\nwixu }{strlen}{NW28sivH-1UFSXI-1} \newsublabel{NW28sivH-h8INP-1}{{}{30}} \nwixadd{\nwixu }{overflow}{NW28sivH-h8INP-1} \nwixadd{\nwixu }{strcpy}{NW28sivH-h8INP-1} \nwixadd{\nwixu }{strlen}{NW28sivH-h8INP-1} \newsublabel{NW28sivH-17AmbF-1}{{}{30}} \nwixadd{\nwixu }{errormsg}{NW28sivH-17AmbF-1} \newsublabel{NW28sivH-1p0Y9w-9}{{}{30}} \nwixadd{\nwixd }{warn:undots}{NW28sivH-1p0Y9w-9} \nwixadd{\nwixu }{errormsg}{NW28sivH-1p0Y9w-9} \nwixadd{\nwixu }{Module}{NW28sivH-1p0Y9w-9} \nwixadd{\nwixu }{strlen}{NW28sivH-1p0Y9w-9} \newsublabel{NW28sivH-Xqfpb-1}{{}{30}} \nwixadd{\nwixu }{warn:undots}{NW28sivH-Xqfpb-1} \newsublabel{NW28sivH-1Sj0ii-1}{{}{30}} \nwixadd{\nwixu }{errormsg}{NW28sivH-1Sj0ii-1} \nwixadd{\nwixu }{module}{NW28sivH-1Sj0ii-1} \nwixadd{\nwixu }{root}{NW28sivH-1Sj0ii-1} \newsublabel{NW28sivH-1p0Y9w-A}{{}{31}} \nwixadd{\nwixd }{insist}{NW28sivH-1p0Y9w-A} \nwixadd{\nwixu }{impossible}{NW28sivH-1p0Y9w-A} \nwixadd{\nwixu }{is:unkeyword}{NW28sivH-1p0Y9w-A} \newsublabel{NW28sivH-11Sa4u-1}{{}{31}} \nwixadd{\nwixu }{impossible}{NW28sivH-11Sa4u-1} \nwixadd{\nwixu }{module}{NW28sivH-11Sa4u-1} \newsublabel{NW28sivH-Xqfpb-2}{{}{31}} \nwixadd{\nwixu }{insist}{NW28sivH-Xqfpb-2} \newsublabel{NW28sivH-PzgWW-1}{{}{31}} \nwixadd{\nwixu }{errorat}{NW28sivH-PzgWW-1} \@writefile{toc}{\contentsline {subsection}{\numberline {2.3}Code to recognize {\normalfont \tt {}noweb} markup on input}{32}} \newsublabel{NW38qHjj-2CTHMJ-9}{{}{32}} \nwixadd{\nwixu }{is:unbegin}{NW38qHjj-2CTHMJ-9} \nwixadd{\nwixu }{is:unend}{NW38qHjj-2CTHMJ-9} \nwixadd{\nwixu }{is:unindex}{NW38qHjj-2CTHMJ-9} \nwixadd{\nwixu }{is:unkeyword}{NW38qHjj-2CTHMJ-9} \newsublabel{NW38qHjj-1p0Y9w-B}{{}{32}} \nwixadd{\nwixu }{strlen}{NW38qHjj-1p0Y9w-B} \newsublabel{NW38qHjj-1p0Y9w-C}{{}{32}} \nwixadd{\nwixd }{is:unkeyword}{NW38qHjj-1p0Y9w-C} \nwixadd{\nwixd }{is:unbegin}{NW38qHjj-1p0Y9w-C} \nwixadd{\nwixd }{is:unend}{NW38qHjj-1p0Y9w-C} \nwixadd{\nwixd }{is:unindex}{NW38qHjj-1p0Y9w-C} \nwixadd{\nwixu }{index}{NW38qHjj-1p0Y9w-C} \nwixadd{\nwixu }{strlen}{NW38qHjj-1p0Y9w-C} \@writefile{toc}{\contentsline {subsection}{\numberline {2.4}Expanding multiple files from a single source}{33}} \newsublabel{NW1FHtZ6-1p0Y9w-D}{{}{33}} \nwixadd{\nwixu }{emitfile}{NW1FHtZ6-1p0Y9w-D} \nwixadd{\nwixu }{errorlevel}{NW1FHtZ6-1p0Y9w-D} \nwixadd{\nwixu }{notangle}{NW1FHtZ6-1p0Y9w-D} \nwixadd{\nwixu }{tabsize}{NW1FHtZ6-1p0Y9w-D} \newsublabel{NW1FHtZ6-3hwtH-1}{{}{33}} \nwixadd{\nwixu }{apply:uneach:unmodule}{NW1FHtZ6-3hwtH-1} \nwixadd{\nwixu }{read:undefs}{NW1FHtZ6-3hwtH-1} \nwixadd{\nwixu }{remove:unfinal:unnewline}{NW1FHtZ6-3hwtH-1} \newsublabel{NW1FHtZ6-3FKsUP-1}{{}{34}} \nwixadd{\nwixu }{add:unuses:unto:unusecounts}{NW1FHtZ6-3FKsUP-1} \nwixadd{\nwixu }{apply:uneach:unmodule}{NW1FHtZ6-3FKsUP-1} \nwixadd{\nwixu }{emit:unif:ununused:unand:unconforming}{NW1FHtZ6-3FKsUP-1} \newsublabel{NW1FHtZ6-XcW4Z-1}{{}{34}} \nwixadd{\nwixu }{add:unuses:unto:unusecounts}{NW1FHtZ6-XcW4Z-1} \nwixadd{\nwixu }{emit:unif:ununused:unand:unconforming}{NW1FHtZ6-XcW4Z-1} \nwixadd{\nwixu }{Module}{NW1FHtZ6-XcW4Z-1} \newsublabel{NW1FHtZ6-1p0Y9w-E}{{}{34}} \nwixadd{\nwixd }{add:unuses:unto:unusecounts}{NW1FHtZ6-1p0Y9w-E} \nwixadd{\nwixu }{lookup}{NW1FHtZ6-1p0Y9w-E} \nwixadd{\nwixu }{modpart}{NW1FHtZ6-1p0Y9w-E} \nwixadd{\nwixu }{Module}{NW1FHtZ6-1p0Y9w-E} \newsublabel{NW1FHtZ6-1p0Y9w-F}{{}{34}} \nwixadd{\nwixd }{emit:unif:ununused:unand:unconforming}{NW1FHtZ6-1p0Y9w-F} \nwixadd{\nwixu }{emitfile}{NW1FHtZ6-1p0Y9w-F} \nwixadd{\nwixu }{errormsg}{NW1FHtZ6-1p0Y9w-F} \nwixadd{\nwixu }{index}{NW1FHtZ6-1p0Y9w-F} \nwixadd{\nwixu }{Module}{NW1FHtZ6-1p0Y9w-F} \nwixadd{\nwixu }{notangle}{NW1FHtZ6-1p0Y9w-F} \newsublabel{NW1FHtZ6-XcW4Z-2}{{}{35}} \nwixadd{\nwixu }{emitfile}{NW1FHtZ6-XcW4Z-2} \newsublabel{NW1FHtZ6-1p0Y9w-G}{{}{35}} \nwixadd{\nwixd }{emitfile}{NW1FHtZ6-1p0Y9w-G} \nwixadd{\nwixu }{errormsg}{NW1FHtZ6-1p0Y9w-G} \nwixadd{\nwixu }{lookup}{NW1FHtZ6-1p0Y9w-G} \nwixadd{\nwixu }{Module}{NW1FHtZ6-1p0Y9w-G} \nwixadd{\nwixu }{root}{NW1FHtZ6-1p0Y9w-G} \nwixadd{\nwixu }{tempnam}{NW1FHtZ6-1p0Y9w-G} \newsublabel{NW1FHtZ6-3NKyic-1}{{}{35}} \nwixadd{\nwixu }{strlen}{NW1FHtZ6-3NKyic-1} \newsublabel{NW1FHtZ6-2mSwxI-1}{{}{35}} \nwixadd{\nwixu }{expand}{NW1FHtZ6-2mSwxI-1} \nwixadd{\nwixu }{root}{NW1FHtZ6-2mSwxI-1} \newsublabel{NW1FHtZ6-UqDlp-1}{{}{36}} \newsublabel{NW1FHtZ6-xCw6e-1}{{}{36}} \nwixadd{\nwixu }{errormsg}{NW1FHtZ6-xCw6e-1} \newsublabel{NW1FHtZ6-2zSbIC-1}{{}{36}} \nwixadd{\nwixu }{errormsg}{NW1FHtZ6-2zSbIC-1} \nwixadd{\nwixu }{root}{NW1FHtZ6-2zSbIC-1} \newsublabel{NW1FHtZ6-ALiHk-1}{{}{37}} \nwixadd{\nwixu }{errormsg}{NW1FHtZ6-ALiHk-1} \nwixadd{\nwixu }{tabsize}{NW1FHtZ6-ALiHk-1} \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.4.1}Temporary files}{37}} \newsublabel{NW1FHtZ6-XcW4Z-3}{{}{37}} \nwixadd{\nwixd }{tempnam}{NW1FHtZ6-XcW4Z-3} \@writefile{toc}{\contentsline {subsection}{\numberline {2.5}The internal structure of modules (chunks)}{38}} \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.1}Assembling modules from parts}{38}} \newsublabel{NW197huq-2CTHMJ-A}{{}{38}} \nwixadd{\nwixd }{Location}{NW197huq-2CTHMJ-A} \nwixadd{\nwixd }{parttype}{NW197huq-2CTHMJ-A} \nwixadd{\nwixd }{modpart}{NW197huq-2CTHMJ-A} \newsublabel{NW197huq-2CTHMJ-B}{{}{38}} \nwixadd{\nwixd }{module}{NW197huq-2CTHMJ-B} \nwixadd{\nwixd }{Module}{NW197huq-2CTHMJ-B} \nwixadd{\nwixu }{modpart}{NW197huq-2CTHMJ-B} \newsublabel{NW197huq-2CTHMJ-C}{{}{38}} \nwixadd{\nwixu }{Module}{NW197huq-2CTHMJ-C} \nwixadd{\nwixu }{module}{NW197huq-2CTHMJ-C} \nwixadd{\nwixu }{newmodule}{NW197huq-2CTHMJ-C} \newsublabel{NW197huq-3tBClC-6}{{}{39}} \nwixadd{\nwixd }{newmodule}{NW197huq-3tBClC-6} \nwixadd{\nwixu }{checkptr}{NW197huq-3tBClC-6} \nwixadd{\nwixu }{malloc}{NW197huq-3tBClC-6} \nwixadd{\nwixu }{Module}{NW197huq-3tBClC-6} \nwixadd{\nwixu }{module}{NW197huq-3tBClC-6} \newsublabel{NW197huq-1p0Y9w-H}{{}{39}} \newsublabel{NW197huq-2CTHMJ-D}{{}{39}} \nwixadd{\nwixd }{addstring}{NW197huq-2CTHMJ-D} \nwixadd{\nwixd }{addmodule}{NW197huq-2CTHMJ-D} \nwixadd{\nwixd }{addnewline}{NW197huq-2CTHMJ-D} \nwixadd{\nwixu }{add:unpart}{NW197huq-2CTHMJ-D} \nwixadd{\nwixu }{Location}{NW197huq-2CTHMJ-D} \nwixadd{\nwixu }{Module}{NW197huq-2CTHMJ-D} \nwixadd{\nwixu }{module}{NW197huq-2CTHMJ-D} \newsublabel{NW197huq-3tBClC-7}{{}{40}} \nwixadd{\nwixd }{add:unpart}{NW197huq-3tBClC-7} \nwixadd{\nwixu }{append}{NW197huq-3tBClC-7} \nwixadd{\nwixu }{Location}{NW197huq-3tBClC-7} \nwixadd{\nwixu }{modpart}{NW197huq-3tBClC-7} \nwixadd{\nwixu }{Module}{NW197huq-3tBClC-7} \nwixadd{\nwixu }{newmodpart}{NW197huq-3tBClC-7} \newsublabel{NW197huq-3tBClC-8}{{}{40}} \nwixadd{\nwixd }{newmodpart}{NW197huq-3tBClC-8} \nwixadd{\nwixu }{checkptr}{NW197huq-3tBClC-8} \nwixadd{\nwixu }{Location}{NW197huq-3tBClC-8} \nwixadd{\nwixu }{malloc}{NW197huq-3tBClC-8} \nwixadd{\nwixu }{modpart}{NW197huq-3tBClC-8} \newsublabel{NW197huq-3tBClC-9}{{}{40}} \nwixadd{\nwixd }{append}{NW197huq-3tBClC-9} \nwixadd{\nwixu }{modpart}{NW197huq-3tBClC-9} \nwixadd{\nwixu }{Module}{NW197huq-3tBClC-9} \newsublabel{NW197huq-3PSmw6-1}{{}{40}} \nwixadd{\nwixu }{impossible}{NW197huq-3PSmw6-1} \nwixadd{\nwixu }{strlen}{NW197huq-3PSmw6-1} \newsublabel{NW197huq-Xqfpb-3}{{}{41}} \nwixadd{\nwixu }{append}{NW197huq-Xqfpb-3} \nwixadd{\nwixu }{Location}{NW197huq-Xqfpb-3} \nwixadd{\nwixu }{modpart}{NW197huq-Xqfpb-3} \nwixadd{\nwixu }{Module}{NW197huq-Xqfpb-3} \nwixadd{\nwixu }{module}{NW197huq-Xqfpb-3} \nwixadd{\nwixu }{newmodpart}{NW197huq-Xqfpb-3} \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.2}Expanding modules}{41}} \newsublabel{NW197huq-2CTHMJ-E}{{}{41}} \nwixadd{\nwixd }{Parent}{NW197huq-2CTHMJ-E} \nwixadd{\nwixu }{expand}{NW197huq-2CTHMJ-E} \nwixadd{\nwixu }{Module}{NW197huq-2CTHMJ-E} \nwixadd{\nwixu }{module}{NW197huq-2CTHMJ-E} \newsublabel{NW197huq-4HXZlP-1}{{}{41}} \nwixadd{\nwixd }{lastfilename}{NW197huq-4HXZlP-1} \nwixadd{\nwixd }{lastlineno}{NW197huq-4HXZlP-1} \newsublabel{NW197huq-2CTHMJ-F}{{}{41}} \newsublabel{NW197huq-3tBClC-A}{{}{41}} \nwixadd{\nwixu }{lastfilename}{NW197huq-3tBClC-A} \nwixadd{\nwixu }{lastlineno}{NW197huq-3tBClC-A} \newsublabel{NW197huq-3tBClC-B}{{}{42}} \nwixadd{\nwixd }{expand}{NW197huq-3tBClC-B} \nwixadd{\nwixu }{impossible}{NW197huq-3tBClC-B} \nwixadd{\nwixu }{modpart}{NW197huq-3tBClC-B} \nwixadd{\nwixu }{Module}{NW197huq-3tBClC-B} \nwixadd{\nwixu }{module}{NW197huq-3tBClC-B} \nwixadd{\nwixu }{Parent}{NW197huq-3tBClC-B} \newsublabel{NW197huq-1oQu9J-1}{{}{42}} \nwixadd{\nwixu }{indent:unfor}{NW197huq-1oQu9J-1} \nwixadd{\nwixu }{limitcolumn}{NW197huq-1oQu9J-1} \nwixadd{\nwixu }{printloc}{NW197huq-1oQu9J-1} \newsublabel{NW197huq-1kkVka-1}{{}{43}} \nwixadd{\nwixu }{lastlineno}{NW197huq-1kkVka-1} \newsublabel{NW197huq-NZ0hI-1}{{}{43}} \nwixadd{\nwixu }{errormsg}{NW197huq-NZ0hI-1} \nwixadd{\nwixu }{expand}{NW197huq-NZ0hI-1} \nwixadd{\nwixu }{indent:unfor}{NW197huq-NZ0hI-1} \nwixadd{\nwixu }{limitcolumn}{NW197huq-NZ0hI-1} \nwixadd{\nwixu }{lookup}{NW197huq-NZ0hI-1} \newsublabel{NW197huq-3acOoq-1}{{}{43}} \newsublabel{NW197huq-3KsPFt-1}{{}{43}} \nwixadd{\nwixu }{errormsg}{NW197huq-3KsPFt-1} \nwixadd{\nwixu }{seekcycle}{NW197huq-3KsPFt-1} \newsublabel{NW197huq-Xqfpb-4}{{}{43}} \nwixadd{\nwixu }{Module}{NW197huq-Xqfpb-4} \nwixadd{\nwixu }{Parent}{NW197huq-Xqfpb-4} \nwixadd{\nwixu }{seekcycle}{NW197huq-Xqfpb-4} \newsublabel{NW197huq-3tBClC-C}{{}{44}} \nwixadd{\nwixd }{seekcycle}{NW197huq-3tBClC-C} \nwixadd{\nwixu }{Module}{NW197huq-3tBClC-C} \nwixadd{\nwixu }{Parent}{NW197huq-3tBClC-C} \newsublabel{NW197huq-2CTHMJ-G}{{}{44}} \nwixadd{\nwixu }{Location}{NW197huq-2CTHMJ-G} \nwixadd{\nwixu }{printloc}{NW197huq-2CTHMJ-G} \newsublabel{NW197huq-3tBClC-D}{{}{44}} \nwixadd{\nwixd }{printloc}{NW197huq-3tBClC-D} \nwixadd{\nwixu }{lastfilename}{NW197huq-3tBClC-D} \nwixadd{\nwixu }{lastlineno}{NW197huq-3tBClC-D} \nwixadd{\nwixu }{Location}{NW197huq-3tBClC-D} \newsublabel{NW197huq-1C9Xt9-1}{{}{45}} \newsublabel{NW197huq-4ezFCO-1}{{}{45}} \nwixadd{\nwixu }{errormsg}{NW197huq-4ezFCO-1} \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.3}Other operations on completed modules}{45}} \newsublabel{NW197huq-2CTHMJ-H}{{}{45}} \nwixadd{\nwixu }{Module}{NW197huq-2CTHMJ-H} \nwixadd{\nwixu }{module}{NW197huq-2CTHMJ-H} \nwixadd{\nwixu }{remove:unfinal:unnewline}{NW197huq-2CTHMJ-H} \newsublabel{NW197huq-3tBClC-E}{{}{46}} \nwixadd{\nwixd }{remove:unfinal:unnewline}{NW197huq-3tBClC-E} \nwixadd{\nwixu }{impossible}{NW197huq-3tBClC-E} \nwixadd{\nwixu }{modpart}{NW197huq-3tBClC-E} \nwixadd{\nwixu }{Module}{NW197huq-3tBClC-E} \nwixadd{\nwixu }{module}{NW197huq-3tBClC-E} \@writefile{toc}{\contentsline {subsection}{\numberline {2.6}Support for looking up modules by name}{47}} \newsublabel{NW3x6FpU-2CTHMJ-I}{{}{47}} \nwixadd{\nwixu }{apply:uneach:unmodule}{NW3x6FpU-2CTHMJ-I} \nwixadd{\nwixu }{insert}{NW3x6FpU-2CTHMJ-I} \nwixadd{\nwixu }{lookup}{NW3x6FpU-2CTHMJ-I} \nwixadd{\nwixu }{Module}{NW3x6FpU-2CTHMJ-I} \nwixadd{\nwixu }{module}{NW3x6FpU-2CTHMJ-I} \newsublabel{NW3x6FpU-1p0Y9w-I}{{}{47}} \nwixadd{\nwixu }{Module}{NW3x6FpU-1p0Y9w-I} \nwixadd{\nwixu }{root}{NW3x6FpU-1p0Y9w-I} \newsublabel{NW3x6FpU-1p0Y9w-J}{{}{48}} \nwixadd{\nwixd }{insert}{NW3x6FpU-1p0Y9w-J} \nwixadd{\nwixu }{Module}{NW3x6FpU-1p0Y9w-J} \nwixadd{\nwixu }{newmodule}{NW3x6FpU-1p0Y9w-J} \nwixadd{\nwixu }{root}{NW3x6FpU-1p0Y9w-J} \newsublabel{NW3x6FpU-4YDbIV-1}{{}{48}} \nwixadd{\nwixu }{checkptr}{NW3x6FpU-4YDbIV-1} \nwixadd{\nwixu }{malloc}{NW3x6FpU-4YDbIV-1} \newsublabel{NW3x6FpU-Xqfpb-5}{{}{48}} \nwixadd{\nwixu }{Module}{NW3x6FpU-Xqfpb-5} \newsublabel{NW3x6FpU-1p0Y9w-K}{{}{49}} \nwixadd{\nwixd }{lookup}{NW3x6FpU-1p0Y9w-K} \nwixadd{\nwixu }{Module}{NW3x6FpU-1p0Y9w-K} \nwixadd{\nwixu }{root}{NW3x6FpU-1p0Y9w-K} \newsublabel{NW3x6FpU-1p0Y9w-L}{{}{49}} \nwixadd{\nwixd }{apply:uneach:unmodule}{NW3x6FpU-1p0Y9w-L} \nwixadd{\nwixu }{Module}{NW3x6FpU-1p0Y9w-L} \nwixadd{\nwixu }{root}{NW3x6FpU-1p0Y9w-L} \@writefile{toc}{\contentsline {section}{\numberline {3}Scanning for uses of identifiers}{50}} \@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Main program}{50}} \newsublabel{NWvzxmK-1p0Y9w-M}{{}{50}} \nwixadd{\nwixu }{getline}{NWvzxmK-1p0Y9w-M} \newsublabel{NWvzxmK-1p0Y9w-N}{{}{50}} \nwixadd{\nwixd }{ALPHANUM}{NWvzxmK-1p0Y9w-N} \nwixadd{\nwixd }{SYMBOLS}{NWvzxmK-1p0Y9w-N} \nwixadd{\nwixu }{Recognizer}{NWvzxmK-1p0Y9w-N} \newsublabel{NWvzxmK-1p0Y9w-O}{{}{50}} \newsublabel{NWvzxmK-1p0Y9w-P}{{}{51}} \nwixadd{\nwixu }{add:unuse:unmarkers}{NWvzxmK-1p0Y9w-P} \nwixadd{\nwixu }{ALPHANUM}{NWvzxmK-1p0Y9w-P} \nwixadd{\nwixu }{errorlevel}{NWvzxmK-1p0Y9w-P} \nwixadd{\nwixu }{errormsg}{NWvzxmK-1p0Y9w-P} \nwixadd{\nwixu }{new:unrecognizer}{NWvzxmK-1p0Y9w-P} \nwixadd{\nwixu }{stop:unadding}{NWvzxmK-1p0Y9w-P} \nwixadd{\nwixu }{SYMBOLS}{NWvzxmK-1p0Y9w-P} \newsublabel{NWvzxmK-3vzVcQ-1}{{}{51}} \nwixadd{\nwixu }{errormsg}{NWvzxmK-3vzVcQ-1} \nwixadd{\nwixu }{read:unids}{NWvzxmK-3vzVcQ-1} \newsublabel{NWvzxmK-XcW4Z-4}{{}{51}} \nwixadd{\nwixu }{read:unids}{NWvzxmK-XcW4Z-4} \newsublabel{NWvzxmK-1p0Y9w-Q}{{}{52}} \nwixadd{\nwixd }{read:unids}{NWvzxmK-1p0Y9w-Q} \nwixadd{\nwixu }{add:unident}{NWvzxmK-1p0Y9w-Q} \nwixadd{\nwixu }{getline}{NWvzxmK-1p0Y9w-Q} \nwixadd{\nwixu }{strlen}{NWvzxmK-1p0Y9w-Q} \newsublabel{NWvzxmK-1Xk0kh-1}{{}{52}} \nwixadd{\nwixu }{add:unident}{NWvzxmK-1Xk0kh-1} \nwixadd{\nwixu }{add:unuse:unmarkers}{NWvzxmK-1Xk0kh-1} \nwixadd{\nwixu }{getline}{NWvzxmK-1Xk0kh-1} \nwixadd{\nwixu }{is:unindex}{NWvzxmK-1Xk0kh-1} \nwixadd{\nwixu }{is:unkeyword}{NWvzxmK-1Xk0kh-1} \nwixadd{\nwixu }{stop:unadding}{NWvzxmK-1Xk0kh-1} \nwixadd{\nwixu }{strlen}{NWvzxmK-1Xk0kh-1} \newsublabel{NWvzxmK-1Lelvy-1}{{}{52}} \newsublabel{NWvzxmK-XcW4Z-5}{{}{52}} \nwixadd{\nwixu }{add:unuse:unmarkers}{NWvzxmK-XcW4Z-5} \newsublabel{NWvzxmK-1p0Y9w-R}{{}{53}} \nwixadd{\nwixd }{add:unuse:unmarkers}{NWvzxmK-1p0Y9w-R} \nwixadd{\nwixu }{getline}{NWvzxmK-1p0Y9w-R} \nwixadd{\nwixu }{is:unbegin}{NWvzxmK-1p0Y9w-R} \nwixadd{\nwixu }{is:unend}{NWvzxmK-1p0Y9w-R} \nwixadd{\nwixu }{is:unkeyword}{NWvzxmK-1p0Y9w-R} \nwixadd{\nwixu }{search:unfor:unident}{NWvzxmK-1p0Y9w-R} \nwixadd{\nwixu }{write:unindex:unuse}{NWvzxmK-1p0Y9w-R} \newsublabel{NWvzxmK-1p0Y9w-S}{{}{53}} \nwixadd{\nwixd }{write:unindex:unuse}{NWvzxmK-1p0Y9w-S} \nwixadd{\nwixu }{strlen}{NWvzxmK-1p0Y9w-S} \newsublabel{NWvzxmK-1p0Y9w-T}{{}{54}} \newsublabel{NWvzxmK-XcW4Z-6}{{}{54}} \nwixadd{\nwixu }{write:unindex:unuse}{NWvzxmK-XcW4Z-6} \newsublabel{NWvzxmK-3VTUJb-1}{{}{54}} \nwixadd{\nwixu }{errormsg}{NWvzxmK-3VTUJb-1} \newsublabel{NWvzxmK-3OlY6P-1}{{}{54}} \nwixadd{\nwixu }{errormsg}{NWvzxmK-3OlY6P-1} \citation{aho:efficient} \@writefile{toc}{\contentsline {subsection}{\numberline {3.2}An Efficient String Matcher (by Preston Briggs)}{55}} \newlabel{preston}{{3.2}{55}} \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.1}Introduction}{55}} \@writefile{toc}{\contentsline {paragraph}{Boilerplate}{55}} \newsublabel{NW1GWML1-1p0Y9w-U}{{}{55}} \newsublabel{NW1GWML1-2CTHMJ-J}{{}{55}} \newsublabel{NW1GWML1-35XJe9-1}{{}{55}} \nwixadd{\nwixd }{strchr}{NW1GWML1-35XJe9-1} \nwixadd{\nwixd }{strcpy}{NW1GWML1-35XJe9-1} \nwixadd{\nwixd }{strlen}{NW1GWML1-35XJe9-1} \newsublabel{NW1GWML1-35XJe9-2}{{}{55}} \nwixadd{\nwixd }{malloc}{NW1GWML1-35XJe9-2} \nwixadd{\nwixd }{calloc}{NW1GWML1-35XJe9-2} \nwixadd{\nwixd }{free}{NW1GWML1-35XJe9-2} \@writefile{toc}{\contentsline {paragraph}{External Interface}{55}} \newsublabel{NW1GWML1-2N1WHm-1}{{}{55}} \nwixadd{\nwixd }{new:unrecognizer}{NW1GWML1-2N1WHm-1} \nwixadd{\nwixu }{Recognizer}{NW1GWML1-2N1WHm-1} \newsublabel{NW1GWML1-4IzMMN-1}{{}{56}} \nwixadd{\nwixd }{Recognizer}{NW1GWML1-4IzMMN-1} \nwixadd{\nwixu }{recognizer}{NW1GWML1-4IzMMN-1} \newsublabel{NW1GWML1-2N1WHm-2}{{}{56}} \nwixadd{\nwixd }{add:unident}{NW1GWML1-2N1WHm-2} \nwixadd{\nwixd }{stop:unadding}{NW1GWML1-2N1WHm-2} \nwixadd{\nwixu }{Recognizer}{NW1GWML1-2N1WHm-2} \newsublabel{NW1GWML1-2N1WHm-3}{{}{56}} \nwixadd{\nwixd }{search:unfor:unident}{NW1GWML1-2N1WHm-3} \nwixadd{\nwixu }{Callback}{NW1GWML1-2N1WHm-3} \nwixadd{\nwixu }{Recognizer}{NW1GWML1-2N1WHm-3} \newsublabel{NW1GWML1-4IzMMN-2}{{}{56}} \nwixadd{\nwixd }{Callback}{NW1GWML1-4IzMMN-2} \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.2}Defining the Automata}{56}} \newsublabel{NW1GWML1-2eQ5X5-1}{{}{56}} \nwixadd{\nwixd }{Goto:unNode}{NW1GWML1-2eQ5X5-1} \nwixadd{\nwixd }{Move:unNode}{NW1GWML1-2eQ5X5-1} \nwixadd{\nwixu }{goto:unnode}{NW1GWML1-2eQ5X5-1} \nwixadd{\nwixu }{move:unnode}{NW1GWML1-2eQ5X5-1} \newsublabel{NW1GWML1-2eQ5X5-2}{{}{56}} \nwixadd{\nwixd }{Name:unNode}{NW1GWML1-2eQ5X5-2} \newsublabel{NW1GWML1-2eQ5X5-3}{{}{57}} \nwixadd{\nwixd }{move:unnode}{NW1GWML1-2eQ5X5-3} \nwixadd{\nwixu }{Goto:unNode}{NW1GWML1-2eQ5X5-3} \nwixadd{\nwixu }{Move:unNode}{NW1GWML1-2eQ5X5-3} \nwixadd{\nwixu }{state}{NW1GWML1-2eQ5X5-3} \newsublabel{NW1GWML1-2eQ5X5-4}{{}{57}} \nwixadd{\nwixd }{goto:unnode}{NW1GWML1-2eQ5X5-4} \nwixadd{\nwixu }{Goto:unNode}{NW1GWML1-2eQ5X5-4} \nwixadd{\nwixu }{Move:unNode}{NW1GWML1-2eQ5X5-4} \nwixadd{\nwixu }{Name:unNode}{NW1GWML1-2eQ5X5-4} \nwixadd{\nwixu }{state}{NW1GWML1-2eQ5X5-4} \newsublabel{NW1GWML1-2eQ5X5-5}{{}{57}} \nwixadd{\nwixd }{recognizer}{NW1GWML1-2eQ5X5-5} \nwixadd{\nwixd }{root}{NW1GWML1-2eQ5X5-5} \nwixadd{\nwixd }{depths}{NW1GWML1-2eQ5X5-5} \nwixadd{\nwixd }{max:undepth}{NW1GWML1-2eQ5X5-5} \nwixadd{\nwixd }{alphas}{NW1GWML1-2eQ5X5-5} \nwixadd{\nwixd }{syms}{NW1GWML1-2eQ5X5-5} \nwixadd{\nwixu }{Goto:unNode}{NW1GWML1-2eQ5X5-5} \@writefile{toc}{\contentsline {paragraph}{A Utility Function}{58}} \newsublabel{NW1GWML1-RUfgA-1}{{}{58}} \nwixadd{\nwixd }{goto:unlookup}{NW1GWML1-RUfgA-1} \nwixadd{\nwixu }{Goto:unNode}{NW1GWML1-RUfgA-1} \nwixadd{\nwixu }{Move:unNode}{NW1GWML1-RUfgA-1} \nwixadd{\nwixu }{state}{NW1GWML1-RUfgA-1} \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.3}Building the Automata}{58}} \newsublabel{NW1GWML1-RUfgA-2}{{}{58}} \nwixadd{\nwixd }{Recognizer}{NW1GWML1-RUfgA-2} \nwixadd{\nwixu }{alphas}{NW1GWML1-RUfgA-2} \nwixadd{\nwixu }{calloc}{NW1GWML1-RUfgA-2} \nwixadd{\nwixu }{depths}{NW1GWML1-RUfgA-2} \nwixadd{\nwixu }{Goto:unNode}{NW1GWML1-RUfgA-2} \nwixadd{\nwixu }{max:undepth}{NW1GWML1-RUfgA-2} \nwixadd{\nwixu }{new:unrecognizer}{NW1GWML1-RUfgA-2} \nwixadd{\nwixu }{recognizer}{NW1GWML1-RUfgA-2} \nwixadd{\nwixu }{syms}{NW1GWML1-RUfgA-2} \@writefile{toc}{\contentsline {paragraph}{Building the Goto Table}{59}} \newsublabel{NW1GWML1-RUfgA-3}{{}{59}} \nwixadd{\nwixd }{add:unident}{NW1GWML1-RUfgA-3} \nwixadd{\nwixu }{goto:unlookup}{NW1GWML1-RUfgA-3} \nwixadd{\nwixu }{Goto:unNode}{NW1GWML1-RUfgA-3} \nwixadd{\nwixu }{Recognizer}{NW1GWML1-RUfgA-3} \nwixadd{\nwixu }{root}{NW1GWML1-RUfgA-3} \newsublabel{NW1GWML1-1KNWWx-1}{{}{59}} \nwixadd{\nwixu }{calloc}{NW1GWML1-1KNWWx-1} \nwixadd{\nwixu }{depths}{NW1GWML1-1KNWWx-1} \nwixadd{\nwixu }{Goto:unNode}{NW1GWML1-1KNWWx-1} \nwixadd{\nwixu }{root}{NW1GWML1-1KNWWx-1} \newsublabel{NW1GWML1-reYru-1}{{}{60}} \nwixadd{\nwixu }{calloc}{NW1GWML1-reYru-1} \nwixadd{\nwixu }{depths}{NW1GWML1-reYru-1} \nwixadd{\nwixu }{Goto:unNode}{NW1GWML1-reYru-1} \nwixadd{\nwixu }{malloc}{NW1GWML1-reYru-1} \nwixadd{\nwixu }{max:undepth}{NW1GWML1-reYru-1} \nwixadd{\nwixu }{Move:unNode}{NW1GWML1-reYru-1} \nwixadd{\nwixu }{state}{NW1GWML1-reYru-1} \newsublabel{NW1GWML1-1CbgKP-1}{{}{60}} \nwixadd{\nwixu }{calloc}{NW1GWML1-1CbgKP-1} \nwixadd{\nwixu }{depths}{NW1GWML1-1CbgKP-1} \nwixadd{\nwixu }{free}{NW1GWML1-1CbgKP-1} \nwixadd{\nwixu }{Goto:unNode}{NW1GWML1-1CbgKP-1} \nwixadd{\nwixu }{max:undepth}{NW1GWML1-1CbgKP-1} \newsublabel{NW1GWML1-1lKQMu-1}{{}{60}} \nwixadd{\nwixu }{malloc}{NW1GWML1-1lKQMu-1} \nwixadd{\nwixu }{Name:unNode}{NW1GWML1-1lKQMu-1} \nwixadd{\nwixu }{strcpy}{NW1GWML1-1lKQMu-1} \nwixadd{\nwixu }{strlen}{NW1GWML1-1lKQMu-1} \@writefile{toc}{\contentsline {paragraph}{Building the Failure Functions}{61}} \newsublabel{NW1GWML1-RUfgA-4}{{}{61}} \nwixadd{\nwixd }{stop:unadding}{NW1GWML1-RUfgA-4} \nwixadd{\nwixu }{depths}{NW1GWML1-RUfgA-4} \nwixadd{\nwixu }{goto:unlookup}{NW1GWML1-RUfgA-4} \nwixadd{\nwixu }{Goto:unNode}{NW1GWML1-RUfgA-4} \nwixadd{\nwixu }{malloc}{NW1GWML1-RUfgA-4} \nwixadd{\nwixu }{max:undepth}{NW1GWML1-RUfgA-4} \nwixadd{\nwixu }{Move:unNode}{NW1GWML1-RUfgA-4} \nwixadd{\nwixu }{Name:unNode}{NW1GWML1-RUfgA-4} \nwixadd{\nwixu }{Recognizer}{NW1GWML1-RUfgA-4} \nwixadd{\nwixu }{root}{NW1GWML1-RUfgA-4} \nwixadd{\nwixu }{state}{NW1GWML1-RUfgA-4} \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.4}Using the Automata}{62}} \newsublabel{NW1GWML1-RUfgA-5}{{}{62}} \nwixadd{\nwixd }{search:unfor:unident}{NW1GWML1-RUfgA-5} \nwixadd{\nwixu }{Callback}{NW1GWML1-RUfgA-5} \nwixadd{\nwixu }{Goto:unNode}{NW1GWML1-RUfgA-5} \nwixadd{\nwixu }{Recognizer}{NW1GWML1-RUfgA-5} \nwixadd{\nwixu }{state}{NW1GWML1-RUfgA-5} \newsublabel{NW1GWML1-3ODbLM-1}{{}{62}} \nwixadd{\nwixu }{goto:unlookup}{NW1GWML1-3ODbLM-1} \nwixadd{\nwixu }{root}{NW1GWML1-3ODbLM-1} \nwixadd{\nwixu }{state}{NW1GWML1-3ODbLM-1} \newsublabel{NW1GWML1-2K0bFE-1}{{}{62}} \nwixadd{\nwixu }{Name:unNode}{NW1GWML1-2K0bFE-1} \nwixadd{\nwixu }{reject:unmatch}{NW1GWML1-2K0bFE-1} \nwixadd{\nwixu }{state}{NW1GWML1-2K0bFE-1} \nwixadd{\nwixu }{strlen}{NW1GWML1-2K0bFE-1} \@writefile{toc}{\contentsline {paragraph}{Rejecting Matches}{63}} \newsublabel{NW1GWML1-RUfgA-6}{{}{63}} \nwixadd{\nwixd }{reject:unmatch}{NW1GWML1-RUfgA-6} \nwixadd{\nwixu }{alphas}{NW1GWML1-RUfgA-6} \nwixadd{\nwixu }{Recognizer}{NW1GWML1-RUfgA-6} \nwixadd{\nwixu }{strchr}{NW1GWML1-RUfgA-6} \nwixadd{\nwixu }{strlen}{NW1GWML1-RUfgA-6} \nwixadd{\nwixu }{syms}{NW1GWML1-RUfgA-6} \newsublabel{NW1GWML1-3GV72L-1}{{}{63}} \nwixadd{\nwixu }{Recognizer}{NW1GWML1-3GV72L-1} \nwixadd{\nwixu }{reject:unmatch}{NW1GWML1-3GV72L-1} \@writefile{toc}{\contentsline {section}{\numberline {4}Utility functions}{64}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Line-oriented input}{64}} \newsublabel{NWz7n8Q-1p0Y9w-V}{{}{64}} \nwixadd{\nwixd }{START:unSIZE}{NWz7n8Q-1p0Y9w-V} \nwixadd{\nwixd }{buf:unsize}{NWz7n8Q-1p0Y9w-V} \nwixadd{\nwixd }{buf1}{NWz7n8Q-1p0Y9w-V} \nwixadd{\nwixd }{buf2}{NWz7n8Q-1p0Y9w-V} \nwixadd{\nwixu }{getline}{NWz7n8Q-1p0Y9w-V} \newsublabel{NWz7n8Q-2CTHMJ-K}{{}{64}} \nwixadd{\nwixu }{getline}{NWz7n8Q-2CTHMJ-K} \nwixadd{\nwixu }{getline:unexpand}{NWz7n8Q-2CTHMJ-K} \nwixadd{\nwixu }{tabsize}{NWz7n8Q-2CTHMJ-K} \newsublabel{NWz7n8Q-3tBClC-F}{{}{64}} \nwixadd{\nwixu }{buf1}{NWz7n8Q-3tBClC-F} \nwixadd{\nwixu }{buf2}{NWz7n8Q-3tBClC-F} \nwixadd{\nwixu }{buf:unsize}{NWz7n8Q-3tBClC-F} \nwixadd{\nwixu }{checkptr}{NWz7n8Q-3tBClC-F} \newsublabel{NWz7n8Q-3tBClC-G}{{}{65}} \nwixadd{\nwixd }{getline}{NWz7n8Q-3tBClC-G} \nwixadd{\nwixu }{buf1}{NWz7n8Q-3tBClC-G} \nwixadd{\nwixu }{buf:unsize}{NWz7n8Q-3tBClC-G} \nwixadd{\nwixu }{strlen}{NWz7n8Q-3tBClC-G} \newsublabel{NWz7n8Q-3tBClC-H}{{}{65}} \nwixadd{\nwixd }{getline:unexpand}{NWz7n8Q-3tBClC-H} \nwixadd{\nwixu }{buf1}{NWz7n8Q-3tBClC-H} \nwixadd{\nwixu }{buf2}{NWz7n8Q-3tBClC-H} \nwixadd{\nwixu }{getline}{NWz7n8Q-3tBClC-H} \nwixadd{\nwixu }{tabsize}{NWz7n8Q-3tBClC-H} \newsublabel{NWz7n8Q-1G2Dfn-1}{{}{66}} \nwixadd{\nwixu }{buf1}{NWz7n8Q-1G2Dfn-1} \nwixadd{\nwixu }{buf2}{NWz7n8Q-1G2Dfn-1} \nwixadd{\nwixu }{buf:unsize}{NWz7n8Q-1G2Dfn-1} \nwixadd{\nwixu }{checkptr}{NWz7n8Q-1G2Dfn-1} \nwixadd{\nwixu }{malloc}{NWz7n8Q-1G2Dfn-1} \newsublabel{NWz7n8Q-2vKfbp-1}{{}{66}} \nwixadd{\nwixu }{buf1}{NWz7n8Q-2vKfbp-1} \nwixadd{\nwixu }{buf:unsize}{NWz7n8Q-2vKfbp-1} \nwixadd{\nwixu }{columnwidth}{NWz7n8Q-2vKfbp-1} \@writefile{toc}{\contentsline {subsection}{\numberline {4.2}Managing indentation and columns}{67}} \newsublabel{NW39EaLO-2CTHMJ-L}{{}{67}} \nwixadd{\nwixd }{tabsize}{NW39EaLO-2CTHMJ-L} \nwixadd{\nwixu }{columnwidth}{NW39EaLO-2CTHMJ-L} \nwixadd{\nwixu }{indent:unfor}{NW39EaLO-2CTHMJ-L} \nwixadd{\nwixu }{limitcolumn}{NW39EaLO-2CTHMJ-L} \newsublabel{NW39EaLO-1p0Y9w-W}{{}{67}} \nwixadd{\nwixu }{tabsize}{NW39EaLO-1p0Y9w-W} \newsublabel{NW39EaLO-1p0Y9w-X}{{}{67}} \nwixadd{\nwixd }{columnwidth}{NW39EaLO-1p0Y9w-X} \nwixadd{\nwixu }{limitcolumn}{NW39EaLO-1p0Y9w-X} \newsublabel{NW39EaLO-1p0Y9w-Y}{{}{67}} \nwixadd{\nwixd }{limitcolumn}{NW39EaLO-1p0Y9w-Y} \nwixadd{\nwixu }{tabsize}{NW39EaLO-1p0Y9w-Y} \newsublabel{NW39EaLO-1p0Y9w-Z}{{}{68}} \nwixadd{\nwixd }{indent:unfor}{NW39EaLO-1p0Y9w-Z} \nwixadd{\nwixu }{tabsize}{NW39EaLO-1p0Y9w-Z} \@writefile{toc}{\contentsline {subsection}{\numberline {4.3}Error messages}{69}} \newsublabel{NW8TMKp-1p0Y9w-a}{{}{69}} \newsublabel{NW8TMKp-2CTHMJ-M}{{}{69}} \nwixadd{\nwixd }{errorlevel}{NW8TMKp-2CTHMJ-M} \newsublabel{NW8TMKp-3tBClC-I}{{}{69}} \nwixadd{\nwixu }{errorlevel}{NW8TMKp-3tBClC-I} \newsublabel{NW8TMKp-2CTHMJ-N}{{}{69}} \newsublabel{NW8TMKp-3tBClC-J}{{}{69}} \nwixadd{\nwixu }{errorlevel}{NW8TMKp-3tBClC-J} \newsublabel{NW8TMKp-2CTHMJ-O}{{}{70}} \nwixadd{\nwixd }{errormsg}{NW8TMKp-2CTHMJ-O} \nwixadd{\nwixd }{overflow}{NW8TMKp-2CTHMJ-O} \nwixadd{\nwixd }{impossible}{NW8TMKp-2CTHMJ-O} \nwixadd{\nwixd }{checkptr}{NW8TMKp-2CTHMJ-O} \nwixadd{\nwixu }{errorlevel}{NW8TMKp-2CTHMJ-O} \newsublabel{NW8TMKp-3tBClC-K}{{}{70}} \nwixadd{\nwixd }{errormsg}{NW8TMKp-3tBClC-K} \nwixadd{\nwixu }{errorlevel}{NW8TMKp-3tBClC-K} \newsublabel{NW8TMKp-2CTHMJ-P}{{}{70}} \nwixadd{\nwixu }{errorat}{NW8TMKp-2CTHMJ-P} \nwixadd{\nwixu }{errorlevel}{NW8TMKp-2CTHMJ-P} \newsublabel{NW8TMKp-3tBClC-L}{{}{70}} \nwixadd{\nwixd }{errorat}{NW8TMKp-3tBClC-L} \nwixadd{\nwixu }{errorlevel}{NW8TMKp-3tBClC-L} \newsublabel{NW8TMKp-3rbmth-1}{{}{70}} \nwixadd{\nwixu }{errorlevel}{NW8TMKp-3rbmth-1} \newsublabel{NW8TMKp-v3RI9-1}{{}{71}} \nwixadds{c}{{*}{NW42oEvI-1p0Y9w-1}{\nwixd {NW42oEvI-1p0Y9w-1}\nwixd {NW42oEvI-1p0Y9w-2}\nwixd {NW2WUCSj-1p0Y9w-3}\nwixd {NW1Xx3lK-1p0Y9w-4}\nwixd {NW1Xx3lK-1p0Y9w-5}\nwixd {NW28sivH-1p0Y9w-6}\nwixd {NW28sivH-1p0Y9w-7}\nwixd {NW28sivH-1p0Y9w-8}\nwixd {NW28sivH-1p0Y9w-9}\nwixd {NW28sivH-1p0Y9w-A}\nwixd {NW38qHjj-1p0Y9w-B}\nwixd {NW38qHjj-1p0Y9w-C}\nwixd {NW1FHtZ6-1p0Y9w-D}\nwixd {NW1FHtZ6-1p0Y9w-E}\nwixd {NW1FHtZ6-1p0Y9w-F}\nwixd {NW1FHtZ6-1p0Y9w-G}\nwixd {NW197huq-1p0Y9w-H}\nwixd {NW3x6FpU-1p0Y9w-I}\nwixd {NW3x6FpU-1p0Y9w-J}\nwixd {NW3x6FpU-1p0Y9w-K}\nwixd {NW3x6FpU-1p0Y9w-L}\nwixd {NWvzxmK-1p0Y9w-M}\nwixd {NWvzxmK-1p0Y9w-N}\nwixd {NWvzxmK-1p0Y9w-O}\nwixd {NWvzxmK-1p0Y9w-P}\nwixd {NWvzxmK-1p0Y9w-Q}\nwixd {NWvzxmK-1p0Y9w-R}\nwixd {NWvzxmK-1p0Y9w-S}\nwixd {NWvzxmK-1p0Y9w-T}\nwixd {NW1GWML1-1p0Y9w-U}\nwixd {NWz7n8Q-1p0Y9w-V}\nwixd {NW39EaLO-1p0Y9w-W}\nwixd {NW39EaLO-1p0Y9w-X}\nwixd {NW39EaLO-1p0Y9w-Y}\nwixd {NW39EaLO-1p0Y9w-Z}\nwixd {NW8TMKp-1p0Y9w-a}\nwixd {NW4RjFnp-1p0Y9w-b}}} \nwixadds{c}{{\code {}{\nwrbrace }\ else\ if\ (line\edoc {} contains \code {}@file\edoc {} or \code {}@line)\ {\nwlbrace }\edoc {} adjust \code {}loc\edoc {}}{NW28sivH-2WHYyW-1}{\nwixu {NW28sivH-1p0Y9w-8}\nwixu {NW28sivH-15Idtm-1}\nwixd {NW28sivH-2WHYyW-1}}} \nwixadds{c}{{add a trailing newline if one was missing}{NW42oEvI-4ME7dD-1}{\nwixu {NW42oEvI-41SWH7-1}\nwixd {NW42oEvI-4ME7dD-1}}} \nwixadds{c}{{add uses to stdin, grabbing defns from stdin}{NWvzxmK-1Xk0kh-1}{\nwixu {NWvzxmK-1p0Y9w-P}\nwixd {NWvzxmK-1Xk0kh-1}}} \nwixadds{c}{{Allocate new tnode in **rootptr}{NW3x6FpU-4YDbIV-1}{\nwixu {NW3x6FpU-1p0Y9w-J}\nwixd {NW3x6FpU-4YDbIV-1}}} \nwixadds{c}{{C functions}{NW2WUCSj-3tBClC-1}{\nwixu {NW2WUCSj-1p0Y9w-3}\nwixd {NW2WUCSj-3tBClC-1}\nwixd {NW2WUCSj-3tBClC-2}\nwixd {NW2WUCSj-3tBClC-3}\nwixd {NW2WUCSj-3tBClC-4}\nwixd {NW2WUCSj-3tBClC-5}\nwixd {NW197huq-3tBClC-6}\nwixu {NW197huq-1p0Y9w-H}\nwixd {NW197huq-3tBClC-7}\nwixd {NW197huq-3tBClC-8}\nwixd {NW197huq-3tBClC-9}\nwixd {NW197huq-3tBClC-A}\nwixd {NW197huq-3tBClC-B}\nwixd {NW197huq-3tBClC-C}\nwixd {NW197huq-3tBClC-D}\nwixd {NW197huq-3tBClC-E}\nwixu {NWz7n8Q-1p0Y9w-V}\nwixd {NWz7n8Q-3tBClC-F}\nwixd {NWz7n8Q-3tBClC-G}\nwixd {NWz7n8Q-3tBClC-H}\nwixu {NW8TMKp-1p0Y9w-a}\nwixd {NW8TMKp-3tBClC-I}\nwixd {NW8TMKp-3tBClC-J}\nwixd {NW8TMKp-3tBClC-K}\nwixd {NW8TMKp-3tBClC-L}}} \nwixadds{c}{{complain about \code {}filename\edoc {} and \code {}return\edoc {}}{NW1FHtZ6-xCw6e-1}{\nwixu {NW1FHtZ6-1p0Y9w-G}\nwixd {NW1FHtZ6-xCw6e-1}}} \nwixadds{c}{{complain about bad format character}{NW197huq-4ezFCO-1}{\nwixu {NW197huq-1C9Xt9-1}\nwixd {NW197huq-4ezFCO-1}}} \nwixadds{c}{{complain about opening temp file and exit}{NWvzxmK-3VTUJb-1}{\nwixu {NWvzxmK-1Xk0kh-1}\nwixd {NWvzxmK-3VTUJb-1}}} \nwixadds{c}{{complain about writing temp file and exit}{NWvzxmK-3OlY6P-1}{\nwixu {NWvzxmK-1Xk0kh-1}\nwixd {NWvzxmK-3OlY6P-1}}} \nwixadds{c}{{complain and \code {}return\edoc {} if \code {}root\ ==\ NULL\edoc {}}{NW1FHtZ6-2zSbIC-1}{\nwixu {NW1FHtZ6-1p0Y9w-G}\nwixd {NW1FHtZ6-2zSbIC-1}}} \nwixadds{c}{{complain and correct unmatched open quote, if any}{NW42oEvI-pCoxP-1}{\nwixu {NW42oEvI-41SWH7-1}\nwixd {NW42oEvI-pCoxP-1}}} \nwixadds{c}{{complain of botched code chunk}{NW28sivH-PzgWW-1}{\nwixu {NW28sivH-1p0Y9w-8}\nwixd {NW28sivH-PzgWW-1}}} \nwixadds{c}{{complain of unescaped @<< in documentation}{NW42oEvI-dWoVE-1}{\nwixu {NW42oEvI-2nF6qj-7}\nwixd {NW42oEvI-dWoVE-1}}} \nwixadds{c}{{conversion state machine}{NW42oEvI-2nF6qj-1}{\nwixu {NW42oEvI-41SWH7-1}\nwixd {NW42oEvI-2nF6qj-1}\nwixd {NW42oEvI-2nF6qj-2}\nwixd {NW42oEvI-2nF6qj-3}\nwixd {NW42oEvI-2nF6qj-4}\nwixd {NW42oEvI-2nF6qj-5}\nwixd {NW42oEvI-2nF6qj-6}\nwixd {NW42oEvI-2nF6qj-7}\nwixd {NW42oEvI-2nF6qj-8}\nwixd {NW42oEvI-2nF6qj-9}\nwixd {NW42oEvI-2nF6qj-A}\nwixd {NW42oEvI-2nF6qj-B}\nwixd {NW42oEvI-2nF6qj-C}\nwixd {NW42oEvI-2nF6qj-D}\nwixd {NW42oEvI-2nF6qj-E}\nwixd {NW42oEvI-2nF6qj-F}\nwixd {NW42oEvI-2nF6qj-G}\nwixd {NW42oEvI-2nF6qj-H}\nwixd {NW42oEvI-2nF6qj-I}\nwixd {NW42oEvI-2nF6qj-J}\nwixd {NW42oEvI-2nF6qj-K}\nwixd {NW42oEvI-2nF6qj-L}\nwixd {NW42oEvI-2nF6qj-M}}} \nwixadds{c}{{copy all lines from \code {}in\edoc {} to \code {}out\edoc {}, adding markup}{NW42oEvI-41SWH7-1}{\nwixu {NW42oEvI-1p0Y9w-1}\nwixd {NW42oEvI-41SWH7-1}}} \nwixadds{c}{{copy module name into \code {}modname\edoc {}}{NW28sivH-32nMDL-1}{\nwixu {NW28sivH-1p0Y9w-8}\nwixd {NW28sivH-32nMDL-1}}} \nwixadds{c}{{Create a new goto entry and attach to \code {}q\edoc {}'s move list}{NW1GWML1-reYru-1}{\nwixu {NW1GWML1-RUfgA-3}\nwixd {NW1GWML1-reYru-1}}} \nwixadds{c}{{Create an entry for \code {}root[c]\edoc {}}{NW1GWML1-1KNWWx-1}{\nwixu {NW1GWML1-RUfgA-3}\nwixd {NW1GWML1-1KNWWx-1}}} \nwixadds{c}{{crock for non-ANSI machines}{NW8TMKp-v3RI9-1}{\nwixd {NW8TMKp-v3RI9-1}}} \nwixadds{c}{{data definitions}{NW2WUCSj-LvGMf-1}{\nwixu {NW2WUCSj-1p0Y9w-3}\nwixd {NW2WUCSj-LvGMf-1}\nwixd {NW2WUCSj-LvGMf-2}}} \nwixadds{c}{{declarations for conversion engine}{NW42oEvI-33VoO2-1}{\nwixu {NW42oEvI-41SWH7-1}\nwixd {NW42oEvI-33VoO2-1}}} \nwixadds{c}{{dot arcs}{NW42oEvI-2hqJzA-1}{\nwixd {NW42oEvI-2hqJzA-1}\nwixd {NW42oEvI-2hqJzA-2}\nwixd {NW42oEvI-2hqJzA-3}\nwixd {NW42oEvI-2hqJzA-4}\nwixd {NW42oEvI-2hqJzA-5}\nwixd {NW42oEvI-2hqJzA-6}\nwixd {NW42oEvI-2hqJzA-7}\nwixd {NW42oEvI-2hqJzA-8}\nwixd {NW42oEvI-2hqJzA-9}\nwixd {NW42oEvI-2hqJzA-A}\nwixd {NW42oEvI-2hqJzA-B}\nwixd {NW42oEvI-2hqJzA-C}\nwixd {NW42oEvI-2hqJzA-D}\nwixd {NW42oEvI-2hqJzA-E}\nwixd {NW42oEvI-2hqJzA-F}\nwixd {NW42oEvI-2hqJzA-G}\nwixd {NW42oEvI-2hqJzA-H}\nwixd {NW42oEvI-2hqJzA-I}\nwixd {NW42oEvI-2hqJzA-J}\nwixd {NW42oEvI-2hqJzA-K}\nwixd {NW42oEvI-2hqJzA-L}\nwixd {NW42oEvI-2hqJzA-M}\nwixu {NW42oEvI-4TXvFF-1}}} \nwixadds{c}{{Double the size of the \code {}depths\edoc {} array}{NW1GWML1-1CbgKP-1}{\nwixu {NW1GWML1-reYru-1}\nwixd {NW1GWML1-1CbgKP-1}}} \nwixadds{c}{{emit \code {}p\edoc {} to \code {}s\edoc {} as text}{NW42oEvI-3p7a7y-1}{\nwixu {NW42oEvI-VAZsu-1}\nwixu {NW42oEvI-2nF6qj-8}\nwixu {NW42oEvI-2nF6qj-E}\nwixu {NW42oEvI-2nF6qj-F}\nwixd {NW42oEvI-3p7a7y-1}}} \nwixadds{c}{{emit \code {}p\edoc {} to \code {}s\edoc {} as use}{NW42oEvI-39aIQr-1}{\nwixu {NW42oEvI-2nF6qj-M}\nwixd {NW42oEvI-39aIQr-1}}} \nwixadds{c}{{emit index definitions and index newline}{NW42oEvI-3ZQ5vb-1}{\nwixu {NW42oEvI-41SWH7-1}\nwixd {NW42oEvI-3ZQ5vb-1}}} \nwixadds{c}{{emit text and goto \code {}done{\_}converting\edoc {} if at end of line}{NW42oEvI-VAZsu-1}{\nwixd {NW42oEvI-VAZsu-1}\nwixu {NW42oEvI-2nF6qj-1}\nwixu {NW42oEvI-2nF6qj-9}}} \nwixadds{c}{{error exit from \code {}starts{\_}code\edoc {}}{NW2WUCSj-2UCW9v-1}{\nwixu {NW2WUCSj-3tBClC-4}\nwixd {NW2WUCSj-2UCW9v-1}}} \nwixadds{c}{{Error exit from getmodname}{NW2WUCSj-1t5WWt-1}{\nwixu {NW2WUCSj-3tBClC-4}\nwixd {NW2WUCSj-1t5WWt-1}}} \nwixadds{c}{{expand \code {}root\edoc {} onto \code {}fp\edoc {} and close the file}{NW1FHtZ6-2mSwxI-1}{\nwixu {NW1FHtZ6-1p0Y9w-G}\nwixd {NW1FHtZ6-2mSwxI-1}}} \nwixadds{c}{{expand a module}{NW197huq-NZ0hI-1}{\nwixu {NW197huq-3tBClC-B}\nwixd {NW197huq-NZ0hI-1}}} \nwixadds{c}{{Exported prototypes}{NW1GWML1-2N1WHm-1}{\nwixu {NW1GWML1-2CTHMJ-J}\nwixd {NW1GWML1-2N1WHm-1}\nwixd {NW1GWML1-2N1WHm-2}\nwixd {NW1GWML1-2N1WHm-3}}} \nwixadds{c}{{Exported type definitions}{NW1GWML1-4IzMMN-1}{\nwixu {NW1GWML1-2CTHMJ-J}\nwixd {NW1GWML1-4IzMMN-1}\nwixd {NW1GWML1-4IzMMN-2}}} \nwixadds{c}{{fail if string \code {}temp\edoc {} contains a non-digit}{NW28sivH-17AmbF-1}{\nwixu {NW28sivH-h8INP-1}\nwixd {NW28sivH-17AmbF-1}}} \nwixadds{c}{{first time through, assert we got the length right}{NW2WUCSj-2XsoJE-1}{\nwixu {NW2WUCSj-3tBClC-2}\nwixd {NW2WUCSj-2XsoJE-1}}} \nwixadds{c}{{Function declarations}{NW28sivH-Xqfpb-1}{\nwixu {NW28sivH-1p0Y9w-7}\nwixd {NW28sivH-Xqfpb-1}\nwixd {NW28sivH-Xqfpb-2}\nwixu {NW197huq-1p0Y9w-H}\nwixd {NW197huq-Xqfpb-3}\nwixd {NW197huq-Xqfpb-4}\nwixu {NW3x6FpU-1p0Y9w-I}\nwixd {NW3x6FpU-Xqfpb-5}}} \nwixadds{c}{{Function definitions}{NW1GWML1-RUfgA-1}{\nwixu {NW1GWML1-1p0Y9w-U}\nwixd {NW1GWML1-RUfgA-1}\nwixd {NW1GWML1-RUfgA-2}\nwixd {NW1GWML1-RUfgA-3}\nwixd {NW1GWML1-RUfgA-4}\nwixd {NW1GWML1-RUfgA-5}\nwixd {NW1GWML1-RUfgA-6}}} \nwixadds{c}{{Goto the next state}{NW1GWML1-3ODbLM-1}{\nwixu {NW1GWML1-RUfgA-5}\nwixd {NW1GWML1-3ODbLM-1}}} \nwixadds{c}{{handle \code {}-t\edoc {}}{NW42oEvI-2FPTO7-1}{\nwixu {NW42oEvI-1p0Y9w-2}\nwixd {NW42oEvI-2FPTO7-1}}} \nwixadds{c}{{handle argument in argument \code {}i\edoc {}}{NW1Xx3lK-OPYcT-1}{\nwixu {NW1Xx3lK-lpC7q-1}\nwixd {NW1Xx3lK-OPYcT-1}}} \nwixadds{c}{{handle option in \code {}argv[i]\edoc {}}{NW1FHtZ6-ALiHk-1}{\nwixu {NW1FHtZ6-1p0Y9w-D}\nwixd {NW1FHtZ6-ALiHk-1}}} \nwixadds{c}{{handle option in argument \code {}i\edoc {}}{NW1Xx3lK-4T8Jmg-1}{\nwixu {NW1Xx3lK-lpC7q-1}\nwixd {NW1Xx3lK-4T8Jmg-1}}} \nwixadds{c}{{header}{NW2WUCSj-2CTHMJ-1}{\nwixd {NW2WUCSj-2CTHMJ-1}\nwixd {NW2WUCSj-2CTHMJ-2}\nwixd {NW2WUCSj-2CTHMJ-3}\nwixd {NW2WUCSj-2CTHMJ-4}\nwixd {NW2WUCSj-2CTHMJ-5}\nwixd {NW2WUCSj-2CTHMJ-6}\nwixd {NW28sivH-2CTHMJ-7}\nwixd {NW28sivH-2CTHMJ-8}\nwixd {NW38qHjj-2CTHMJ-9}\nwixd {NW197huq-2CTHMJ-A}\nwixd {NW197huq-2CTHMJ-B}\nwixd {NW197huq-2CTHMJ-C}\nwixd {NW197huq-2CTHMJ-D}\nwixd {NW197huq-2CTHMJ-E}\nwixd {NW197huq-2CTHMJ-F}\nwixd {NW197huq-2CTHMJ-G}\nwixd {NW197huq-2CTHMJ-H}\nwixd {NW3x6FpU-2CTHMJ-I}\nwixu {NW1GWML1-1p0Y9w-U}\nwixd {NW1GWML1-2CTHMJ-J}\nwixd {NWz7n8Q-2CTHMJ-K}\nwixd {NW39EaLO-2CTHMJ-L}\nwixd {NW8TMKp-2CTHMJ-M}\nwixd {NW8TMKp-2CTHMJ-N}\nwixd {NW8TMKp-2CTHMJ-O}\nwixd {NW8TMKp-2CTHMJ-P}\nwixd {NW4RjFnp-2CTHMJ-Q}}} \nwixadds{c}{{if \code {}buf1==NULL\edoc {}, allocate initial buffers}{NWz7n8Q-1G2Dfn-1}{\nwixu {NWz7n8Q-3tBClC-G}\nwixd {NWz7n8Q-1G2Dfn-1}}} \nwixadds{c}{{if \code {}columnwidth(buf1)\ >\ buf{\_}size\ -\ 1\edoc {}, allocate new buffers}{NWz7n8Q-2vKfbp-1}{\nwixu {NWz7n8Q-3tBClC-H}\nwixd {NWz7n8Q-2vKfbp-1}}} \nwixadds{c}{{if \code {}line==NULL\edoc {} die of premature end of file}{NW28sivH-11Sa4u-1}{\nwixu {NW28sivH-1p0Y9w-8}\nwixu {NW28sivH-1p0Y9w-A}\nwixd {NW28sivH-11Sa4u-1}}} \nwixadds{c}{{if \code {}mp\edoc {} is an ancestor, complain and return}{NW197huq-3KsPFt-1}{\nwixu {NW197huq-3tBClC-B}\nwixd {NW197huq-3KsPFt-1}}} \nwixadds{c}{{if file \code {}filename\edoc {} is as file \code {}tempname\edoc {}, remove \code {}tempname\edoc {} and \code {}return\edoc {}}{NW1FHtZ6-UqDlp-1}{\nwixu {NW1FHtZ6-1p0Y9w-G}\nwixd {NW1FHtZ6-UqDlp-1}}} \nwixadds{c}{{if the line begins with two \code {}ESC\edoc {}s, append one}{NW42oEvI-1OQulU-1}{\nwixu {NW42oEvI-41SWH7-1}\nwixd {NW42oEvI-1OQulU-1}}} \nwixadds{c}{{Include files}{NW1GWML1-35XJe9-1}{\nwixu {NW1GWML1-1p0Y9w-U}\nwixd {NW1GWML1-35XJe9-1}\nwixd {NW1GWML1-35XJe9-2}}} \nwixadds{c}{{initialize conversion engine}{NW42oEvI-4WAQwL-1}{\nwixu {NW42oEvI-41SWH7-1}\nwixd {NW42oEvI-4WAQwL-1}}} \nwixadds{c}{{local data}{NW197huq-4HXZlP-1}{\nwixu {NW197huq-1p0Y9w-H}\nwixd {NW197huq-4HXZlP-1}}} \nwixadds{c}{{local prototypes}{NW1FHtZ6-XcW4Z-1}{\nwixu {NW1FHtZ6-1p0Y9w-D}\nwixd {NW1FHtZ6-XcW4Z-1}\nwixd {NW1FHtZ6-XcW4Z-2}\nwixd {NW1FHtZ6-XcW4Z-3}\nwixu {NWvzxmK-1p0Y9w-O}\nwixd {NWvzxmK-XcW4Z-4}\nwixd {NWvzxmK-XcW4Z-5}\nwixd {NWvzxmK-XcW4Z-6}}} \nwixadds{c}{{macro definitions for conversion engine}{NW42oEvI-3CPdPU-1}{\nwixu {NW42oEvI-41SWH7-1}\nwixd {NW42oEvI-3CPdPU-1}\nwixd {NW42oEvI-3CPdPU-2}\nwixd {NW42oEvI-3CPdPU-3}}} \nwixadds{c}{{make \code {}buf\edoc {} big enough to hold all of \code {}line\edoc {}, plus two more characters}{NW42oEvI-1ruEsU-1}{\nwixu {NW42oEvI-4WAQwL-1}\nwixd {NW42oEvI-1ruEsU-1}}} \nwixadds{c}{{markup.dot}{NW42oEvI-4TXvFF-1}{\nwixd {NW42oEvI-4TXvFF-1}}} \nwixadds{c}{{Perform the callback for any outputs}{NW1GWML1-2K0bFE-1}{\nwixu {NW1GWML1-RUfgA-5}\nwixd {NW1GWML1-2K0bFE-1}}} \nwixadds{c}{{prepend opening angles to \code {}p\edoc {}}{NW42oEvI-3lowz3-1}{\nwixu {NW42oEvI-2nF6qj-G}\nwixu {NW42oEvI-2nF6qj-H}\nwixu {NW42oEvI-2nF6qj-J}\nwixd {NW42oEvI-3lowz3-1}}} \nwixadds{c}{{print a newline}{NW197huq-1kkVka-1}{\nwixu {NW197huq-3tBClC-B}\nwixd {NW197huq-1kkVka-1}}} \nwixadds{c}{{print a string}{NW197huq-1oQu9J-1}{\nwixu {NW197huq-3tBClC-B}\nwixd {NW197huq-1oQu9J-1}}} \nwixadds{c}{{process argument \code {}i\edoc {}---first pass}{NW1Xx3lK-lpC7q-1}{\nwixu {NW1Xx3lK-1p0Y9w-5}\nwixd {NW1Xx3lK-lpC7q-1}}} \nwixadds{c}{{Prototypes}{NW1GWML1-3GV72L-1}{\nwixu {NW1GWML1-1p0Y9w-U}\nwixd {NW1GWML1-3GV72L-1}}} \nwixadds{c}{{quit if we couldn't find the root}{NW28sivH-1Sj0ii-1}{\nwixu {NW28sivH-1p0Y9w-7}\nwixd {NW28sivH-1Sj0ii-1}}} \nwixadds{c}{{read identifiers to be defined from files named in \code {}argv\edoc {}}{NWvzxmK-3vzVcQ-1}{\nwixu {NWvzxmK-1p0Y9w-P}\nwixd {NWvzxmK-3vzVcQ-1}}} \nwixadds{c}{{read standard input into tree}{NW1FHtZ6-3hwtH-1}{\nwixu {NW1FHtZ6-1p0Y9w-D}\nwixd {NW1FHtZ6-3hwtH-1}}} \nwixadds{c}{{remember if a newline was missing from the last line}{NW42oEvI-1YApjM-1}{\nwixu {NW42oEvI-41SWH7-1}\nwixd {NW42oEvI-1YApjM-1}}} \nwixadds{c}{{repeat \code {}line\ =\ getline(in);\edoc {} until EOF, \code {}@defn\edoc {}, or \code {}@text\edoc {}}{NW28sivH-1UrHvY-1}{\nwixu {NW28sivH-1p0Y9w-8}\nwixd {NW28sivH-1UrHvY-1}}} \nwixadds{c}{{save line number from \code {}line\edoc {} (\code {}@line\ ...\edoc {}) into \code {}loc.lineno\edoc {}}{NW28sivH-h8INP-1}{\nwixu {NW28sivH-2WHYyW-1}\nwixd {NW28sivH-h8INP-1}}} \nwixadds{c}{{save name from \code {}line\edoc {} (\code {}@file\ ...\edoc {}) into \code {}loc.filename\edoc {}}{NW28sivH-1UFSXI-1}{\nwixu {NW28sivH-2WHYyW-1}\nwixd {NW28sivH-1UFSXI-1}}} \nwixadds{c}{{set \code {}errorlevel\edoc {} and print \code {}s\edoc {} with \code {}args\edoc {}}{NW8TMKp-3rbmth-1}{\nwixu {NW8TMKp-3tBClC-K}\nwixu {NW8TMKp-3tBClC-L}\nwixd {NW8TMKp-3rbmth-1}}} \nwixadds{c}{{set \code {}lfmt\edoc {} and \code {}filename\edoc {} from \code {}modname\edoc {}}{NW1FHtZ6-3NKyic-1}{\nwixu {NW1FHtZ6-1p0Y9w-G}\nwixd {NW1FHtZ6-3NKyic-1}}} \nwixadds{c}{{Set \code {}q->output\edoc {} to \code {}id\edoc {} (if not already present)}{NW1GWML1-1lKQMu-1}{\nwixu {NW1GWML1-RUfgA-3}\nwixd {NW1GWML1-1lKQMu-1}}} \nwixadds{c}{{set \code {}thismodule\ =\ {\nwlbrace }mp,\ parent{\nwrbrace }\edoc {}}{NW197huq-3acOoq-1}{\nwixu {NW197huq-3tBClC-B}\nwixd {NW197huq-3acOoq-1}}} \nwixadds{c}{{state and printing definitions}{NW42oEvI-3xpA5i-1}{\nwixd {NW42oEvI-3xpA5i-1}\nwixu {NW42oEvI-1p0Y9w-1}}} \nwixadds{c}{{strip final newline from p->contents}{NW197huq-3PSmw6-1}{\nwixu {NW197huq-3tBClC-8}\nwixd {NW197huq-3PSmw6-1}}} \nwixadds{c}{{track line numbers, then \code {}continue\edoc {} unless \code {}line\edoc {} is \code {}@begin\ code\edoc {}}{NW28sivH-15Idtm-1}{\nwixu {NW28sivH-1p0Y9w-8}\nwixd {NW28sivH-15Idtm-1}}} \nwixadds{c}{{Type definitions}{NW1GWML1-2eQ5X5-1}{\nwixu {NW1GWML1-1p0Y9w-U}\nwixd {NW1GWML1-2eQ5X5-1}\nwixd {NW1GWML1-2eQ5X5-2}\nwixd {NW1GWML1-2eQ5X5-3}\nwixd {NW1GWML1-2eQ5X5-4}\nwixd {NW1GWML1-2eQ5X5-5}}} \nwixadds{c}{{typedefs}{NWvzxmK-1Lelvy-1}{\nwixu {NWvzxmK-1p0Y9w-O}\nwixd {NWvzxmK-1Lelvy-1}}} \nwixadds{c}{{write out all conforming roots}{NW1FHtZ6-3FKsUP-1}{\nwixd {NW1FHtZ6-3FKsUP-1}\nwixu {NW1FHtZ6-ALiHk-1}}} \nwixadds{c}{{write out the line number pragma}{NW197huq-1C9Xt9-1}{\nwixu {NW197huq-3tBClC-D}\nwixd {NW197huq-1C9Xt9-1}}} \nwixadds{i}{{\nwixident {add{\_}ident}}{add:unident}} \nwixadds{i}{{\nwixident {add{\_}part}}{add:unpart}} \nwixadds{i}{{\nwixident {add{\_}use{\_}markers}}{add:unuse:unmarkers}} \nwixadds{i}{{\nwixident {add{\_}uses{\_}to{\_}usecounts}}{add:unuses:unto:unusecounts}} \nwixadds{i}{{\nwixident {addmodule}}{addmodule}} \nwixadds{i}{{\nwixident {addnewline}}{addnewline}} \nwixadds{i}{{\nwixident {addstring}}{addstring}} \nwixadds{i}{{\nwixident {ALPHANUM}}{ALPHANUM}} \nwixadds{i}{{\nwixident {alphas}}{alphas}} \nwixadds{i}{{\nwixident {append}}{append}} \nwixadds{i}{{\nwixident {apply{\_}each{\_}module}}{apply:uneach:unmodule}} \nwixadds{i}{{\nwixident {at{\_}sign}}{at:unsign}} \nwixadds{i}{{\nwixident {buf1}}{buf1}} \nwixadds{i}{{\nwixident {buf2}}{buf2}} \nwixadds{i}{{\nwixident {buf{\_}size}}{buf:unsize}} \nwixadds{i}{{\nwixident {Callback}}{Callback}} \nwixadds{i}{{\nwixident {calloc}}{calloc}} \nwixadds{i}{{\nwixident {checkptr}}{checkptr}} \nwixadds{i}{{\nwixident {columnwidth}}{columnwidth}} \nwixadds{i}{{\nwixident {depths}}{depths}} \nwixadds{i}{{\nwixident {emit{\_}if{\_}unused{\_}and{\_}conforming}}{emit:unif:ununused:unand:unconforming}} \nwixadds{i}{{\nwixident {emitfile}}{emitfile}} \nwixadds{i}{{\nwixident {errorat}}{errorat}} \nwixadds{i}{{\nwixident {errorlevel}}{errorlevel}} \nwixadds{i}{{\nwixident {errormsg}}{errormsg}} \nwixadds{i}{{\nwixident {expand}}{expand}} \nwixadds{i}{{\nwixident {find{\_}escaped}}{find:unescaped}} \nwixadds{i}{{\nwixident {first{\_}doc{\_}line}}{first:undoc:unline}} \nwixadds{i}{{\nwixident {free}}{free}} \nwixadds{i}{{\nwixident {getline}}{getline}} \nwixadds{i}{{\nwixident {getline{\_}expand}}{getline:unexpand}} \nwixadds{i}{{\nwixident {getmodname}}{getmodname}} \nwixadds{i}{{\nwixident {goto{\_}lookup}}{goto:unlookup}} \nwixadds{i}{{\nwixident {Goto{\_}Node}}{Goto:unNode}} \nwixadds{i}{{\nwixident {goto{\_}node}}{goto:unnode}} \nwixadds{i}{{\nwixident {impossible}}{impossible}} \nwixadds{i}{{\nwixident {indent{\_}for}}{indent:unfor}} \nwixadds{i}{{\nwixident {index}}{index}} \nwixadds{i}{{\nwixident {insert}}{insert}} \nwixadds{i}{{\nwixident {insist}}{insist}} \nwixadds{i}{{\nwixident {is{\_}begin}}{is:unbegin}} \nwixadds{i}{{\nwixident {is{\_}def}}{is:undef}} \nwixadds{i}{{\nwixident {is{\_}end}}{is:unend}} \nwixadds{i}{{\nwixident {is{\_}index}}{is:unindex}} \nwixadds{i}{{\nwixident {is{\_}keyword}}{is:unkeyword}} \nwixadds{i}{{\nwixident {lastfilename}}{lastfilename}} \nwixadds{i}{{\nwixident {lastlineno}}{lastlineno}} \nwixadds{i}{{\nwixident {limitcolumn}}{limitcolumn}} \nwixadds{i}{{\nwixident {Location}}{Location}} \nwixadds{i}{{\nwixident {lookup}}{lookup}} \nwixadds{i}{{\nwixident {malloc}}{malloc}} \nwixadds{i}{{\nwixident {mark}}{mark}} \nwixadds{i}{{\nwixident {markup}}{markup}} \nwixadds{i}{{\nwixident {max{\_}depth}}{max:undepth}} \nwixadds{i}{{\nwixident {mod{\_}end}}{mod:unend}} \nwixadds{i}{{\nwixident {mod{\_}start}}{mod:unstart}} \nwixadds{i}{{\nwixident {modpart}}{modpart}} \nwixadds{i}{{\nwixident {Module}}{Module}} \nwixadds{i}{{\nwixident {module}}{module}} \nwixadds{i}{{\nwixident {Move{\_}Node}}{Move:unNode}} \nwixadds{i}{{\nwixident {move{\_}node}}{move:unnode}} \nwixadds{i}{{\nwixident {Name{\_}Node}}{Name:unNode}} \nwixadds{i}{{\nwixident {new{\_}recognizer}}{new:unrecognizer}} \nwixadds{i}{{\nwixident {newmodpart}}{newmodpart}} \nwixadds{i}{{\nwixident {newmodule}}{newmodule}} \nwixadds{i}{{\nwixident {notangle}}{notangle}} \nwixadds{i}{{\nwixident {overflow}}{overflow}} \nwixadds{i}{{\nwixident {Parent}}{Parent}} \nwixadds{i}{{\nwixident {parttype}}{parttype}} \nwixadds{i}{{\nwixident {print{\_}index}}{print:unindex}} \nwixadds{i}{{\nwixident {print{\_}pair}}{print:unpair}} \nwixadds{i}{{\nwixident {print{\_}state}}{print:unstate}} \nwixadds{i}{{\nwixident {printloc}}{printloc}} \nwixadds{i}{{\nwixident {read{\_}defs}}{read:undefs}} \nwixadds{i}{{\nwixident {read{\_}ids}}{read:unids}} \nwixadds{i}{{\nwixident {Recognizer}}{Recognizer}} \nwixadds{i}{{\nwixident {recognizer}}{recognizer}} \nwixadds{i}{{\nwixident {reject{\_}match}}{reject:unmatch}} \nwixadds{i}{{\nwixident {remove{\_}def{\_}marker}}{remove:undef:unmarker}} \nwixadds{i}{{\nwixident {remove{\_}final{\_}newline}}{remove:unfinal:unnewline}} \nwixadds{i}{{\nwixident {root}}{root}} \nwixadds{i}{{\nwixident {search{\_}for{\_}ident}}{search:unfor:unident}} \nwixadds{i}{{\nwixident {seekcycle}}{seekcycle}} \nwixadds{i}{{\nwixident {START{\_}SIZE}}{START:unSIZE}} \nwixadds{i}{{\nwixident {starts{\_}code}}{starts:uncode}} \nwixadds{i}{{\nwixident {starts{\_}doc}}{starts:undoc}} \nwixadds{i}{{\nwixident {state}}{state}} \nwixadds{i}{{\nwixident {stop{\_}adding}}{stop:unadding}} \nwixadds{i}{{\nwixident {strchr}}{strchr}} \nwixadds{i}{{\nwixident {strcpy}}{strcpy}} \nwixadds{i}{{\nwixident {strlen}}{strlen}} \nwixadds{i}{{\nwixident {SYMBOLS}}{SYMBOLS}} \nwixadds{i}{{\nwixident {syms}}{syms}} \nwixadds{i}{{\nwixident {tabsize}}{tabsize}} \nwixadds{i}{{\nwixident {tempnam}}{tempnam}} \nwixadds{i}{{\nwixident {warn{\_}dots}}{warn:undots}} \nwixadds{i}{{\nwixident {write{\_}index{\_}use}}{write:unindex:unuse}} \bibstyle{plain} \bibdata{web} \bibcite{aho:efficient}{1} \newsublabel{NW4RjFnp-2CTHMJ-Q}{{}{72}} \newsublabel{NW4RjFnp-1p0Y9w-b}{{}{72}} \nwixadd{\nwixu }{checkptr}{NW4RjFnp-1p0Y9w-b} \nwixadd{\nwixu }{malloc}{NW4RjFnp-1p0Y9w-b} \nwixadd{\nwixu }{strcpy}{NW4RjFnp-1p0Y9w-b} \nwixadd{\nwixu }{strlen}{NW4RjFnp-1p0Y9w-b} \@writefile{toc}{\contentsline {section}{\numberline {5}List of all chunks from all files}{73}} \@writefile{toc}{\contentsline {section}{\numberline {6}Index}{75}}