SimpleParser.Lexer
Unit SimpleParser.Lexer.pasClasses
- TmwBasePasLex = class ( TObject )
- TmwPasLex = class ( TmwBasePasLex )
Records
- record TDefineRec
- record TBufferRec
Mics. types
- type PDefineRec = pointer to TDefineRec;
- type PBufferRec = pointer to TBufferRec;
TmwBasePasLex
Ancestors
Members
Fields
- private FCommentState :
TCommentState
- private FProcTable :
- private FBuffer :
PBufferRec
- private RunAhead :
Integer
- private TempRun :
Integer
- private BufferSize :
Integer
- private FIdentFuncTable :
- private FTokenPos :
Integer
- private FTokenID :
TptTokenKind
- private FExID :
TptTokenKind
- private FOnMessage :
TMessageEvent
- private FOnCompDirect :
TDirectiveEvent
- private FOnElseDirect :
TDirectiveEvent
- private FOnEndIfDirect :
TDirectiveEvent
- private FOnIfDefDirect :
TDirectiveEvent
- private FOnIfNDefDirect :
TDirectiveEvent
- private FOnResourceDirect :
TDirectiveEvent
- private FOnIncludeDirect :
TDirectiveEvent
- private FOnDefineDirect :
TDirectiveEvent
- private FOnIfOptDirect :
TDirectiveEvent
- private FOnIfDirect :
TDirectiveEvent
- private FOnIfEndDirect :
TDirectiveEvent
- private FOnElseIfDirect :
TDirectiveEvent
- private FOnUnDefDirect :
TDirectiveEvent
- private FDirectiveParamOrigin :
PWideChar
- private FAsmCode :
Boolean
- private FDefines :
TArray<System.string>
- private FDefineStack :
Integer
- private FTopDefineRec :
PDefineRec
- private FUseDefines :
Boolean
- private FScopedEnums :
Boolean
- private FIncludeHandler :
IIncludeHandler
- private FOnComment :
TCommentEvent
Methods
- public constructor Create ( ) ;
- public destructor Destroy ( ) ;
- private function KeyHash ( ) : Integer ;
- private function KeyComp ( const aKey : string ) : Boolean ;
- private function Func9 ( ) : TptTokenKind ;
- private function Func15 ( ) : TptTokenKind ;
- private function Func19 ( ) : TptTokenKind ;
- private function Func20 ( ) : TptTokenKind ;
- private function Func21 ( ) : TptTokenKind ;
- private function Func23 ( ) : TptTokenKind ;
- private function Func25 ( ) : TptTokenKind ;
- private function Func27 ( ) : TptTokenKind ;
- private function Func28 ( ) : TptTokenKind ;
- private function Func29 ( ) : TptTokenKind ;
- private function Func30 ( ) : TptTokenKind ;
- private function Func32 ( ) : TptTokenKind ;
- private function Func33 ( ) : TptTokenKind ;
- private function Func35 ( ) : TptTokenKind ;
- private function Func36 ( ) : TptTokenKind ;
- private function Func37 ( ) : TptTokenKind ;
- private function Func38 ( ) : TptTokenKind ;
- private function Func39 ( ) : TptTokenKind ;
- private function Func40 ( ) : TptTokenKind ;
- private function Func41 ( ) : TptTokenKind ;
- private function Func42 ( ) : TptTokenKind ;
- private function Func43 ( ) : TptTokenKind ;
- private function Func44 ( ) : TptTokenKind ;
- private function Func45 ( ) : TptTokenKind ;
- private function Func46 ( ) : TptTokenKind ;
- private function Func47 ( ) : TptTokenKind ;
- private function Func49 ( ) : TptTokenKind ;
- private function Func52 ( ) : TptTokenKind ;
- private function Func54 ( ) : TptTokenKind ;
- private function Func55 ( ) : TptTokenKind ;
- private function Func56 ( ) : TptTokenKind ;
- private function Func57 ( ) : TptTokenKind ;
- private function Func58 ( ) : TptTokenKind ;
- private function Func59 ( ) : TptTokenKind ;
- private function Func60 ( ) : TptTokenKind ;
- private function Func61 ( ) : TptTokenKind ;
- private function Func62 ( ) : TptTokenKind ;
- private function Func63 ( ) : TptTokenKind ;
- private function Func64 ( ) : TptTokenKind ;
- private function Func65 ( ) : TptTokenKind ;
- private function Func66 ( ) : TptTokenKind ;
- private function Func69 ( ) : TptTokenKind ;
- private function Func71 ( ) : TptTokenKind ;
- private function Func72 ( ) : TptTokenKind ;
- private function Func73 ( ) : TptTokenKind ;
- private function Func75 ( ) : TptTokenKind ;
- private function Func76 ( ) : TptTokenKind ;
- private function Func78 ( ) : TptTokenKind ;
- private function Func79 ( ) : TptTokenKind ;
- private function Func81 ( ) : TptTokenKind ;
- private function Func84 ( ) : TptTokenKind ;
- private function Func85 ( ) : TptTokenKind ;
- private function Func86 ( ) : TptTokenKind ;
- private function Func87 ( ) : TptTokenKind ;
- private function Func88 ( ) : TptTokenKind ;
- private function Func89 ( ) : TptTokenKind ;
- private function Func91 ( ) : TptTokenKind ;
- private function Func92 ( ) : TptTokenKind ;
- private function Func94 ( ) : TptTokenKind ;
- private function Func95 ( ) : TptTokenKind ;
- private function Func96 ( ) : TptTokenKind ;
- private function Func97 ( ) : TptTokenKind ;
- private function Func98 ( ) : TptTokenKind ;
- private function Func99 ( ) : TptTokenKind ;
- private function Func100 ( ) : TptTokenKind ;
- private function Func101 ( ) : TptTokenKind ;
- private function Func102 ( ) : TptTokenKind ;
- private function Func103 ( ) : TptTokenKind ;
- private function Func104 ( ) : TptTokenKind ;
- private function Func105 ( ) : TptTokenKind ;
- private function Func106 ( ) : TptTokenKind ;
- private function Func107 ( ) : TptTokenKind ;
- private function Func108 ( ) : TptTokenKind ;
- private function Func112 ( ) : TptTokenKind ;
- private function Func117 ( ) : TptTokenKind ;
- private function Func123 ( ) : TptTokenKind ;
- private function Func126 ( ) : TptTokenKind ;
- private function Func127 ( ) : TptTokenKind ;
- private function Func128 ( ) : TptTokenKind ;
- private function Func129 ( ) : TptTokenKind ;
- private function Func130 ( ) : TptTokenKind ;
- private function Func132 ( ) : TptTokenKind ;
- private function Func133 ( ) : TptTokenKind ;
- private function Func136 ( ) : TptTokenKind ;
- private function Func141 ( ) : TptTokenKind ;
- private function Func142 ( ) : TptTokenKind ;
- private function Func143 ( ) : TptTokenKind ;
- private function Func166 ( ) : TptTokenKind ;
- private function Func167 ( ) : TptTokenKind ;
- private function Func168 ( ) : TptTokenKind ;
- private function Func191 ( ) : TptTokenKind ;
- private function AltFunc ( ) : TptTokenKind ;
- private procedure InitIdent ( ) ;
- private function GetPosXY ( ) : TTokenPoint ;
- private function IdentKind ( ) : TptTokenKind ;
- private procedure MakeMethodTables ( ) ;
- private procedure AddressOpProc ( ) ;
- private procedure AmpersandOpProc ( ) ;
- private procedure AsciiCharProc ( ) ;
- private procedure AnsiProc ( ) ;
- private procedure BorProc ( ) ;
- private procedure BraceCloseProc ( ) ;
- private procedure BraceOpenProc ( ) ;
- private procedure ColonProc ( ) ;
- private procedure CommaProc ( ) ;
- private procedure CRProc ( ) ;
- private procedure EqualProc ( ) ;
- private procedure GreaterProc ( ) ;
- private procedure IdentProc ( ) ;
- private procedure IntegerProc ( ) ;
- private procedure LFProc ( ) ;
- private procedure LowerProc ( ) ;
- private procedure MinusProc ( ) ;
- private procedure NullProc ( ) ;
- private procedure NumberProc ( ) ;
- private procedure PlusProc ( ) ;
- private procedure PointerSymbolProc ( ) ;
- private procedure PointProc ( ) ;
- private procedure RoundCloseProc ( ) ;
- private procedure RoundOpenProc ( ) ;
- private procedure SemiColonProc ( ) ;
- private procedure SlashProc ( ) ;
- private procedure SpaceProc ( ) ;
- private procedure SquareCloseProc ( ) ;
- private procedure SquareOpenProc ( ) ;
- private procedure StarProc ( ) ;
- private procedure StringProc ( ) ;
- private procedure StringDQProc ( ) ;
- private procedure SymbolProc ( ) ;
- private procedure UnknownProc ( ) ;
- private function GetToken ( ) : string ; inline;
- private function GetTokenLen ( ) : Integer ; inline;
- private function GetCompilerDirective ( ) : string ;
- private function GetDirectiveKind ( ) : TptTokenKind ;
- private function GetDirectiveParam ( ) : string ;
- private function GetStringContent ( ) : string ;
- private function GetIsJunk ( ) : Boolean ;
- private function GetIsSpace ( ) : Boolean ;
- private function GetIsOrdIdent ( ) : Boolean ;
- private function GetIsRealType ( ) : Boolean ;
- private function GetIsStringType ( ) : Boolean ;
- private function GetIsVariantType ( ) : Boolean ;
- private function GetIsAddOperator ( ) : Boolean ;
- private function GetIsMulOperator ( ) : Boolean ;
- private function GetIsRelativeOperator ( ) : Boolean ;
- private function GetIsCompilerDirective ( ) : Boolean ;
- private function GetIsOrdinalType ( ) : Boolean ;
- private function GetGenID ( ) : TptTokenKind ;
- private procedure EnterDefineBlock ( ADefined : Boolean ) ;
- private procedure ExitDefineBlock ( ) ;
- private procedure CloneDefinesFrom ( ALexer : TmwBasePasLex ) ;
- private procedure DoProcTable ( AChar : Char ) ;
- private function IsIdentifiers ( AChar : Char ) : Boolean ; inline;
- private function HashValue ( AChar : Char ) : Integer ;
- private function EvaluateComparison ( AValue1 : Extended; const AOper : string; AValue2 : Extended ) : Boolean ;
- private function EvaluateConditionalExpression ( const AParams : string ) : Boolean ;
- private procedure IncludeFile ( ) ;
- private function GetIncludeFileNameFromToken ( const IncludeToken : string ) : string ;
- private function GetOrigin ( ) : string ;
- private function GetRunPos ( ) : Integer ;
- private procedure SetRunPos ( const Value : Integer ) ;
- private procedure SetSharedBuffer ( SharedBuffer : PBufferRec ) ;
- private procedure DisposeBuffer ( Buf : PBufferRec ) ;
- private function GetFileName ( ) : string ;
- private procedure UpdateScopedEnums ( ) ;
- private procedure DoOnComment ( const CommentText : string ) ;
- protected procedure SetOrigin ( const NewValue : string ) ; virtual;
- public function CharAhead ( ) : Char ;
- public procedure Next ( ) ;
- public procedure NextNoJunk ( ) ;
- public procedure NextNoSpace ( ) ;
- public procedure Init ( ) ;
- public procedure InitFrom ( ALexer : TmwBasePasLex ) ;
- public function FirstInLine ( ) : Boolean ;
- public procedure AddDefine ( const ADefine : string ) ;
- public procedure RemoveDefine ( const ADefine : string ) ;
- public function IsDefined ( const ADefine : string ) : Boolean ;
- public procedure ClearDefines ( ) ;
- public procedure InitDefinesDefinedByCompiler ( ) ;
Properties
- public Buffer : PBufferRecread FBuffer
- public CompilerDirective : stringread GetCompilerDirective
- public DirectiveParam : stringread GetDirectiveParam
- public IsJunk : Booleanread GetIsJunk
- public IsSpace : Booleanread GetIsSpace
- public Origin : string
- public PosXY : TTokenPointread GetPosXY
- public RunPos : Integer
- public Token : stringread GetToken
- public TokenLen : Integerread GetTokenLen
- public TokenPos : Integerread FTokenPos
- public TokenID : TptTokenKindread FTokenID
- public ExID : TptTokenKindread FExID
- public GenID : TptTokenKindread GetGenID
- public StringContent : stringread GetStringContent
- public IsOrdIdent : Booleanread GetIsOrdIdent
- public IsOrdinalType : Booleanread GetIsOrdinalType
- public IsRealType : Booleanread GetIsRealType
- public IsStringType : Booleanread GetIsStringType
- public IsVariantType : Booleanread GetIsVariantType
- public IsRelativeOperator : Boolean
- public IsAddOperator : Booleanread GetIsAddOperator
- public IsMulOperator : Booleanread GetIsMulOperator
- public IsCompilerDirective : Boolean
- public AsmCode : Boolean
- public DirectiveParamOrigin : PWideChar
- public UseDefines : Boolean
- public ScopedEnums : Booleanread FScopedEnums
- public IncludeHandler : IIncludeHandler
- public FileName : stringread GetFileName
TmwPasLex
Ancestors
Members
Fields
Methods
- public constructor Create ( ) ;
- public destructor Destroy ( ) ;
- private function GetAheadExID ( ) : TptTokenKind ;
- private function GetAheadGenID ( ) : TptTokenKind ;
- private function GetAheadToken ( ) : string ;
- private function GetAheadTokenID ( ) : TptTokenKind ;
- protected procedure SetOrigin ( const NewValue : string ) ; override;
- public procedure InitAhead ( ) ;
- public procedure AheadNext ( ) ;