Source code of Windows XP (NT5)
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.
|
|
#define MAX_TOKEN_LENGTH 257 // group names can be upto 256 chars, plus one byte for string terminator
#define MAX_KEYWORDS 16
typedef struct _kwdlist { DWORD dwTokenId; LPWSTR Keyword; } KWDLIST, *PKWDLIST;
class FAR CLexer { public: CLexer(LPWSTR szBuffer); ~CLexer();
BOOL CLexer::IsKeyword(LPWSTR szToken, LPDWORD pdwToken);
WCHAR CLexer::NextChar();
void CLexer::PushbackChar();
HRESULT CLexer::GetNextToken(LPWSTR szToken, LPDWORD pdwToken);
HRESULT CLexer::GetNextToken(LPWSTR szToken, LPWSTR szDisplayToken, LPDWORD pdwToken);
HRESULT CLexer::PushBackToken();
void CLexer::SetAtDisabler(BOOL bFlag);
BOOL CLexer::GetAtDisabler();
HRESULT CLexer::SetBuffer(LPWSTR pszBuffer);
private:
LPWSTR _ptr; LPWSTR _Buffer; DWORD _dwLastTokenLength; DWORD _dwLastToken; DWORD _dwEndofString; BOOL _bAtDisabled;
};
HRESULT Object(CLexer * pTokenizer, POBJECTINFO pObjectInfo);
HRESULT DsPathName(CLexer * pTokenizer, POBJECTINFO pObjectInfo);
HRESULT PathName(CLexer * pTokenizer, POBJECTINFO pObjectInfo);
HRESULT Component(CLexer * pTokenizer, POBJECTINFO pObjectInfo);
HRESULT Type(CLexer * pTokenizer, POBJECTINFO pObjectInfo);
HRESULT ProviderName(CLexer * pTokenizer, POBJECTINFO pObjectInfo);
HRESULT GetDisplayName( LPWSTR szName, LPWSTR *ppszDisplayName );
|