Changeset 78 for trunk/src/bytelex.h


Ignore:
Timestamp:
Mar 28, 2008, 1:21:54 PM (11 years ago)
Author:
lindanl
Message:

DTD parsing.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/bytelex.h

    r72 r78  
    235235}
    236236
    237 
     237template<CodeUnit_Base C>
     238inline bool at_DOCTYPE_start(unsigned char x8data[]) {
     239        return s8int64(x8data) == c8int64<C, '<', '!','D', 'O', 'C', 'T', 'Y', 'P'>::value & AtChar<C,'E'>(&x8data[8]);
     240}
     241
     242template<CodeUnit_Base C>
     243inline bool at_SYSTEM(unsigned char x8data[]) {
     244        return s6int64(x8data) == c6int64<C, 'S', 'Y', 'S', 'T', 'E', 'M'>::value;
     245}
     246
     247template<CodeUnit_Base C>
     248inline bool at_PUBLIC(unsigned char x8data[]) {
     249        return s6int64(x8data) == c6int64<C, 'P', 'U', 'B', 'L', 'I', 'C'>::value;
     250}
     251
     252template<CodeUnit_Base C>
     253inline bool at_ELEMENT(unsigned char x8data[]) {
     254        return s7int64(x8data) == c7int64<C, 'E', 'L', 'E', 'M', 'E', 'N', 'T'>::value;
     255}
     256
     257template<CodeUnit_Base C>
     258inline bool at_ATTLIST(unsigned char x8data[]) {
     259        return s7int64(x8data) == c7int64<C, 'A', 'T', 'T', 'L', 'I', 'S', 'T'>::value;
     260}
     261
     262template<CodeUnit_Base C>
     263inline bool at_ENTITY(unsigned char x8data[]) {
     264        return s6int64(x8data) == c6int64<C, 'E', 'N', 'T', 'I', 'T', 'Y'>::value;
     265}
     266
     267template<CodeUnit_Base C>
     268inline bool at_NOTATION(unsigned char x8data[]) {
     269        return s8int64(x8data) == c8int64<C, 'N', 'O', 'T', 'A', 'T', 'I', 'O', 'N'>::value;
     270}
     271
     272template<CodeUnit_Base C>
     273inline bool at_EMPTY(unsigned char x8data[]) {
     274        return s5int64(x8data) == c5int64<C, 'E', 'M', 'P', 'T', 'Y'>::value;
     275}
     276
     277template<CodeUnit_Base C>
     278inline bool at_PCDATA(unsigned char x8data[]) {
     279        return s7int64(x8data) == c7int64<C, '#', 'P', 'C', 'D', 'A', 'T', 'A'>::value;
     280}
     281
     282template<CodeUnit_Base C>
     283inline bool at_Para_star(unsigned char x8data[]) {
     284        return s2int16(x8data) == c2int16<C, ')', '*'>::value;
     285}
     286
     287template<CodeUnit_Base C>
     288inline bool at_CDATA(unsigned char x8data[]) {
     289        return s5int64(x8data) == c5int64<C, 'C', 'D', 'A', 'T', 'A'>::value;
     290}
     291
     292template<CodeUnit_Base C>
     293inline bool at_ID(unsigned char x8data[]) {
     294        return s2int16(x8data) == c2int16<C, 'I', 'D'>::value;
     295}
     296
     297template<CodeUnit_Base C>
     298inline bool at_IDREF(unsigned char x8data[]) {
     299        return s5int64(x8data) == c5int64<C, 'I', 'D', 'R', 'E', 'F'>::value;
     300}
     301
     302template<CodeUnit_Base C>
     303inline bool at_IDREFS(unsigned char x8data[]) {
     304        return s6int64(x8data) == c6int64<C, 'I', 'D', 'R', 'E', 'F', 'S'>::value;
     305}
     306
     307template<CodeUnit_Base C>
     308inline bool at_ENTITIES(unsigned char x8data[]) {
     309        return s8int64(x8data) == c8int64<C, 'E', 'N', 'T', 'I', 'T', 'I', 'E', 'S'>::value;
     310}
     311
     312template<CodeUnit_Base C>
     313inline bool at_NMTOKEN(unsigned char x8data[]) {
     314        return s7int64(x8data) == c7int64<C, 'N', 'M', 'T', 'O', 'K', 'E', 'N'>::value;
     315}
     316
     317template<CodeUnit_Base C>
     318inline bool at_NMTOKENS(unsigned char x8data[]) {
     319        return s8int64(x8data) == c8int64<C, 'N', 'M', 'T', 'O', 'K', 'E', 'N', 'S'>::value;
     320}
     321
     322template<CodeUnit_Base C>
     323inline bool at_REQUIRED(unsigned char x8data[]) {
     324        return s8int64(x8data) == c8int64<C, '#', 'R', 'E', 'Q', 'U', 'I', 'R', 'E'>::value
     325          & AtChar<C,'D'>(&x8data[8]);
     326}
     327
     328template<CodeUnit_Base C>
     329inline bool at_IMPLIED(unsigned char x8data[]) {
     330        return s8int64(x8data) == c8int64<C, '#', 'I', 'M', 'P', 'L', 'I', 'E', 'D'>::value;
     331}
     332
     333template<CodeUnit_Base C>
     334inline bool at_FIXED(unsigned char x8data[]) {
     335        return s6int64(x8data) == c6int64<C, '#', 'F', 'I', 'X', 'E', 'D'>::value;
     336}
     337
     338template<CodeUnit_Base C>
     339inline bool at_ANY(unsigned char x8data[]) {
     340        return s3int32(x8data) == c3int32<C, 'A', 'N', 'Y'>::value;
     341}
    238342
    239343#endif
Note: See TracChangeset for help on using the changeset viewer.