Unit 'lpcompiler' Package
[Overview][Constants][Types][Classes][Index] [#pl_lape]

TLapeCompiler

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Declaration

Source position: lpcompiler.pas line 69

type TLapeCompiler = class(TLapeCompilerBase)

protected

  FTypeID: Integer;

  

  FTokenizers: TLapeTokenizerArray;

  

  FTokenizer: Integer;

  

  FInternalMethodMap: TLapeInternalMethodMap;

  

  FTree: TLapeTree_Base;

  

  FDelayedTree: TLapeTree_DelayedStatementList;

  

  FImporting: Pointer;

  

  FIncludes: TStringList;

  

  FBaseDefines: TLapeDefines;

  

  FDefines: TLapeDefines;

  

  FConditionalStack: TLapeConditionalStack;

  

  FOnHandleDirective: TLapeHandleDirective;

  

  FOnHandleExternal: TLapeHandleExternal;

  

  FOnFindFile: TLapeFindFile;

  

  FAfterParsing: TLapeCompilerNotification;

  

  FPreprocessorFuncs: TLapePreprocessorFuncs;

  

  FPreprocessorMacros: TLapePreprocessorFuncs;

  

  function getPDocPos;

  

  function getDocPos; override;

  

  procedure Reset; override;

  

  function getImporting; virtual;

  

  procedure setImporting(); virtual;

  

  procedure setBaseDefines(); virtual;

  

  function getTokenizer; virtual;

  

  procedure setTokenizer(); virtual;

  

  procedure pushTokenizer(); virtual;

  

  function popTokenizer; virtual;

  

  procedure pushConditional(); virtual;

  

  function popConditional; virtual;

  

  procedure SetUniqueTypeID(); virtual;

  

  function GetObjectifyMethod(); virtual;

  

  function GetDisposeMethod(); virtual;

  

  function GetCopyMethod(); virtual;

  

  function GetCompareMethod(); virtual;

  

  function GetGreaterThanMethod(); virtual;

  

  function GetLessThanMethod(); virtual;

  

  function GetEqualsMethod(); virtual;

  

  function GetToStringMethod(); virtual;

  

  procedure InitBaseDefinitions; virtual;

  

  procedure InitBaseMath; virtual;

  

  procedure InitBaseString; virtual;

  

  procedure InitBaseDateTime; virtual;

  

  procedure InitBaseVariant; virtual;

  

  procedure InitBaseFile; virtual;

  

  function EnsureExpression(); virtual;

  

  function EnsureTypeExpression(); virtual;

  

  function EnsureRange();

  

  function EnsureConstantRange();

  

  function FindFile();

  

  function HandlePreprocessorFunc(); virtual;

  

  function HandlePreprocessorMacro(); virtual;

  

  function EvalPreprocessorExpr(); virtual;

  

  function EvalPreprocessorMacro(); virtual;

  

  function HandleDirective(); virtual;

  

  function InIgnore; virtual;

  

  function Next; virtual;

  

  function isNext();

  

  function Peek; virtual;

  

  function Expect();

  

  procedure ParseDeclHint(); virtual;

  

  procedure ParseExpressionEnd();

  

  function ParseIdentifierList(); virtual;

  

  function ParseBlockList(); virtual;

  

  function ParseMethodHeader(); virtual;

  

  function ParseMethod();

  

  function ParseType(); virtual;

  

  procedure ParseTypeBlock; virtual;

  

  procedure ParseLabelBlock; virtual;

  

  function ParseVarBlock(); virtual;

  

  function ParseExpression(); virtual;

  

  function ParseTypeExpression(); virtual;

  

  function ParseStatement(); virtual;

  

  function ParseStatementList; virtual;

  

  function ParseBeginEnd(); virtual;

  

  function ParseCase(); virtual;

  

  function ParseFor(); virtual;

  

  function ParseIf(); virtual;

  

  function ParseRepeat(); virtual;

  

  function ParseTry(); virtual;

  

  function ParseWhile(); virtual;

  

  function ParseWith(); virtual;

  

public

  FreeTokenizer: Boolean;

  

  FreeTree: Boolean;

  

  constructor Create(); virtual;

  

  destructor Destroy; override;

  

  procedure Clear; override;

  

  function getState; virtual;

  

  procedure setState(); virtual;

  

  procedure freeState(); virtual;

  

  function getTempTokenizerState();

  

  procedure resetTokenizerState(); virtual;

  

  procedure freeTempTokenizerState(); virtual;

  

  function getVarStates; virtual;

  

  procedure setVarStates(); virtual;

  

  procedure freeVarStates(); virtual;

  

  procedure StartImporting; virtual;

  

  procedure EndImporting; virtual;

  

  function addDelayedExpression(); virtual;

  

  function ParseFile; virtual;

  

  procedure EmitCode(); override;

  

  function Compile; virtual;

  

  procedure CheckAfterCompile; virtual;

  

  procedure VarToDefault(); override;

  

  procedure FinalizeVar(); override;

  

  function getDeclaration(); override;

  

  function hasDeclaration();

  

  function getDeclarationNoWith();

  

  function getExpression();

  

  function hasInclude(); virtual;

  

  function hasBaseDefine(); virtual;

  

  function hasDefine(); virtual;

  

  procedure addBaseDefine(); virtual;

  

  procedure addDefine(); virtual;

  

  procedure addPreprocessorFunc(); virtual;

  

  procedure addPreprocessorMacro(); virtual;

  

  function addLocalDecl(); override;

  

  function addLocalVar(); virtual;

  

  function addGlobalVar();

  

  function addGlobalType();

  

  function addGlobalFunc();

  

  function addGlobalMethod();

  

  function addDelayedCode(); virtual;

  

  property InternalMethodMap: TLapeInternalMethodMap; [r]

  

  property Tree: TLapeTree_Base; [r]

  

  property DelayedTree: TLapeTree_DelayedStatementList; [r]

  

  property Importing: Boolean; [rw]

  

  property Tokenizer: TLapeTokenizerBase; [rw]

  

  property Defines: TLapeDefines; [rw]

  

  property OnHandleDirective: TLapeHandleDirective; [rw]

  

  property OnHandleExternal: TLapeHandleExternal; [rw]

  

  property OnFindFile: TLapeFindFile; [rw]

  

  property AfterParsing: TLapeCompilerNotification; [r]

  

end;

Inheritance

TLapeCompiler

  

|

TLapeCompilerBase

  

|

TLapeBaseDeclClass

  

|

TLapeBaseClass

  

|

TObject,IUnknown



CT Web help

CodeTyphon Studio