text: // Copyright (c)1997-1999 Microsoft Corporation, All Rights Reserved
  
  #ifndef __LEXHTML__
  #define __LEXHTML__
  
  #include "lex.h"
  #include "tokhtml.h"
  
  #define DS_HTML_IE3         _T("HTML - IE 3.0")
  #define DS_HTML_RFC1866     _T("HTML 2.0 (RFC 1866)")
  
  
  // token hints
  #define BASED_HINT  0x9000
  #define ERR         BASED_HINT +  0  // error
  #define HWS         BASED_HINT +  1  // white space
  #define HST         BASED_HINT +  2  // string "..."
  #define HSL         BASED_HINT +  3  // string alternate '...'
  #define HNU         BASED_HINT +  5  // number
  #define HKW         BASED_HINT +  6  // keyword
  #define HEN         BASED_HINT +  7  // entity &...;
  #define HRN         BASED_HINT +  8  // reserved name #...
  #define HEP         BASED_HINT +  9  // parameter entity %...;
  #define HTA         BASED_HINT + 10  // tag open <
  #define HTE         BASED_HINT + 11  // tag end >
  #define HDB         BASED_HINT + 12  // dbcs (> 128).   HTMED CHANGE (walts)
  #define HAV         BASED_HINT + 13  // valid attr value start char     HTMED CHANGE (walts)
  
  // strictly single ops
  #define ODA tokOpDash
  #define OCO tokOpComma
  #define OPI tokOpPipe
  #define OPL tokOpPlus
  #define OEQ tokOpEqual
  #define OST tokOpStar
  #define OLP tokOpLP
  #define ORP tokOpRP
  #define OLB tokOpLB
  #define ORB tokOpRB
  #define OQU tokOpQuestion
  #define OLC tokDELI_LCBKT   
  #define ORC tokDELI_RCBKT   
  #define ONL tokNEWLINE
  #define EOS tokEOF
  
  typedef unsigned short HINT;
  
  typedef BYTE RWATT_T;
  //
  // Reserved Word Attributes - HTML variant
  //
  enum RWATT
  {
      HTML2 = 0x01,  // RFC 1866
  //  IEXP2 = 0x02,  // Internet Explorer 2.0
      IEXP3 = 0x04,  // Internet Explorer 3.0
      ALL   = 0xff,  // all browsers
  };
  #define IEXPn (IEXP3)
  #define IE40  (ALL)
  
  typedef struct ReservedWord
  {
      TCHAR *     psz;        // pointer to reserved word string 
      BYTE        cb;         // length of reserved word
      RWATT_T     att;        // attributes
  } ReservedWord;
  
  #endif // __LEXHTML__
  
  