bufsize_t _scan_entity()

in src/scanners.c [12577:13472]


bufsize_t _scan_entity(const unsigned char *p) {
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

  {
    unsigned char yych;
    yych = *p;
    if (yych == '&')
      goto yy844;
    ++p;
  yy843 : { return 0; }
  yy844:
    yych = *(marker = ++p);
    if (yych <= '@') {
      if (yych != '#')
        goto yy843;
    } else {
      if (yych <= 'Z')
        goto yy847;
      if (yych <= '`')
        goto yy843;
      if (yych <= 'z')
        goto yy847;
      goto yy843;
    }
    yych = *++p;
    if (yych <= 'W') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy848;
    } else {
      if (yych <= 'X')
        goto yy849;
      if (yych == 'x')
        goto yy849;
    }
  yy846:
    p = marker;
    goto yy843;
  yy847:
    yych = *++p;
    if (yych <= '@') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy850;
      goto yy846;
    } else {
      if (yych <= 'Z')
        goto yy850;
      if (yych <= '`')
        goto yy846;
      if (yych <= 'z')
        goto yy850;
      goto yy846;
    }
  yy848:
    yych = *++p;
    if (yych <= '/')
      goto yy846;
    if (yych <= '9')
      goto yy851;
    if (yych == ';')
      goto yy852;
    goto yy846;
  yy849:
    yych = *++p;
    if (yych <= '@') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy854;
      goto yy846;
    } else {
      if (yych <= 'F')
        goto yy854;
      if (yych <= '`')
        goto yy846;
      if (yych <= 'f')
        goto yy854;
      goto yy846;
    }
  yy850:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy855;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
        goto yy855;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'z')
          goto yy855;
        goto yy846;
      }
    }
  yy851:
    yych = *++p;
    if (yych <= '/')
      goto yy846;
    if (yych <= '9')
      goto yy856;
    if (yych != ';')
      goto yy846;
  yy852:
    ++p;
    { return (bufsize_t)(p - start); }
  yy854:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy857;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'F') {
        if (yych <= '@')
          goto yy846;
        goto yy857;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'f')
          goto yy857;
        goto yy846;
      }
    }
  yy855:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy858;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
        goto yy858;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'z')
          goto yy858;
        goto yy846;
      }
    }
  yy856:
    yych = *++p;
    if (yych <= '/')
      goto yy846;
    if (yych <= '9')
      goto yy859;
    if (yych == ';')
      goto yy852;
    goto yy846;
  yy857:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy860;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'F') {
        if (yych <= '@')
          goto yy846;
        goto yy860;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'f')
          goto yy860;
        goto yy846;
      }
    }
  yy858:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy861;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
        goto yy861;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'z')
          goto yy861;
        goto yy846;
      }
    }
  yy859:
    yych = *++p;
    if (yych <= '/')
      goto yy846;
    if (yych <= '9')
      goto yy862;
    if (yych == ';')
      goto yy852;
    goto yy846;
  yy860:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy863;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'F') {
        if (yych <= '@')
          goto yy846;
        goto yy863;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'f')
          goto yy863;
        goto yy846;
      }
    }
  yy861:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy864;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
        goto yy864;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'z')
          goto yy864;
        goto yy846;
      }
    }
  yy862:
    yych = *++p;
    if (yych <= '/')
      goto yy846;
    if (yych <= '9')
      goto yy865;
    if (yych == ';')
      goto yy852;
    goto yy846;
  yy863:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy866;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'F') {
        if (yych <= '@')
          goto yy846;
        goto yy866;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'f')
          goto yy866;
        goto yy846;
      }
    }
  yy864:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy867;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
        goto yy867;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'z')
          goto yy867;
        goto yy846;
      }
    }
  yy865:
    yych = *++p;
    if (yych <= '/')
      goto yy846;
    if (yych <= '9')
      goto yy868;
    if (yych == ';')
      goto yy852;
    goto yy846;
  yy866:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy868;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'F') {
        if (yych <= '@')
          goto yy846;
        goto yy868;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'f')
          goto yy868;
        goto yy846;
      }
    }
  yy867:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy869;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
        goto yy869;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'z')
          goto yy869;
        goto yy846;
      }
    }
  yy868:
    yych = *++p;
    if (yych == ';')
      goto yy852;
    goto yy846;
  yy869:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy870;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy870:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy871;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy871:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy872;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy872:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy873;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy873:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy874;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy874:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy875;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy875:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy876;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy876:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy877;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy877:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy878;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy878:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy879;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy879:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy880;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy880:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy881;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy881:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy882;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy882:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy883;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy883:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy884;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy884:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy885;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy885:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy886;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy886:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy887;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy887:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy888;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy888:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy889;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy889:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy890;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy890:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy891;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy891:
    yych = *++p;
    if (yych <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy892;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych >= '{')
          goto yy846;
      }
    }
  yy892:
    ++p;
    if ((yych = *p) <= ';') {
      if (yych <= '/')
        goto yy846;
      if (yych <= '9')
        goto yy868;
      if (yych <= ':')
        goto yy846;
      goto yy852;
    } else {
      if (yych <= 'Z') {
        if (yych <= '@')
          goto yy846;
        goto yy868;
      } else {
        if (yych <= '`')
          goto yy846;
        if (yych <= 'z')
          goto yy868;
        goto yy846;
      }
    }
  }
}