dmmlsyn.hpp

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

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

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

#ifndef dmMLSynHPP
#define dmMLSynHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <mwLocalStr.hpp>	// Pascal unit
#include <mwExport.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 Dmmlsyn
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TtkTokenKind { tkCharacter, tkComment, tkIdentifier, tkKey, tkNull, tkNumber, tkOperator, tkSpace, 
	tkString, tkSymbol, tkSyntaxError, tkUnknown };
#pragma option pop

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

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

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

typedef TIdentFuncTableFunc *PIdentFuncTableFunc;

class DELPHICLASS TdmMLSyn;
class PASCALIMPLEMENTATION TdmMLSyn : public Mwhighlighter::TmwCustomHighLighter 
{
	typedef Mwhighlighter::TmwCustomHighLighter inherited;
	
private:
	bool FBasis;
	TRangeState fRange;
	char *fLine;
	int fLineNumber;
	Mwexport::TmwCustomExport* fExporter;
	TProcTableProc fProcTable[256];
	int Run;
	int fStringLen;
	char *fToIdent;
	int fTokenPos;
	TtkTokenKind FTokenID;
	TIdentFuncTableFunc fIdentFuncTable[146];
	Mwhighlighter::TmwHighLightAttributes* fCharacterAttri;
	Mwhighlighter::TmwHighLightAttributes* fCommentAttri;
	Mwhighlighter::TmwHighLightAttributes* fIdentifierAttri;
	Mwhighlighter::TmwHighLightAttributes* fKeyAttri;
	Mwhighlighter::TmwHighLightAttributes* fNumberAttri;
	Mwhighlighter::TmwHighLightAttributes* fOperatorAttri;
	Mwhighlighter::TmwHighLightAttributes* fSpaceAttri;
	Mwhighlighter::TmwHighLightAttributes* fStringAttri;
	Mwhighlighter::TmwHighLightAttributes* fSymbolAttri;
	Mwhighlighter::TmwHighLightAttributes* fSyntaxErrorAttri;
	bool __fastcall IsValidMLCharacter(char Ch);
	int __fastcall KeyHash(char * ToHash);
	bool __fastcall KeyComp(const AnsiString aKey);
	TtkTokenKind __fastcall Func15(void);
	TtkTokenKind __fastcall Func19(void);
	TtkTokenKind __fastcall Func20(void);
	TtkTokenKind __fastcall Func21(void);
	TtkTokenKind __fastcall Func23(void);
	TtkTokenKind __fastcall Func26(void);
	TtkTokenKind __fastcall Func28(void);
	TtkTokenKind __fastcall Func31(void);
	TtkTokenKind __fastcall Func35(void);
	TtkTokenKind __fastcall Func37(void);
	TtkTokenKind __fastcall Func41(void);
	TtkTokenKind __fastcall Func43(void);
	TtkTokenKind __fastcall Func44(void);
	TtkTokenKind __fastcall Func47(void);
	TtkTokenKind __fastcall Func50(void);
	TtkTokenKind __fastcall Func52(void);
	TtkTokenKind __fastcall Func57(void);
	TtkTokenKind __fastcall Func59(void);
	TtkTokenKind __fastcall Func60(void);
	TtkTokenKind __fastcall Func62(void);
	TtkTokenKind __fastcall Func66(void);
	TtkTokenKind __fastcall Func68(void);
	TtkTokenKind __fastcall Func74(void);
	TtkTokenKind __fastcall Func76(void);
	TtkTokenKind __fastcall Func80(void);
	TtkTokenKind __fastcall Func82(void);
	TtkTokenKind __fastcall Func88(void);
	TtkTokenKind __fastcall Func92(void);
	TtkTokenKind __fastcall Func97(void);
	TtkTokenKind __fastcall Func101(void);
	TtkTokenKind __fastcall Func111(void);
	TtkTokenKind __fastcall Func114(void);
	TtkTokenKind __fastcall Func126(void);
	TtkTokenKind __fastcall Func145(void);
	void __fastcall AsciiCharProc(void);
	void __fastcall CRProc(void);
	void __fastcall CharacterProc(void);
	void __fastcall ColonProc(void);
	void __fastcall IdentProc(void);
	void __fastcall LFProc(void);
	void __fastcall NullProc(void);
	void __fastcall NumberProc(void);
	void __fastcall OperatorProc(void);
	void __fastcall SpaceProc(void);
	void __fastcall StringProc(void);
	void __fastcall SymbolProc(void);
	void __fastcall UnknownProc(void);
	void __fastcall BasisOpProc(void);
	void __fastcall RoundBracketOpen(void);
	TtkTokenKind __fastcall AltFunc(void);
	void __fastcall InitIdent(void);
	TtkTokenKind __fastcall IdentKind(char * MayBe);
	void __fastcall MakeMethodTables(void);
	void __fastcall SetDefaultAttributes(void);
	
protected:
	virtual Mwhighlighter::TIdentChars __fastcall GetIdentChars();
	virtual AnsiString __fastcall GetLanguageName();
	virtual Mwhighlighter::THighlighterCapability __fastcall GetCapability(void);
	
public:
	__fastcall virtual TdmMLSyn(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 void __fastcall ExportNext(void);
	virtual void __fastcall SetLineForExport(AnsiString NewValue);
	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* CharacterAttri = {read=fCharacterAttri, write=fCharacterAttri
		};
	__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* OperatorAttri = {read=fOperatorAttri, write=fOperatorAttri
		};
	__property Mwhighlighter::TmwHighLightAttributes* SpaceAttri = {read=fSpaceAttri, write=fSpaceAttri
		};
	__property Mwhighlighter::TmwHighLightAttributes* StringAttri = {read=fStringAttri, write=fStringAttri
		};
	__property Mwhighlighter::TmwHighLightAttributes* SymbolAttri = {read=fSymbolAttri, write=fSymbolAttri
		};
	__property Mwhighlighter::TmwHighLightAttributes* SyntaxErrorAttri = {read=fSyntaxErrorAttri, write=
		fSyntaxErrorAttri};
	__property Mwexport::TmwCustomExport* Exporter = {read=fExporter, write=fExporter};
	__property bool Basis = {read=FBasis, write=FBasis, default=1};
public:
	#pragma option push -w-inl
	/* TmwCustomHighLighter.Destroy */ inline __fastcall virtual ~TdmMLSyn(void) { }
	#pragma option pop
	
};


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

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

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

⌨️ 快捷键说明

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