558 |
|
function TokenFound(var token: TSQLTokens): boolean; virtual; |
559 |
|
function InternalGetNextToken: TSQLTokens; virtual; |
560 |
|
procedure Reset; virtual; |
561 |
+ |
function ReadCharacters(NumOfChars: integer): AnsiString; |
562 |
|
|
563 |
|
{Token stack} |
564 |
|
procedure QueueToken(token: TSQLTokens; text:AnsiString); overload; |
1452 |
|
ResetQueue; |
1453 |
|
end; |
1454 |
|
|
1455 |
+ |
function TSQLTokeniser.ReadCharacters(NumOfChars: integer): AnsiString; |
1456 |
+ |
var i: integer; |
1457 |
+ |
begin |
1458 |
+ |
Result := FLastChar; |
1459 |
+ |
for i := 2 to NumOfChars do |
1460 |
+ |
begin |
1461 |
+ |
if GetNext = sqltEOF then break; |
1462 |
+ |
Result := Result + FLastChar; |
1463 |
+ |
end; |
1464 |
+ |
end; |
1465 |
+ |
|
1466 |
|
function TSQLTokeniser.GetNextToken: TSQLTokens; |
1467 |
|
begin |
1468 |
|
if FQueueState = tsRelease then |