odpysyn.hpp

来自「本人买的<<VC++项目开发实例>>源代码配套光盘.」· HPP 代码 · 共 165 行

HPP
165
字号
// Borland C++ Builder
// Copyright (c) 1995, 1999 by Borland International
// All rights reserved

// (DO NOT EDIT: machine generated header) 'odPySyn.pas' rev: 5.00

#ifndef odPySynHPP
#define odPySynHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <mwLocalStr.hpp>	// Pascal unit
#include <mwHighlighter.hpp>	// Pascal unit
#include <Registry.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <Messages.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <SysUtils.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

//-- user supplied -----------------------------------------------------------

namespace Odpysyn
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TtkTokenKind { tkComment, tkIdentifier, tkKey, tkNull, tkNumber, tkSpace, tkString, tkSymbol, tkUnknown 
	};
#pragma option pop

#pragma option push -b-
enum TRangeState { rsANil, rsComment, rsUnKnown };
#pragma option pop

typedef void __fastcall (__closure *TProcTableProc)(void);

typedef TtkTokenKind __fastcall (__closure *TIdentFuncTableFunc)(void);

class DELPHICLASS TodPySyn;
class PASCALIMPLEMENTATION TodPySyn : public Mwhighlighter::TmwCustomHighLighter 
{
	typedef Mwhighlighter::TmwCustomHighLighter inherited;
	
private:
	TRangeState fRange;
	char *fLine;
	int fLineNumber;
	TProcTableProc fProcTable[256];
	int Run;
	int fStringLen;
	char *fToIdent;
	int fTokenPos;
	TtkTokenKind FTokenID;
	TIdentFuncTableFunc fIdentFuncTable[102];
	Mwhighlighter::TmwHighLightAttributes* fStringAttri;
	Mwhighlighter::TmwHighLightAttributes* fNumberAttri;
	Mwhighlighter::TmwHighLightAttributes* fKeyAttri;
	Mwhighlighter::TmwHighLightAttributes* fSymbolAttri;
	Mwhighlighter::TmwHighLightAttributes* fCommentAttri;
	Mwhighlighter::TmwHighLightAttributes* fIdentifierAttri;
	Mwhighlighter::TmwHighLightAttributes* fSpaceAttri;
	int __fastcall KeyHash(char * ToHash);
	bool __fastcall KeyComp(const AnsiString aKey);
	TtkTokenKind __fastcall Func15(void);
	TtkTokenKind __fastcall Func21(void);
	TtkTokenKind __fastcall Func23(void);
	TtkTokenKind __fastcall Func31(void);
	TtkTokenKind __fastcall Func32(void);
	TtkTokenKind __fastcall Func33(void);
	TtkTokenKind __fastcall Func37(void);
	TtkTokenKind __fastcall Func39(void);
	TtkTokenKind __fastcall Func41(void);
	TtkTokenKind __fastcall Func45(void);
	TtkTokenKind __fastcall Func49(void);
	TtkTokenKind __fastcall Func52(void);
	TtkTokenKind __fastcall Func54(void);
	TtkTokenKind __fastcall Func55(void);
	TtkTokenKind __fastcall Func57(void);
	TtkTokenKind __fastcall Func63(void);
	TtkTokenKind __fastcall Func73(void);
	TtkTokenKind __fastcall Func77(void);
	TtkTokenKind __fastcall Func79(void);
	TtkTokenKind __fastcall Func91(void);
	TtkTokenKind __fastcall Func96(void);
	TtkTokenKind __fastcall Func101(void);
	void __fastcall SymbolProc(void);
	void __fastcall CRProc(void);
	void __fastcall CommentProc(void);
	void __fastcall GreaterProc(void);
	void __fastcall IdentProc(void);
	void __fastcall IntegerProc(void);
	void __fastcall LFProc(void);
	void __fastcall LowerProc(void);
	void __fastcall NullProc(void);
	void __fastcall NumberProc(void);
	void __fastcall PointProc(void);
	void __fastcall SpaceProc(void);
	void __fastcall StringProc(void);
	void __fastcall String2Proc(void);
	void __fastcall UnknownProc(void);
	TtkTokenKind __fastcall AltFunc(void);
	void __fastcall InitIdent(void);
	TtkTokenKind __fastcall IdentKind(char * MayBe);
	void __fastcall MakeMethodTables(void);
	
protected:
	virtual Mwhighlighter::TIdentChars __fastcall GetIdentChars();
	virtual AnsiString __fastcall GetLanguageName();
	virtual Mwhighlighter::THighlighterCapability __fastcall GetCapability(void);
	
public:
	__fastcall virtual TodPySyn(Classes::TComponent* AOwner);
	virtual bool __fastcall GetEol(void);
	virtual void * __fastcall GetRange(void);
	TtkTokenKind __fastcall GetTokenID(void);
	virtual void __fastcall SetLine(AnsiString NewValue, int LineNumber);
	virtual AnsiString __fastcall GetToken();
	virtual Mwhighlighter::TmwHighLightAttributes* __fastcall GetTokenAttribute(void);
	virtual int __fastcall GetTokenKind(void);
	virtual int __fastcall GetTokenPos(void);
	virtual void __fastcall Next(void);
	virtual void __fastcall SetRange(void * Value);
	virtual void __fastcall ReSetRange(void);
	__property IdentChars ;
	
__published:
	__property Mwhighlighter::TmwHighLightAttributes* CommentAttri = {read=fCommentAttri, write=fCommentAttri
		};
	__property Mwhighlighter::TmwHighLightAttributes* IdentifierAttri = {read=fIdentifierAttri, write=fIdentifierAttri
		};
	__property Mwhighlighter::TmwHighLightAttributes* KeyAttri = {read=fKeyAttri, write=fKeyAttri};
	__property Mwhighlighter::TmwHighLightAttributes* NumberAttri = {read=fNumberAttri, write=fNumberAttri
		};
	__property Mwhighlighter::TmwHighLightAttributes* SpaceAttri = {read=fSpaceAttri, write=fSpaceAttri
		};
	__property Mwhighlighter::TmwHighLightAttributes* StringAttri = {read=fStringAttri, write=fStringAttri
		};
	__property Mwhighlighter::TmwHighLightAttributes* SymbolAttri = {read=fSymbolAttri, write=fSymbolAttri
		};
public:
	#pragma option push -w-inl
	/* TmwCustomHighLighter.Destroy */ inline __fastcall virtual ~TodPySyn(void) { }
	#pragma option pop
	
};


//-- var, const, procedure ---------------------------------------------------
extern PACKAGE void __fastcall Register(void);

}	/* namespace Odpysyn */
#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using namespace Odpysyn;
#endif
#pragma option pop	// -w-
#pragma option pop	// -Vx

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// odPySyn

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?