[Properties (by Name)] [Methods (by Name)] [Events (by Name)]
Source position: webidlscanner.pp line 151
type TDirectiveEvaluator = class |
protected |
type |
TDirectiveToken = ( |
dtEOF, |
dtIdentifier, |
dtNumberInteger, |
dtNumberFloat, |
dtBracketOpen, |
dtBracketClose, |
dtNot, |
dtEqual, |
dtLess, |
dtLessEqual, |
dtGreater, |
dtGreaterEqual |
); |
TPrecedenceLevel = ( |
ceplFirst, |
ceplSecond, |
ceplThird, |
ceplFourth |
); |
TStackItem = record |
Level: TPrecedenceLevel; |
Operathor: TDirectiveToken; |
Operand: string; |
OperandPos: PChar; |
end; |
protected |
const |
BoolValues = array [boolean] of string; = ('0', '1') |
dtNames = array [TDirectiveToken] of string; = ('EOF', 'Identifier', 'Integer', 'Float', '(', ')', '!', '=', '<', '<=', '>', '>=') |
protected |
FExpr: PChar; |
FToken: TDirectiveToken; |
FTokenStart: PChar; |
FTokenEnd: PChar; |
FStack: array of TStackItem; |
FStackTop: Integer; |
function IsFalse(); |
function IsTrue(); |
function IsInteger(); |
function IsFloat(); |
procedure NextToken; |
procedure Log(); |
procedure LogXExpectedButTokenFound(); |
procedure ReadOperand(); |
procedure ReadExpression; |
procedure ResolveStack(); |
function GetTokenString; |
function GetStringLiteralValue; |
procedure Push(); |
public |
MsgLineNumber: Integer; |
MsgPos: Integer; |
MsgNumber: Integer; |
MsgPattern: string; |
constructor Create; |
destructor Destroy; override; |
function Eval(); |
property OnEvalVariable: TDirectiveEvalVarEvent; [rw] |
property OnEvalFunction: TDirectiveEvalFunctionEvent; [rw] |
property OnLog: TDirectiveEvalLogEvent; [rw] |
end; |
| |
TObject |