Home | History | Annotate | Download | only in libxml2

Lines Matching refs:right

6264  * which will be allowed only if the counter is within the right range.
6499 xmlExpNodePtr right) {
6506 value += right->key;
6512 value += right->key;
6518 value += right->key;
6550 * needed. @left and @right are consumed, i.e. their ref count will
6557 xmlExpNodePtr left, xmlExpNodePtr right,
6596 return(right);
6598 if (right->type == XML_EXP_FORBID) {
6599 xmlExpFree(ctxt, right);
6605 if (left == right) {
6611 if ((left->type == XML_EXP_OR) && (right->type != XML_EXP_OR)) {
6613 left = right;
6614 right = tmp;
6618 if (right->type == XML_EXP_OR) {
6619 if ((left == right->exp_left) ||
6620 (left == right->exp_right)) {
6622 return(right);
6638 tmp = xmlExpHashGetEntry(ctxt, XML_EXP_OR, left->exp_right, right,
6647 if (right->type == XML_EXP_OR) {
6650 if (left->key > right->exp_right->key) {
6652 right->exp_right->ref++;
6653 tmp = xmlExpHashGetEntry(ctxt, XML_EXP_OR, right->exp_right,
6655 right->exp_left->ref++;
6656 tmp = xmlExpHashGetEntry(ctxt, XML_EXP_OR, right->exp_left,
6658 xmlExpFree(ctxt, right);
6663 if (left->key > right->exp_left->key) {
6665 right->exp_right->ref++;
6667 right->exp_right, NULL, 0, 0);
6668 right->exp_left->ref++;
6669 tmp = xmlExpHashGetEntry(ctxt, XML_EXP_OR, right->exp_left,
6671 xmlExpFree(ctxt, right);
6676 else if (left->key > right->key) {
6678 left = right;
6679 right = tmp;
6681 kbase = xmlExpHashComputeKey(type, left, right);
6685 xmlExpFree(ctxt, right);
6688 if (right->type == XML_EXP_FORBID) {
6690 return(right);
6693 if (right->type == XML_EXP_EMPTY) {
6697 return(right);
6699 kbase = xmlExpHashComputeKey(type, left, right);
6722 (insert->exp_right == right)) {
6725 right->ref--;
6751 entry->exp_right = right;
6753 if ((IS_NILLABLE(left)) || (IS_NILLABLE(right)))
6763 if ((IS_NILLABLE(left)) && (IS_NILLABLE(right)))
6861 * @right: right expression
6863 * Get the atom associated to the choice @left | @right
6864 * Note that @left and @right are consumed in the operation, to keep
6871 xmlExpNewOr(xmlExpCtxtPtr ctxt, xmlExpNodePtr left, xmlExpNodePtr right) {
6874 if ((left == NULL) || (right == NULL)) {
6876 xmlExpFree(ctxt, right);
6879 return(xmlExpHashGetEntry(ctxt, XML_EXP_OR, left, right, NULL, 0, 0));
6886 * @right: right expression
6888 * Get the atom associated to the sequence @left , @right
6889 * Note that @left and @right are consumed in the operation, to keep
6896 xmlExpNewSeq(xmlExpCtxtPtr ctxt, xmlExpNodePtr left, xmlExpNodePtr right) {
6899 if ((left == NULL) || (right == NULL)) {
6901 xmlExpFree(ctxt, right);
6904 return(xmlExpHashGetEntry(ctxt, XML_EXP_SEQ, left, right, NULL, 0, 0));
7434 * subset which could be matched by the right
7958 xmlExpNodePtr ret, right;
7964 right = xmlExpParseOr(ctxt);
7965 if (right == NULL) {
7969 ret = xmlExpHashGetEntry(ctxt, XML_EXP_OR, ret, right, NULL, 0, 0);
7978 xmlExpNodePtr ret, right;
7984 right = xmlExpParseSeq(ctxt);
7985 if (right == NULL) {
7989 ret = xmlExpHashGetEntry(ctxt, XML_EXP_SEQ, ret, right, NULL, 0, 0);