Lines Matching refs:atom
215 xmlRegAtomPtr atom; member
253 xmlRegAtomPtr atom; member
358 static void xmlRegFreeAtom(xmlRegAtomPtr atom);
360 static int xmlRegCheckCharacter(xmlRegAtomPtr atom, int codepoint);
574 if ((trans->to == -1) || (trans->atom == NULL)) in xmlRegEpxFromParse()
576 atomno = stringRemap[trans->atom->no]; in xmlRegEpxFromParse()
577 if ((trans->atom->data != NULL) && (transdata == NULL)) { in xmlRegEpxFromParse()
600 i, j, trans->atom->no, trans->to, atomno, targetno); in xmlRegEpxFromParse()
616 i, j, trans->atom->no, trans->to, atomno, targetno); in xmlRegEpxFromParse()
622 trans->atom->data; in xmlRegEpxFromParse()
810 xmlRegFreeAtom(xmlRegAtomPtr atom) { in xmlRegFreeAtom() argument
813 if (atom == NULL) in xmlRegFreeAtom()
816 for (i = 0;i < atom->nbRanges;i++) in xmlRegFreeAtom()
817 xmlRegFreeRange(atom->ranges[i]); in xmlRegFreeAtom()
818 if (atom->ranges != NULL) in xmlRegFreeAtom()
819 xmlFree(atom->ranges); in xmlRegFreeAtom()
820 if ((atom->type == XML_REGEXP_STRING) && (atom->valuep != NULL)) in xmlRegFreeAtom()
821 xmlFree(atom->valuep); in xmlRegFreeAtom()
822 if ((atom->type == XML_REGEXP_STRING) && (atom->valuep2 != NULL)) in xmlRegFreeAtom()
823 xmlFree(atom->valuep2); in xmlRegFreeAtom()
824 if ((atom->type == XML_REGEXP_BLOCK_NAME) && (atom->valuep != NULL)) in xmlRegFreeAtom()
825 xmlFree(atom->valuep); in xmlRegFreeAtom()
826 xmlFree(atom); in xmlRegFreeAtom()
839 xmlRegCopyAtom(xmlRegParserCtxtPtr ctxt, xmlRegAtomPtr atom) { in xmlRegCopyAtom() argument
848 ret->type = atom->type; in xmlRegCopyAtom()
849 ret->quant = atom->quant; in xmlRegCopyAtom()
850 ret->min = atom->min; in xmlRegCopyAtom()
851 ret->max = atom->max; in xmlRegCopyAtom()
852 if (atom->nbRanges > 0) { in xmlRegCopyAtom()
856 atom->nbRanges); in xmlRegCopyAtom()
861 for (i = 0;i < atom->nbRanges;i++) { in xmlRegCopyAtom()
862 ret->ranges[i] = xmlRegCopyRange(ctxt, atom->ranges[i]); in xmlRegCopyAtom()
1086 xmlRegPrintAtom(FILE *output, xmlRegAtomPtr atom) { in xmlRegPrintAtom() argument
1088 if (atom == NULL) { in xmlRegPrintAtom()
1092 if (atom->neg) in xmlRegPrintAtom()
1094 xmlRegPrintAtomType(output, atom->type); in xmlRegPrintAtom()
1095 xmlRegPrintQuantType(output, atom->quant); in xmlRegPrintAtom()
1096 if (atom->quant == XML_REGEXP_QUANT_RANGE) in xmlRegPrintAtom()
1097 fprintf(output, "%d-%d ", atom->min, atom->max); in xmlRegPrintAtom()
1098 if (atom->type == XML_REGEXP_STRING) in xmlRegPrintAtom()
1099 fprintf(output, "'%s' ", (char *) atom->valuep); in xmlRegPrintAtom()
1100 if (atom->type == XML_REGEXP_CHARVAL) in xmlRegPrintAtom()
1101 fprintf(output, "char %c\n", atom->codepoint); in xmlRegPrintAtom()
1102 else if (atom->type == XML_REGEXP_RANGES) { in xmlRegPrintAtom()
1104 fprintf(output, "%d entries\n", atom->nbRanges); in xmlRegPrintAtom()
1105 for (i = 0; i < atom->nbRanges;i++) in xmlRegPrintAtom()
1106 xmlRegPrintRange(output, atom->ranges[i]); in xmlRegPrintAtom()
1107 } else if (atom->type == XML_REGEXP_SUBREG) { in xmlRegPrintAtom()
1108 fprintf(output, "start %d end %d\n", atom->start->no, atom->stop->no); in xmlRegPrintAtom()
1139 if (trans->atom == NULL) { in xmlRegPrintTrans()
1143 if (trans->atom->type == XML_REGEXP_CHARVAL) in xmlRegPrintTrans()
1144 fprintf(output, "char %c ", trans->atom->codepoint); in xmlRegPrintTrans()
1145 fprintf(output, "atom %d, to %d\n", trans->atom->no, trans->to); in xmlRegPrintTrans()
1189 if (ctxt->atom != NULL) { in xmlRegPrintCtxt()
1191 xmlRegPrintAtom(output, ctxt->atom); in xmlRegPrintCtxt()
1217 xmlRegAtomAddRange(xmlRegParserCtxtPtr ctxt, xmlRegAtomPtr atom, in xmlRegAtomAddRange() argument
1222 if (atom == NULL) { in xmlRegAtomAddRange()
1226 if (atom->type != XML_REGEXP_RANGES) { in xmlRegAtomAddRange()
1230 if (atom->maxRanges == 0) { in xmlRegAtomAddRange()
1231 atom->maxRanges = 4; in xmlRegAtomAddRange()
1232 atom->ranges = (xmlRegRangePtr *) xmlMalloc(atom->maxRanges * in xmlRegAtomAddRange()
1234 if (atom->ranges == NULL) { in xmlRegAtomAddRange()
1236 atom->maxRanges = 0; in xmlRegAtomAddRange()
1239 } else if (atom->nbRanges >= atom->maxRanges) { in xmlRegAtomAddRange()
1241 atom->maxRanges *= 2; in xmlRegAtomAddRange()
1242 tmp = (xmlRegRangePtr *) xmlRealloc(atom->ranges, atom->maxRanges * in xmlRegAtomAddRange()
1246 atom->maxRanges /= 2; in xmlRegAtomAddRange()
1249 atom->ranges = tmp; in xmlRegAtomAddRange()
1255 atom->ranges[atom->nbRanges++] = range; in xmlRegAtomAddRange()
1288 xmlRegAtomPush(xmlRegParserCtxtPtr ctxt, xmlRegAtomPtr atom) { in xmlRegAtomPush() argument
1289 if (atom == NULL) { in xmlRegAtomPush()
1314 atom->no = ctxt->nbAtoms; in xmlRegAtomPush()
1315 ctxt->atoms[ctxt->nbAtoms++] = atom; in xmlRegAtomPush()
1349 xmlRegAtomPtr atom, xmlRegStatePtr target, in xmlRegStateAddTrans() argument
1370 if ((trans->atom == atom) && in xmlRegStateAddTrans()
1411 else if (atom == NULL) in xmlRegStateAddTrans()
1413 else if (atom != NULL) in xmlRegStateAddTrans()
1414 xmlRegPrintAtom(stdout, atom); in xmlRegStateAddTrans()
1417 state->trans[state->nbTrans].atom = atom; in xmlRegStateAddTrans()
1545 xmlRegStatePtr to, xmlRegAtomPtr atom) { in xmlFAGenerateTransitions() argument
1548 if (atom == NULL) { in xmlFAGenerateTransitions()
1552 if (atom->type == XML_REGEXP_SUBREG) { in xmlFAGenerateTransitions()
1557 if (xmlRegAtomPush(ctxt, atom) < 0) { in xmlFAGenerateTransitions()
1560 if ((to != NULL) && (atom->stop != to) && in xmlFAGenerateTransitions()
1561 (atom->quant != XML_REGEXP_QUANT_RANGE)) { in xmlFAGenerateTransitions()
1565 xmlFAGenerateEpsilonTransition(ctxt, atom->stop, to); in xmlFAGenerateTransitions()
1567 } else if ((to == NULL) && (atom->quant != XML_REGEXP_QUANT_RANGE) && in xmlFAGenerateTransitions()
1568 (atom->quant != XML_REGEXP_QUANT_ONCE)) { in xmlFAGenerateTransitions()
1572 xmlFAGenerateEpsilonTransition(ctxt, atom->stop, to); in xmlFAGenerateTransitions()
1575 switch (atom->quant) { in xmlFAGenerateTransitions()
1577 atom->quant = XML_REGEXP_QUANT_ONCE; in xmlFAGenerateTransitions()
1584 xmlFAGenerateEpsilonTransition(ctxt, atom->start, 0); in xmlFAGenerateTransitions()
1585 xmlFAGenerateEpsilonTransition(ctxt, atom->stop, in xmlFAGenerateTransitions()
1588 xmlFAGenerateEpsilonTransition(ctxt, atom->start, to); in xmlFAGenerateTransitions()
1592 atom->quant = XML_REGEXP_QUANT_ONCE; in xmlFAGenerateTransitions()
1593 xmlFAGenerateEpsilonTransition(ctxt, atom->start, atom->stop); in xmlFAGenerateTransitions()
1594 xmlFAGenerateEpsilonTransition(ctxt, atom->stop, atom->start); in xmlFAGenerateTransitions()
1597 atom->quant = XML_REGEXP_QUANT_ONCE; in xmlFAGenerateTransitions()
1598 xmlFAGenerateEpsilonTransition(ctxt, atom->stop, atom->start); in xmlFAGenerateTransitions()
1620 if ((atom->min == 0) && (atom->start0 == NULL)) { in xmlFAGenerateTransitions()
1631 copy = xmlRegCopyAtom(ctxt, atom); in xmlFAGenerateTransitions()
1638 if (xmlFAGenerateTransitions(ctxt, atom->start, NULL, copy) in xmlFAGenerateTransitions()
1643 ctxt->counters[counter].min = atom->min - 1; in xmlFAGenerateTransitions()
1644 ctxt->counters[counter].max = atom->max - 1; in xmlFAGenerateTransitions()
1647 atom->stop, counter); in xmlFAGenerateTransitions()
1652 xmlFAGenerateEpsilonTransition(ctxt, atom->start, in xmlFAGenerateTransitions()
1661 ctxt->counters[counter].min = atom->min - 1; in xmlFAGenerateTransitions()
1662 ctxt->counters[counter].max = atom->max - 1; in xmlFAGenerateTransitions()
1664 xmlFAGenerateCountedEpsilonTransition(ctxt, atom->stop, in xmlFAGenerateTransitions()
1665 atom->start, counter); in xmlFAGenerateTransitions()
1667 xmlFAGenerateCountedTransition(ctxt, atom->stop, in xmlFAGenerateTransitions()
1670 if (atom->min == 0) in xmlFAGenerateTransitions()
1671 xmlFAGenerateEpsilonTransition(ctxt, atom->start0, in xmlFAGenerateTransitions()
1675 atom->min = 0; in xmlFAGenerateTransitions()
1676 atom->max = 0; in xmlFAGenerateTransitions()
1677 atom->quant = XML_REGEXP_QUANT_ONCE; in xmlFAGenerateTransitions()
1685 if ((atom->min == 0) && (atom->max == 0) && in xmlFAGenerateTransitions()
1686 (atom->quant == XML_REGEXP_QUANT_RANGE)) { in xmlFAGenerateTransitions()
1700 xmlRegFreeAtom(atom); in xmlFAGenerateTransitions()
1712 if ((atom->quant == XML_REGEXP_QUANT_MULT) || in xmlFAGenerateTransitions()
1713 (atom->quant == XML_REGEXP_QUANT_PLUS)) { in xmlFAGenerateTransitions()
1730 if (xmlRegAtomPush(ctxt, atom) < 0) { in xmlFAGenerateTransitions()
1733 xmlRegStateAddTrans(ctxt, from, atom, to, -1, -1); in xmlFAGenerateTransitions()
1735 switch (atom->quant) { in xmlFAGenerateTransitions()
1737 atom->quant = XML_REGEXP_QUANT_ONCE; in xmlFAGenerateTransitions()
1741 atom->quant = XML_REGEXP_QUANT_ONCE; in xmlFAGenerateTransitions()
1743 xmlRegStateAddTrans(ctxt, to, atom, to, -1, -1); in xmlFAGenerateTransitions()
1746 atom->quant = XML_REGEXP_QUANT_ONCE; in xmlFAGenerateTransitions()
1747 xmlRegStateAddTrans(ctxt, to, atom, to, -1, -1); in xmlFAGenerateTransitions()
1751 if (atom->min == 0) { in xmlFAGenerateTransitions()
1800 if (to->trans[transnr].atom == NULL) { in xmlFAReduceEpsilonTransitions()
1832 xmlRegStateAddTrans(ctxt, from, to->trans[transnr].atom, in xmlFAReduceEpsilonTransitions()
1836 xmlRegStateAddTrans(ctxt, from, to->trans[transnr].atom, in xmlFAReduceEpsilonTransitions()
1873 if ((state->trans[0].atom == NULL) && in xmlFAEliminateSimpleEpsilonTransitions()
1899 xmlRegStateAddTrans(ctxt, tmp, tmp->trans[j].atom, in xmlFAEliminateSimpleEpsilonTransitions()
1966 if ((state->trans[transnr].atom == NULL) && in xmlFAEliminateEpsilonTransitions()
2006 if ((trans->atom == NULL) && in xmlFAEliminateEpsilonTransitions()
2034 ((state->trans[transnr].atom != NULL) || in xmlFAEliminateEpsilonTransitions()
2584 int to, xmlRegAtomPtr atom) { in xmlFARecurseDeterminism() argument
2609 if (t1->atom == NULL) { in xmlFARecurseDeterminism()
2614 to, atom); in xmlFARecurseDeterminism()
2624 if (xmlFACompareAtoms(t1->atom, atom, deep)) { in xmlFARecurseDeterminism()
2675 if (t1->atom == NULL) { in xmlFAComputesDeterminism()
2685 if (t2->atom != NULL) { in xmlFAComputesDeterminism()
2691 if (xmlFAEqualAtoms(t1->atom, t2->atom, deep) && in xmlFAComputesDeterminism()
2718 if (t1->atom == NULL) { in xmlFAComputesDeterminism()
2727 if (t2->atom != NULL) { in xmlFAComputesDeterminism()
2732 if (xmlFACompareAtoms(t1->atom, t2->atom, 1)) { in xmlFAComputesDeterminism()
2745 t2->to, t2->atom); in xmlFAComputesDeterminism()
2960 xmlRegCheckCharacter(xmlRegAtomPtr atom, int codepoint) { in xmlRegCheckCharacter() argument
2964 if ((atom == NULL) || (!IS_CHAR(codepoint))) in xmlRegCheckCharacter()
2967 switch (atom->type) { in xmlRegCheckCharacter()
2972 return(codepoint == atom->codepoint); in xmlRegCheckCharacter()
2976 for (i = 0;i < atom->nbRanges;i++) { in xmlRegCheckCharacter()
2977 range = atom->ranges[i]; in xmlRegCheckCharacter()
3053 ret = xmlRegCheckCharacterRange(atom->type, codepoint, 0, 0, 0, in xmlRegCheckCharacter()
3054 (const xmlChar *)atom->valuep); in xmlRegCheckCharacter()
3055 if (atom->neg) in xmlRegCheckCharacter()
3217 xmlRegAtomPtr atom; in xmlFARegExec() local
3235 atom = trans->atom; in xmlFARegExec()
3236 if (!((atom->min == 0) && (atom->max > 0))) in xmlFARegExec()
3248 atom = trans->atom; in xmlFARegExec()
3272 } else if (atom == NULL) { in xmlFARegExec()
3278 ret = xmlRegCheckCharacter(atom, codepoint); in xmlFARegExec()
3279 if ((ret == 1) && (atom->min >= 0) && (atom->max > 0)) { in xmlFARegExec()
3315 if (exec->transcount == atom->max) { in xmlFARegExec()
3326 if (exec->transcount >= atom->min) { in xmlFARegExec()
3341 ret = xmlRegCheckCharacter(atom, codepoint); in xmlFARegExec()
3344 if (exec->transcount < atom->min) in xmlFARegExec()
3366 } else if ((ret == 0) && (atom->min == 0) && (atom->max > 0)) { in xmlFARegExec()
3376 } else if ((atom->min == 0) && (atom->max > 0)) { in xmlFARegExec()
3389 trans->atom->no, codepoint, exec->index); in xmlFARegExec()
3431 if (trans->atom != NULL) { in xmlFARegExec()
3776 xmlRegAtomPtr atom; in xmlRegExecPushStringInternal() local
3831 atom = trans->atom; in xmlRegExecPushStringInternal()
3857 (t->atom != NULL) && in xmlRegExecPushStringInternal()
3858 (xmlStrEqual(value, t->atom->valuep))) { in xmlRegExecPushStringInternal()
3864 (t->atom != NULL) && in xmlRegExecPushStringInternal()
3865 (xmlStrEqual(value, t->atom->valuep))) { in xmlRegExecPushStringInternal()
3911 } else if (atom == NULL) { in xmlRegExecPushStringInternal()
3916 ret = xmlRegStrEqualWildcard(atom->valuep, value); in xmlRegExecPushStringInternal()
3917 if (atom->neg) { in xmlRegExecPushStringInternal()
3932 if ((ret == 1) && (atom->min > 0) && (atom->max > 0)) { in xmlRegExecPushStringInternal()
3949 if (exec->transcount == atom->max) { in xmlRegExecPushStringInternal()
3966 if (exec->transcount >= atom->min) { in xmlRegExecPushStringInternal()
3982 ret = xmlStrEqual(value, atom->valuep); in xmlRegExecPushStringInternal()
3985 if (exec->transcount < atom->min) in xmlRegExecPushStringInternal()
4000 if ((exec->callback != NULL) && (atom != NULL) && in xmlRegExecPushStringInternal()
4002 exec->callback(exec->data, atom->valuep, in xmlRegExecPushStringInternal()
4003 atom->data, data); in xmlRegExecPushStringInternal()
4044 if (trans->atom != NULL) { in xmlRegExecPushStringInternal()
4261 xmlRegAtomPtr atom; in xmlRegExecGetValues() local
4284 atom = trans->atom; in xmlRegExecGetValues()
4285 if ((atom == NULL) || (atom->valuep == NULL)) in xmlRegExecGetValues()
4304 if (atom->neg) in xmlRegExecGetValues()
4305 values[nb++] = (xmlChar *) atom->valuep2; in xmlRegExecGetValues()
4307 values[nb++] = (xmlChar *) atom->valuep; in xmlRegExecGetValues()
4314 if (atom->neg) in xmlRegExecGetValues()
4315 values[nb++] = (xmlChar *) atom->valuep2; in xmlRegExecGetValues()
4317 values[nb++] = (xmlChar *) atom->valuep; in xmlRegExecGetValues()
4328 atom = trans->atom; in xmlRegExecGetValues()
4329 if ((atom == NULL) || (atom->valuep == NULL)) in xmlRegExecGetValues()
4341 if (atom->neg) in xmlRegExecGetValues()
4342 values[nb++] = (xmlChar *) atom->valuep2; in xmlRegExecGetValues()
4344 values[nb++] = (xmlChar *) atom->valuep; in xmlRegExecGetValues()
4424 xmlRegAtomPtr atom;
4450 atom = trans->atom;
4467 } else if (atom == NULL) {
4473 ret = xmlRegCheckCharacter(atom, codepoint);
4474 if ((ret == 1) && (atom->min > 0) && (atom->max > 0)) {
4488 if (exec->transcount == atom->max) {
4499 if (exec->transcount >= atom->min) {
4514 ret = xmlRegCheckCharacter(atom, codepoint);
4517 if (exec->transcount < atom->min)
4555 if (trans->atom != NULL) {
4817 if (ctxt->atom == NULL) { in xmlFAParseCharProp()
4818 ctxt->atom = xmlRegNewAtom(ctxt, type); in xmlFAParseCharProp()
4819 if (ctxt->atom != NULL) in xmlFAParseCharProp()
4820 ctxt->atom->valuep = blockName; in xmlFAParseCharProp()
4821 } else if (ctxt->atom->type == XML_REGEXP_RANGES) { in xmlFAParseCharProp()
4822 xmlRegAtomAddRange(ctxt, ctxt->atom, ctxt->neg, in xmlFAParseCharProp()
4842 if (ctxt->atom == NULL) { in xmlFAParseCharClassEsc()
4843 ctxt->atom = xmlRegNewAtom(ctxt, XML_REGEXP_ANYCHAR); in xmlFAParseCharClassEsc()
4844 } else if (ctxt->atom->type == XML_REGEXP_RANGES) { in xmlFAParseCharClassEsc()
4845 xmlRegAtomAddRange(ctxt, ctxt->atom, ctxt->neg, in xmlFAParseCharClassEsc()
4878 ctxt->atom->neg = 1; in xmlFAParseCharClassEsc()
4889 if (ctxt->atom == NULL) { in xmlFAParseCharClassEsc()
4890 ctxt->atom = xmlRegNewAtom(ctxt, XML_REGEXP_CHARVAL); in xmlFAParseCharClassEsc()
4891 if (ctxt->atom != NULL) { in xmlFAParseCharClassEsc()
4894 ctxt->atom->codepoint = '\n'; in xmlFAParseCharClassEsc()
4897 ctxt->atom->codepoint = '\r'; in xmlFAParseCharClassEsc()
4900 ctxt->atom->codepoint = '\t'; in xmlFAParseCharClassEsc()
4903 ctxt->atom->codepoint = cur; in xmlFAParseCharClassEsc()
4906 } else if (ctxt->atom->type == XML_REGEXP_RANGES) { in xmlFAParseCharClassEsc()
4918 xmlRegAtomAddRange(ctxt, ctxt->atom, ctxt->neg, in xmlFAParseCharClassEsc()
4960 if (ctxt->atom == NULL) { in xmlFAParseCharClassEsc()
4961 ctxt->atom = xmlRegNewAtom(ctxt, type); in xmlFAParseCharClassEsc()
4962 } else if (ctxt->atom->type == XML_REGEXP_RANGES) { in xmlFAParseCharClassEsc()
4963 xmlRegAtomAddRange(ctxt, ctxt->atom, ctxt->neg, in xmlFAParseCharClassEsc()
5027 xmlRegAtomAddRange(ctxt, ctxt->atom, ctxt->neg, in xmlFAParseCharRange()
5060 xmlRegAtomAddRange(ctxt, ctxt->atom, ctxt->neg, in xmlFAParseCharRange()
5136 ctxt->atom = xmlRegNewAtom(ctxt, XML_REGEXP_RANGES); in xmlFAParseCharClass()
5137 if (ctxt->atom == NULL) in xmlFAParseCharClass()
5190 if (ctxt->atom != NULL) { in xmlFAParseQuantifier()
5192 ctxt->atom->quant = XML_REGEXP_QUANT_OPT; in xmlFAParseQuantifier()
5194 ctxt->atom->quant = XML_REGEXP_QUANT_MULT; in xmlFAParseQuantifier()
5196 ctxt->atom->quant = XML_REGEXP_QUANT_PLUS; in xmlFAParseQuantifier()
5228 if (ctxt->atom != NULL) { in xmlFAParseQuantifier()
5229 ctxt->atom->quant = XML_REGEXP_QUANT_RANGE; in xmlFAParseQuantifier()
5230 ctxt->atom->min = min; in xmlFAParseQuantifier()
5231 ctxt->atom->max = max; in xmlFAParseQuantifier()
5250 ctxt->atom = xmlRegNewAtom(ctxt, XML_REGEXP_CHARVAL); in xmlFAParseAtom()
5251 if (ctxt->atom == NULL) in xmlFAParseAtom()
5254 ctxt->atom->codepoint = codepoint; in xmlFAParseAtom()
5277 ctxt->atom = NULL; in xmlFAParseAtom()
5284 ctxt->atom = xmlRegNewAtom(ctxt, XML_REGEXP_SUBREG); in xmlFAParseAtom()
5285 if (ctxt->atom == NULL) in xmlFAParseAtom()
5287 ctxt->atom->start = start; in xmlFAParseAtom()
5288 ctxt->atom->start0 = start0; in xmlFAParseAtom()
5289 ctxt->atom->stop = ctxt->state; in xmlFAParseAtom()
5309 ctxt->atom = NULL; in xmlFAParsePiece()
5313 if (ctxt->atom == NULL) { in xmlFAParsePiece()
5339 (CUR=='|' || CUR==')') ? to : NULL, ctxt->atom) < 0) in xmlFAParseBranch()
5342 ctxt->atom = NULL; in xmlFAParseBranch()
5348 (CUR=='|' || CUR==')') ? to : NULL, ctxt->atom) < 0) in xmlFAParseBranch()
5351 ctxt->atom = NULL; in xmlFAParseBranch()
5704 xmlRegAtomPtr atom; in xmlAutomataNewTransition() local
5708 atom = xmlRegNewAtom(am, XML_REGEXP_STRING); in xmlAutomataNewTransition()
5709 if (atom == NULL) in xmlAutomataNewTransition()
5711 atom->data = data; in xmlAutomataNewTransition()
5712 atom->valuep = xmlStrdup(token); in xmlAutomataNewTransition()
5714 if (xmlFAGenerateTransitions(am, from, to, atom) < 0) { in xmlAutomataNewTransition()
5715 xmlRegFreeAtom(atom); in xmlAutomataNewTransition()
5742 xmlRegAtomPtr atom; in xmlAutomataNewTransition2() local
5746 atom = xmlRegNewAtom(am, XML_REGEXP_STRING); in xmlAutomataNewTransition2()
5747 if (atom == NULL) in xmlAutomataNewTransition2()
5749 atom->data = data; in xmlAutomataNewTransition2()
5751 atom->valuep = xmlStrdup(token); in xmlAutomataNewTransition2()
5761 xmlRegFreeAtom(atom); in xmlAutomataNewTransition2()
5769 atom->valuep = str; in xmlAutomataNewTransition2()
5772 if (xmlFAGenerateTransitions(am, from, to, atom) < 0) { in xmlAutomataNewTransition2()
5773 xmlRegFreeAtom(atom); in xmlAutomataNewTransition2()
5802 xmlRegAtomPtr atom; in xmlAutomataNewNegTrans() local
5807 atom = xmlRegNewAtom(am, XML_REGEXP_STRING); in xmlAutomataNewNegTrans()
5808 if (atom == NULL) in xmlAutomataNewNegTrans()
5810 atom->data = data; in xmlAutomataNewNegTrans()
5811 atom->neg = 1; in xmlAutomataNewNegTrans()
5813 atom->valuep = xmlStrdup(token); in xmlAutomataNewNegTrans()
5823 xmlRegFreeAtom(atom); in xmlAutomataNewNegTrans()
5831 atom->valuep = str; in xmlAutomataNewNegTrans()
5833 snprintf((char *) err_msg, 199, "not %s", (const char *) atom->valuep); in xmlAutomataNewNegTrans()
5835 atom->valuep2 = xmlStrdup(err_msg); in xmlAutomataNewNegTrans()
5837 if (xmlFAGenerateTransitions(am, from, to, atom) < 0) { in xmlAutomataNewNegTrans()
5838 xmlRegFreeAtom(atom); in xmlAutomataNewNegTrans()
5870 xmlRegAtomPtr atom; in xmlAutomataNewCountTrans2() local
5879 atom = xmlRegNewAtom(am, XML_REGEXP_STRING); in xmlAutomataNewCountTrans2()
5880 if (atom == NULL) in xmlAutomataNewCountTrans2()
5883 atom->valuep = xmlStrdup(token); in xmlAutomataNewCountTrans2()
5893 xmlRegFreeAtom(atom); in xmlAutomataNewCountTrans2()
5901 atom->valuep = str; in xmlAutomataNewCountTrans2()
5903 atom->data = data; in xmlAutomataNewCountTrans2()
5905 atom->min = 1; in xmlAutomataNewCountTrans2()
5907 atom->min = min; in xmlAutomataNewCountTrans2()
5908 atom->max = max; in xmlAutomataNewCountTrans2()
5922 xmlRegStateAddTrans(am, from, atom, to, counter, -1); in xmlAutomataNewCountTrans2()
5923 xmlRegAtomPush(am, atom); in xmlAutomataNewCountTrans2()
5956 xmlRegAtomPtr atom; in xmlAutomataNewCountTrans() local
5965 atom = xmlRegNewAtom(am, XML_REGEXP_STRING); in xmlAutomataNewCountTrans()
5966 if (atom == NULL) in xmlAutomataNewCountTrans()
5968 atom->valuep = xmlStrdup(token); in xmlAutomataNewCountTrans()
5969 atom->data = data; in xmlAutomataNewCountTrans()
5971 atom->min = 1; in xmlAutomataNewCountTrans()
5973 atom->min = min; in xmlAutomataNewCountTrans()
5974 atom->max = max; in xmlAutomataNewCountTrans()
5988 xmlRegStateAddTrans(am, from, atom, to, counter, -1); in xmlAutomataNewCountTrans()
5989 xmlRegAtomPush(am, atom); in xmlAutomataNewCountTrans()
6025 xmlRegAtomPtr atom; in xmlAutomataNewOnceTrans2() local
6034 atom = xmlRegNewAtom(am, XML_REGEXP_STRING); in xmlAutomataNewOnceTrans2()
6035 if (atom == NULL) in xmlAutomataNewOnceTrans2()
6038 atom->valuep = xmlStrdup(token); in xmlAutomataNewOnceTrans2()
6048 xmlRegFreeAtom(atom); in xmlAutomataNewOnceTrans2()
6056 atom->valuep = str; in xmlAutomataNewOnceTrans2()
6058 atom->data = data; in xmlAutomataNewOnceTrans2()
6059 atom->quant = XML_REGEXP_QUANT_ONCEONLY; in xmlAutomataNewOnceTrans2()
6060 atom->min = min; in xmlAutomataNewOnceTrans2()
6061 atom->max = max; in xmlAutomataNewOnceTrans2()
6074 xmlRegStateAddTrans(am, from, atom, to, counter, -1); in xmlAutomataNewOnceTrans2()
6075 xmlRegAtomPush(am, atom); in xmlAutomataNewOnceTrans2()
6104 xmlRegAtomPtr atom; in xmlAutomataNewOnceTrans() local
6113 atom = xmlRegNewAtom(am, XML_REGEXP_STRING); in xmlAutomataNewOnceTrans()
6114 if (atom == NULL) in xmlAutomataNewOnceTrans()
6116 atom->valuep = xmlStrdup(token); in xmlAutomataNewOnceTrans()
6117 atom->data = data; in xmlAutomataNewOnceTrans()
6118 atom->quant = XML_REGEXP_QUANT_ONCEONLY; in xmlAutomataNewOnceTrans()
6119 atom->min = min; in xmlAutomataNewOnceTrans()
6120 atom->max = max; in xmlAutomataNewOnceTrans()
6133 xmlRegStateAddTrans(am, from, atom, to, counter, -1); in xmlAutomataNewOnceTrans()
6134 xmlRegAtomPush(am, atom); in xmlAutomataNewOnceTrans()