1 * Summary: API to build regexp automata 2 * Description: the API to build regexp automata 3 * 4 * Copy: See Copyright for the status of this software. 5 * 6 * Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A. 7 8 /if not defined(XML_AUTOMATA_H__) 9 /define XML_AUTOMATA_H__ 10 11 /include "libxmlrpg/xmlversion" 12 13 /if defined(LIBXML_REGEXP_ENABLED) 14 /if defined(LIBXML_AUTOMATA_ENABLED) 15 16 /include "libxmlrpg/xmlTypesC" 17 /include "libxmlrpg/tree" 18 /include "libxmlrpg/xmlregexp" 19 20 * xmlAutomataPtr: 21 * 22 * A libxml automata description, It can be compiled into a regexp 23 24 d xmlAutomataPtr s * based(######typedef######) 25 26 * xmlAutomataStatePtr: 27 * 28 * A state int the automata description, 29 30 d xmlAutomataStatePtr... 31 d s * based(######typedef######) 32 33 * Building API 34 35 d xmlNewAutomata pr extproc('xmlNewAutomata') 36 d like(xmlAutomataPtr) 37 38 d xmlFreeAutomata... 39 d pr extproc('xmlFreeAutomata') 40 d am value like(xmlAutomataPtr) 41 42 d xmlAutomataGetInitState... 43 d pr extproc('xmlAutomataGetInitState') 44 d like(xmlAutomataStatePtr) 45 d am value like(xmlAutomataPtr) 46 47 d xmlAutomataSetFinalState... 48 d pr extproc('xmlAutomataSetFinalState') 49 d like(xmlCint) 50 d am value like(xmlAutomataPtr) 51 d state value like(xmlAutomataStatePtr) 52 53 d xmlAutomataNewState... 54 d pr extproc('xmlAutomataNewState') 55 d like(xmlAutomataStatePtr) 56 d am value like(xmlAutomataPtr) 57 58 d xmlAutomataNewTransition... 59 d pr extproc('xmlAutomataNewTransition') 60 d like(xmlAutomataStatePtr) 61 d am value like(xmlAutomataPtr) 62 d from value like(xmlAutomataStatePtr) 63 d to value like(xmlAutomataStatePtr) 64 d token * value options(*string) const xmlChar * 65 d data * value options(*string) void * 66 67 d xmlAutomataNewTransition2... 68 d pr extproc('xmlAutomataNewTransition2') 69 d like(xmlAutomataStatePtr) 70 d am value like(xmlAutomataPtr) 71 d from value like(xmlAutomataStatePtr) 72 d to value like(xmlAutomataStatePtr) 73 d token * value options(*string) const xmlChar * 74 d token2 * value options(*string) const xmlChar * 75 d data * value options(*string) void * 76 77 d xmlAutomataNewNegTrans... 78 d pr extproc('xmlAutomataNewNegTrans') 79 d like(xmlAutomataStatePtr) 80 d am value like(xmlAutomataPtr) 81 d from value like(xmlAutomataStatePtr) 82 d to value like(xmlAutomataStatePtr) 83 d token * value options(*string) const xmlChar * 84 d token2 * value options(*string) const xmlChar * 85 d data * value options(*string) void * 86 87 d xmlAutomataNewCountTrans... 88 d pr extproc('xmlAutomataNewCountTrans') 89 d like(xmlAutomataStatePtr) 90 d am value like(xmlAutomataPtr) 91 d from value like(xmlAutomataStatePtr) 92 d to value like(xmlAutomataStatePtr) 93 d token * value options(*string) const xmlChar * 94 d min value like(xmlCint) 95 d max value like(xmlCint) 96 d data * value options(*string) void * 97 98 d xmlAutomataNewCountTrans2... 99 d pr extproc('xmlAutomataNewCountTrans2') 100 d like(xmlAutomataStatePtr) 101 d am value like(xmlAutomataPtr) 102 d from value like(xmlAutomataStatePtr) 103 d to value like(xmlAutomataStatePtr) 104 d token * value options(*string) const xmlChar * 105 d token2 * value options(*string) const xmlChar * 106 d min value like(xmlCint) 107 d max value like(xmlCint) 108 d data * value options(*string) void * 109 110 d xmlAutomataNewOnceTrans... 111 d pr extproc('xmlAutomataNewOnceTrans') 112 d like(xmlAutomataStatePtr) 113 d am value like(xmlAutomataPtr) 114 d from value like(xmlAutomataStatePtr) 115 d to value like(xmlAutomataStatePtr) 116 d token * value options(*string) const xmlChar * 117 d min value like(xmlCint) 118 d max value like(xmlCint) 119 d data * value options(*string) void * 120 121 d xmlAutomataNewOnceTrans2... 122 d pr extproc('xmlAutomataNewOnceTrans2') 123 d like(xmlAutomataStatePtr) 124 d am value like(xmlAutomataPtr) 125 d from value like(xmlAutomataStatePtr) 126 d to value like(xmlAutomataStatePtr) 127 d token * value options(*string) const xmlChar * 128 d token2 * value options(*string) const xmlChar * 129 d min value like(xmlCint) 130 d max value like(xmlCint) 131 d data * value options(*string) void * 132 133 d xmlAutomataNewAllTrans... 134 d pr extproc('xmlAutomataNewAllTrans') 135 d like(xmlAutomataStatePtr) 136 d am value like(xmlAutomataPtr) 137 d from value like(xmlAutomataStatePtr) 138 d to value like(xmlAutomataStatePtr) 139 d lax value like(xmlCint) 140 141 d xmlAutomataNewEpsilon... 142 d pr extproc('xmlAutomataNewEpsilon') 143 d like(xmlAutomataStatePtr) 144 d am value like(xmlAutomataPtr) 145 d from value like(xmlAutomataStatePtr) 146 d to value like(xmlAutomataStatePtr) 147 148 d xmlAutomataNewCountedTrans... 149 d pr extproc('xmlAutomataNewCountedTrans') 150 d like(xmlAutomataStatePtr) 151 d am value like(xmlAutomataPtr) 152 d from value like(xmlAutomataStatePtr) 153 d to value like(xmlAutomataStatePtr) 154 d counter value like(xmlCint) 155 156 d xmlAutomataNewCounterTrans... 157 d pr extproc('xmlAutomataNewCounterTrans') 158 d like(xmlAutomataStatePtr) 159 d am value like(xmlAutomataPtr) 160 d from value like(xmlAutomataStatePtr) 161 d to value like(xmlAutomataStatePtr) 162 d counter value like(xmlCint) 163 164 d xmlAutomataNewCounter... 165 d pr extproc('xmlAutomataNewCounter') 166 d like(xmlCint) 167 d am value like(xmlAutomataPtr) 168 d min value like(xmlCint) 169 d max value like(xmlCint) 170 171 d xmlAutomataCompile... 172 d pr extproc('xmlAutomataCompile') 173 d like(xmlRegexpPtr) 174 d am value like(xmlAutomataPtr) 175 176 d xmlAutomataIsDeterminist... 177 d pr extproc('xmlAutomataIsDeterminist') 178 d like(xmlCint) 179 d am value like(xmlAutomataPtr) 180 181 /endif AUTOMATA_ENABLED 182 /endif LIBXML_REGEXP_ENABLD 183 /endif XML_AUTOMATA_H__ 184