You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
2.0 KiB
70 lines
2.0 KiB
// 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__
|
|
|