mirror of
https://github.com/HeidiSQL/HeidiSQL.git
synced 2025-08-06 18:24:26 +08:00
3849 lines
110 KiB
ObjectPascal
3849 lines
110 KiB
ObjectPascal
{-------------------------------------------------------------------------------
|
|
The contents of this file are subject to the Mozilla Public License
|
|
Version 1.1 (the "License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
http://www.mozilla.org/MPL/
|
|
|
|
Software distributed under the License is distributed on an "AS IS" basis,
|
|
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
|
|
the specific language governing rights and limitations under the License.
|
|
|
|
The Original Code is: SynHighlighterPerl.pas, released 2000-04-10.
|
|
The Original Code is based on the DcjSynPerl.pas file from the
|
|
mwEdit component suite by Martin Waldenburg and other developers, the Initial
|
|
Author of this file is Michael Trier.
|
|
Unicode translation by Maël Hörz.
|
|
All Rights Reserved.
|
|
|
|
Contributors to the SynEdit and mwEdit projects are listed in the
|
|
Contributors.txt file.
|
|
|
|
Alternatively, the contents of this file may be used under the terms of the
|
|
GNU General Public License Version 2 or later (the "GPL"), in which case
|
|
the provisions of the GPL are applicable instead of those above.
|
|
If you wish to allow use of your version of this file only under the terms
|
|
of the GPL and not to allow others to use your version of this file
|
|
under the MPL, indicate your decision by deleting the provisions above and
|
|
replace them with the notice and other provisions required by the GPL.
|
|
If you do not delete the provisions above, a recipient may use your version
|
|
of this file under either the MPL or the GPL.
|
|
|
|
$Id: SynHighlighterPerl.pas,v 1.14.2.8 2008/09/14 16:25:01 maelh Exp $
|
|
|
|
You may retrieve the latest version of this file at the SynEdit home page,
|
|
located at http://SynEdit.SourceForge.net
|
|
|
|
Known Issues:
|
|
- Using q, qq, qw, qx, m, s, tr will not properly parse the contained
|
|
information.
|
|
- Not very optimized.
|
|
-------------------------------------------------------------------------------}
|
|
{
|
|
@abstract(Provides a Perl syntax highlighter for SynEdit)
|
|
@author(Michael Trier)
|
|
@created(1999, converted to SynEdit 2000-04-10 by Michael Hieke)
|
|
@lastmod(2000-06-23)
|
|
The SynHighlighterPerl unit provides SynEdit with a Perl syntax highlighter.
|
|
}
|
|
|
|
unit SynHighlighterPerl;
|
|
|
|
{$I SynEdit.inc}
|
|
|
|
interface
|
|
|
|
uses
|
|
Graphics,
|
|
SynEditTypes,
|
|
SynEditHighlighter,
|
|
SynUnicode,
|
|
SysUtils,
|
|
Classes;
|
|
|
|
type
|
|
TtkTokenKind = (tkComment, tkIdentifier, tkKey, tkNull, tkNumber, tkOperator,
|
|
tkPragma, tkSpace, tkString, tkSymbol, tkUnknown, tkVariable);
|
|
|
|
PIdentFuncTableFunc = ^TIdentFuncTableFunc;
|
|
TIdentFuncTableFunc = function (Index: Integer): TtkTokenKind of object;
|
|
|
|
TSynPerlSyn = class(TSynCustomHighlighter)
|
|
private
|
|
FTokenID: TtkTokenKind;
|
|
FIdentFuncTable: array[0..2422] of TIdentFuncTableFunc;
|
|
FCommentAttri: TSynHighlighterAttributes;
|
|
FIdentifierAttri: TSynHighlighterAttributes;
|
|
FInvalidAttri: TSynHighlighterAttributes;
|
|
FKeyAttri: TSynHighlighterAttributes;
|
|
FNumberAttri: TSynHighlighterAttributes;
|
|
FOperatorAttri: TSynHighlighterAttributes;
|
|
FPragmaAttri: TSynHighlighterAttributes;
|
|
FSpaceAttri: TSynHighlighterAttributes;
|
|
FStringAttri: TSynHighlighterAttributes;
|
|
FSymbolAttri: TSynHighlighterAttributes;
|
|
FVariableAttri: TSynHighlighterAttributes;
|
|
function AltFunc(Index: Integer): TtkTokenKind;
|
|
function Func36accumulator(Index: Integer): TtkTokenKind;
|
|
function Func36arg(Index: Integer): TtkTokenKind;
|
|
function Func36argv(Index: Integer): TtkTokenKind;
|
|
function Func36basetime(Index: Integer): TtkTokenKind;
|
|
function Func36child95error(Index: Integer): TtkTokenKind;
|
|
function Func36debugging(Index: Integer): TtkTokenKind;
|
|
function Func36effective95group95id(Index: Integer): TtkTokenKind;
|
|
function Func36effective95user95id(Index: Integer): TtkTokenKind;
|
|
function Func36egid(Index: Integer): TtkTokenKind;
|
|
function Func36env(Index: Integer): TtkTokenKind;
|
|
function Func36errno(Index: Integer): TtkTokenKind;
|
|
function Func36euid(Index: Integer): TtkTokenKind;
|
|
function Func36eval95error(Index: Integer): TtkTokenKind;
|
|
function Func36executable95name(Index: Integer): TtkTokenKind;
|
|
function Func36format95formfeed(Index: Integer): TtkTokenKind;
|
|
function Func36format95line95break95characters(Index: Integer): TtkTokenKind;
|
|
function Func36format95lines95left(Index: Integer): TtkTokenKind;
|
|
function Func36format95lines95per95page(Index: Integer): TtkTokenKind;
|
|
function Func36format95name(Index: Integer): TtkTokenKind;
|
|
function Func36format95page95number(Index: Integer): TtkTokenKind;
|
|
function Func36format95top95name(Index: Integer): TtkTokenKind;
|
|
function Func36gid(Index: Integer): TtkTokenKind;
|
|
function Func36inplace95edit(Index: Integer): TtkTokenKind;
|
|
function Func36input95line95number(Index: Integer): TtkTokenKind;
|
|
function Func36input95record95separator(Index: Integer): TtkTokenKind;
|
|
function Func36last95paren95match(Index: Integer): TtkTokenKind;
|
|
function Func36list95separator(Index: Integer): TtkTokenKind;
|
|
function Func36match(Index: Integer): TtkTokenKind;
|
|
function Func36multiline95matching(Index: Integer): TtkTokenKind;
|
|
function Func36nr(Index: Integer): TtkTokenKind;
|
|
function Func36ofmt(Index: Integer): TtkTokenKind;
|
|
function Func36ors(Index: Integer): TtkTokenKind;
|
|
function Func36os95error(Index: Integer): TtkTokenKind;
|
|
function Func36output95autoflush(Index: Integer): TtkTokenKind;
|
|
function Func36output95field95separator(Index: Integer): TtkTokenKind;
|
|
function Func36perl95version(Index: Integer): TtkTokenKind;
|
|
function Func36perldb(Index: Integer): TtkTokenKind;
|
|
function Func36pid(Index: Integer): TtkTokenKind;
|
|
function Func36postmatch(Index: Integer): TtkTokenKind;
|
|
function Func36prematch(Index: Integer): TtkTokenKind;
|
|
function Func36process95id(Index: Integer): TtkTokenKind;
|
|
function Func36program95name(Index: Integer): TtkTokenKind;
|
|
function Func36real95group95id(Index: Integer): TtkTokenKind;
|
|
function Func36real95user95id(Index: Integer): TtkTokenKind;
|
|
function Func36rs(Index: Integer): TtkTokenKind;
|
|
function Func36sig(Index: Integer): TtkTokenKind;
|
|
function Func36subscript95separator(Index: Integer): TtkTokenKind;
|
|
function Func36subsep(Index: Integer): TtkTokenKind;
|
|
function Func36system95fd95max(Index: Integer): TtkTokenKind;
|
|
function Func36uid(Index: Integer): TtkTokenKind;
|
|
function Func36warning(Index: Integer): TtkTokenKind;
|
|
function Func37inc(Index: Integer): TtkTokenKind;
|
|
function Func64argv(Index: Integer): TtkTokenKind;
|
|
function Func64inc(Index: Integer): TtkTokenKind;
|
|
function FuncAbs(Index: Integer): TtkTokenKind;
|
|
function FuncAccept(Index: Integer): TtkTokenKind;
|
|
function FuncAlarm(Index: Integer): TtkTokenKind;
|
|
function FuncAnd(Index: Integer): TtkTokenKind;
|
|
function FuncAtan2(Index: Integer): TtkTokenKind;
|
|
function FuncBind(Index: Integer): TtkTokenKind;
|
|
function FuncBinmode(Index: Integer): TtkTokenKind;
|
|
function FuncBless(Index: Integer): TtkTokenKind;
|
|
function FuncCaller(Index: Integer): TtkTokenKind;
|
|
function FuncChdir(Index: Integer): TtkTokenKind;
|
|
function FuncChmod(Index: Integer): TtkTokenKind;
|
|
function FuncChomp(Index: Integer): TtkTokenKind;
|
|
function FuncChop(Index: Integer): TtkTokenKind;
|
|
function FuncChown(Index: Integer): TtkTokenKind;
|
|
function FuncChr(Index: Integer): TtkTokenKind;
|
|
function FuncChroot(Index: Integer): TtkTokenKind;
|
|
function FuncClose(Index: Integer): TtkTokenKind;
|
|
function FuncClosedir(Index: Integer): TtkTokenKind;
|
|
function FuncCmp(Index: Integer): TtkTokenKind;
|
|
function FuncConnect(Index: Integer): TtkTokenKind;
|
|
function FuncConstant(Index: Integer): TtkTokenKind;
|
|
function FuncCos(Index: Integer): TtkTokenKind;
|
|
function FuncCrypt(Index: Integer): TtkTokenKind;
|
|
function FuncDbmclose(Index: Integer): TtkTokenKind;
|
|
function FuncDbmopen(Index: Integer): TtkTokenKind;
|
|
function FuncDefined(Index: Integer): TtkTokenKind;
|
|
function FuncDelete(Index: Integer): TtkTokenKind;
|
|
function FuncDiagnostics(Index: Integer): TtkTokenKind;
|
|
function FuncDie(Index: Integer): TtkTokenKind;
|
|
function FuncDo(Index: Integer): TtkTokenKind;
|
|
function FuncDump(Index: Integer): TtkTokenKind;
|
|
function FuncEach(Index: Integer): TtkTokenKind;
|
|
function FuncElse(Index: Integer): TtkTokenKind;
|
|
function FuncElsif(Index: Integer): TtkTokenKind;
|
|
function FuncEndgrent(Index: Integer): TtkTokenKind;
|
|
function FuncEndhostent(Index: Integer): TtkTokenKind;
|
|
function FuncEndnetent(Index: Integer): TtkTokenKind;
|
|
function FuncEndprotoent(Index: Integer): TtkTokenKind;
|
|
function FuncEndpwent(Index: Integer): TtkTokenKind;
|
|
function FuncEndservent(Index: Integer): TtkTokenKind;
|
|
function FuncEof(Index: Integer): TtkTokenKind;
|
|
function FuncEq(Index: Integer): TtkTokenKind;
|
|
function FuncEval(Index: Integer): TtkTokenKind;
|
|
function FuncExec(Index: Integer): TtkTokenKind;
|
|
function FuncExists(Index: Integer): TtkTokenKind;
|
|
function FuncExit(Index: Integer): TtkTokenKind;
|
|
function FuncExp(Index: Integer): TtkTokenKind;
|
|
function FuncFcntl(Index: Integer): TtkTokenKind;
|
|
function FuncFileno(Index: Integer): TtkTokenKind;
|
|
function FuncFlock(Index: Integer): TtkTokenKind;
|
|
function FuncFor(Index: Integer): TtkTokenKind;
|
|
function FuncForeach(Index: Integer): TtkTokenKind;
|
|
function FuncFork(Index: Integer): TtkTokenKind;
|
|
function FuncFormat(Index: Integer): TtkTokenKind;
|
|
function FuncFormline(Index: Integer): TtkTokenKind;
|
|
function FuncGe(Index: Integer): TtkTokenKind;
|
|
function FuncGetc(Index: Integer): TtkTokenKind;
|
|
function FuncGetgrent(Index: Integer): TtkTokenKind;
|
|
function FuncGetgrgid(Index: Integer): TtkTokenKind;
|
|
function FuncGetgrnam(Index: Integer): TtkTokenKind;
|
|
function FuncGethostbyaddr(Index: Integer): TtkTokenKind;
|
|
function FuncGethostbyname(Index: Integer): TtkTokenKind;
|
|
function FuncGethostent(Index: Integer): TtkTokenKind;
|
|
function FuncGetlogin(Index: Integer): TtkTokenKind;
|
|
function FuncGetnetbyaddr(Index: Integer): TtkTokenKind;
|
|
function FuncGetnetbyname(Index: Integer): TtkTokenKind;
|
|
function FuncGetnetent(Index: Integer): TtkTokenKind;
|
|
function FuncGetpeername(Index: Integer): TtkTokenKind;
|
|
function FuncGetpgrp(Index: Integer): TtkTokenKind;
|
|
function FuncGetppid(Index: Integer): TtkTokenKind;
|
|
function FuncGetpriority(Index: Integer): TtkTokenKind;
|
|
function FuncGetprotobyname(Index: Integer): TtkTokenKind;
|
|
function FuncGetprotobynumber(Index: Integer): TtkTokenKind;
|
|
function FuncGetprotoent(Index: Integer): TtkTokenKind;
|
|
function FuncGetpwent(Index: Integer): TtkTokenKind;
|
|
function FuncGetpwnam(Index: Integer): TtkTokenKind;
|
|
function FuncGetpwuid(Index: Integer): TtkTokenKind;
|
|
function FuncGetservbyname(Index: Integer): TtkTokenKind;
|
|
function FuncGetservbyport(Index: Integer): TtkTokenKind;
|
|
function FuncGetservent(Index: Integer): TtkTokenKind;
|
|
function FuncGetsockname(Index: Integer): TtkTokenKind;
|
|
function FuncGetsockopt(Index: Integer): TtkTokenKind;
|
|
function FuncGlob(Index: Integer): TtkTokenKind;
|
|
function FuncGmtime(Index: Integer): TtkTokenKind;
|
|
function FuncGoto(Index: Integer): TtkTokenKind;
|
|
function FuncGrep(Index: Integer): TtkTokenKind;
|
|
function FuncGt(Index: Integer): TtkTokenKind;
|
|
function FuncHex(Index: Integer): TtkTokenKind;
|
|
function FuncIf(Index: Integer): TtkTokenKind;
|
|
function FuncImport(Index: Integer): TtkTokenKind;
|
|
function FuncIndex(Index: Integer): TtkTokenKind;
|
|
function FuncInt(Index: Integer): TtkTokenKind;
|
|
function FuncInteger(Index: Integer): TtkTokenKind;
|
|
function FuncIoctl(Index: Integer): TtkTokenKind;
|
|
function FuncJoin(Index: Integer): TtkTokenKind;
|
|
function FuncKeys(Index: Integer): TtkTokenKind;
|
|
function FuncKill(Index: Integer): TtkTokenKind;
|
|
function FuncLast(Index: Integer): TtkTokenKind;
|
|
function FuncLc(Index: Integer): TtkTokenKind;
|
|
function FuncLcfirst(Index: Integer): TtkTokenKind;
|
|
function FuncLe(Index: Integer): TtkTokenKind;
|
|
function FuncLength(Index: Integer): TtkTokenKind;
|
|
function FuncLess(Index: Integer): TtkTokenKind;
|
|
function FuncLink(Index: Integer): TtkTokenKind;
|
|
function FuncListen(Index: Integer): TtkTokenKind;
|
|
function FuncLocal(Index: Integer): TtkTokenKind;
|
|
function FuncLocale(Index: Integer): TtkTokenKind;
|
|
function FuncLocaltime(Index: Integer): TtkTokenKind;
|
|
function FuncLog(Index: Integer): TtkTokenKind;
|
|
function FuncLstat(Index: Integer): TtkTokenKind;
|
|
function FuncLt(Index: Integer): TtkTokenKind;
|
|
function FuncM(Index: Integer): TtkTokenKind;
|
|
function FuncMap(Index: Integer): TtkTokenKind;
|
|
function FuncMkdir(Index: Integer): TtkTokenKind;
|
|
function FuncMsgctl(Index: Integer): TtkTokenKind;
|
|
function FuncMsgget(Index: Integer): TtkTokenKind;
|
|
function FuncMsgrcv(Index: Integer): TtkTokenKind;
|
|
function FuncMsgsnd(Index: Integer): TtkTokenKind;
|
|
function FuncMy(Index: Integer): TtkTokenKind;
|
|
function FuncNe(Index: Integer): TtkTokenKind;
|
|
function FuncNext(Index: Integer): TtkTokenKind;
|
|
function FuncNo(Index: Integer): TtkTokenKind;
|
|
function FuncNot(Index: Integer): TtkTokenKind;
|
|
function FuncOct(Index: Integer): TtkTokenKind;
|
|
function FuncOpen(Index: Integer): TtkTokenKind;
|
|
function FuncOpendir(Index: Integer): TtkTokenKind;
|
|
function FuncOr(Index: Integer): TtkTokenKind;
|
|
function FuncOrd(Index: Integer): TtkTokenKind;
|
|
function FuncPack(Index: Integer): TtkTokenKind;
|
|
function FuncPackage(Index: Integer): TtkTokenKind;
|
|
function FuncPipe(Index: Integer): TtkTokenKind;
|
|
function FuncPop(Index: Integer): TtkTokenKind;
|
|
function FuncPos(Index: Integer): TtkTokenKind;
|
|
function FuncPrint(Index: Integer): TtkTokenKind;
|
|
function FuncPush(Index: Integer): TtkTokenKind;
|
|
function FuncQ(Index: Integer): TtkTokenKind;
|
|
function FuncQq(Index: Integer): TtkTokenKind;
|
|
function FuncQuotemeta(Index: Integer): TtkTokenKind;
|
|
function FuncQw(Index: Integer): TtkTokenKind;
|
|
function FuncQx(Index: Integer): TtkTokenKind;
|
|
function FuncRand(Index: Integer): TtkTokenKind;
|
|
function FuncRead(Index: Integer): TtkTokenKind;
|
|
function FuncReaddir(Index: Integer): TtkTokenKind;
|
|
function FuncReadlink(Index: Integer): TtkTokenKind;
|
|
function FuncRecv(Index: Integer): TtkTokenKind;
|
|
function FuncRedo(Index: Integer): TtkTokenKind;
|
|
function FuncRef(Index: Integer): TtkTokenKind;
|
|
function FuncRename(Index: Integer): TtkTokenKind;
|
|
function FuncRequire(Index: Integer): TtkTokenKind;
|
|
function FuncReset(Index: Integer): TtkTokenKind;
|
|
function FuncReturn(Index: Integer): TtkTokenKind;
|
|
function FuncReverse(Index: Integer): TtkTokenKind;
|
|
function FuncRewinddir(Index: Integer): TtkTokenKind;
|
|
function FuncRindex(Index: Integer): TtkTokenKind;
|
|
function FuncRmdir(Index: Integer): TtkTokenKind;
|
|
function FuncScalar(Index: Integer): TtkTokenKind;
|
|
function FuncSeek(Index: Integer): TtkTokenKind;
|
|
function FuncSeekdir(Index: Integer): TtkTokenKind;
|
|
function FuncSelect(Index: Integer): TtkTokenKind;
|
|
function FuncSemctl(Index: Integer): TtkTokenKind;
|
|
function FuncSemget(Index: Integer): TtkTokenKind;
|
|
function FuncSemop(Index: Integer): TtkTokenKind;
|
|
function FuncSend(Index: Integer): TtkTokenKind;
|
|
function FuncSetgrent(Index: Integer): TtkTokenKind;
|
|
function FuncSethostent(Index: Integer): TtkTokenKind;
|
|
function FuncSetnetent(Index: Integer): TtkTokenKind;
|
|
function FuncSetpgrp(Index: Integer): TtkTokenKind;
|
|
function FuncSetpriority(Index: Integer): TtkTokenKind;
|
|
function FuncSetprotoent(Index: Integer): TtkTokenKind;
|
|
function FuncSetpwent(Index: Integer): TtkTokenKind;
|
|
function FuncSetservent(Index: Integer): TtkTokenKind;
|
|
function FuncSetsockopt(Index: Integer): TtkTokenKind;
|
|
function FuncShift(Index: Integer): TtkTokenKind;
|
|
function FuncShmctl(Index: Integer): TtkTokenKind;
|
|
function FuncShmget(Index: Integer): TtkTokenKind;
|
|
function FuncShmread(Index: Integer): TtkTokenKind;
|
|
function FuncShmwrite(Index: Integer): TtkTokenKind;
|
|
function FuncShutdown(Index: Integer): TtkTokenKind;
|
|
function FuncSigtrap(Index: Integer): TtkTokenKind;
|
|
function FuncSin(Index: Integer): TtkTokenKind;
|
|
function FuncSleep(Index: Integer): TtkTokenKind;
|
|
function FuncSocket(Index: Integer): TtkTokenKind;
|
|
function FuncSocketpair(Index: Integer): TtkTokenKind;
|
|
function FuncSort(Index: Integer): TtkTokenKind;
|
|
function FuncSplice(Index: Integer): TtkTokenKind;
|
|
function FuncSplit(Index: Integer): TtkTokenKind;
|
|
function FuncSprintf(Index: Integer): TtkTokenKind;
|
|
function FuncSqrt(Index: Integer): TtkTokenKind;
|
|
function FuncSrand(Index: Integer): TtkTokenKind;
|
|
function FuncStat(Index: Integer): TtkTokenKind;
|
|
function FuncStrict(Index: Integer): TtkTokenKind;
|
|
function FuncStudy(Index: Integer): TtkTokenKind;
|
|
function FuncSub(Index: Integer): TtkTokenKind;
|
|
function FuncSubs(Index: Integer): TtkTokenKind;
|
|
function FuncSubstr(Index: Integer): TtkTokenKind;
|
|
function FuncSymlink(Index: Integer): TtkTokenKind;
|
|
function FuncSyscall(Index: Integer): TtkTokenKind;
|
|
function FuncSysread(Index: Integer): TtkTokenKind;
|
|
function FuncSystem(Index: Integer): TtkTokenKind;
|
|
function FuncSyswrite(Index: Integer): TtkTokenKind;
|
|
function FuncTell(Index: Integer): TtkTokenKind;
|
|
function FuncTelldir(Index: Integer): TtkTokenKind;
|
|
function FuncTie(Index: Integer): TtkTokenKind;
|
|
function FuncTime(Index: Integer): TtkTokenKind;
|
|
function FuncTimes(Index: Integer): TtkTokenKind;
|
|
function FuncTr(Index: Integer): TtkTokenKind;
|
|
function FuncTruncate(Index: Integer): TtkTokenKind;
|
|
function FuncUc(Index: Integer): TtkTokenKind;
|
|
function FuncUcfirst(Index: Integer): TtkTokenKind;
|
|
function FuncUmask(Index: Integer): TtkTokenKind;
|
|
function FuncUndef(Index: Integer): TtkTokenKind;
|
|
function FuncUnless(Index: Integer): TtkTokenKind;
|
|
function FuncUnlink(Index: Integer): TtkTokenKind;
|
|
function FuncUnpack(Index: Integer): TtkTokenKind;
|
|
function FuncUnshift(Index: Integer): TtkTokenKind;
|
|
function FuncUntie(Index: Integer): TtkTokenKind;
|
|
function FuncUse(Index: Integer): TtkTokenKind;
|
|
function FuncUtime(Index: Integer): TtkTokenKind;
|
|
function FuncValues(Index: Integer): TtkTokenKind;
|
|
function FuncVars(Index: Integer): TtkTokenKind;
|
|
function FuncVec(Index: Integer): TtkTokenKind;
|
|
function FuncWait(Index: Integer): TtkTokenKind;
|
|
function FuncWaitpid(Index: Integer): TtkTokenKind;
|
|
function FuncWantarray(Index: Integer): TtkTokenKind;
|
|
function FuncWarn(Index: Integer): TtkTokenKind;
|
|
function FuncWhile(Index: Integer): TtkTokenKind;
|
|
function FuncWrite(Index: Integer): TtkTokenKind;
|
|
function FuncXor(Index: Integer): TtkTokenKind;
|
|
function HashKey(Str: PWideChar): Cardinal;
|
|
function IdentKind(MayBe: PWideChar): TtkTokenKind;
|
|
procedure InitIdent;
|
|
procedure AndSymbolProc;
|
|
procedure CRProc;
|
|
procedure ColonProc;
|
|
procedure CommentProc;
|
|
procedure EqualProc;
|
|
procedure GreaterProc;
|
|
procedure IdentProc;
|
|
procedure LFProc;
|
|
procedure LowerProc;
|
|
procedure MinusProc;
|
|
procedure NotSymbolProc;
|
|
procedure NullProc;
|
|
procedure NumberProc;
|
|
procedure OrSymbolProc;
|
|
procedure PlusProc;
|
|
procedure SlashProc;
|
|
procedure SpaceProc;
|
|
procedure StarProc;
|
|
procedure StringInterpProc;
|
|
procedure StringLiteralProc;
|
|
procedure SymbolProc;
|
|
procedure XOrSymbolProc;
|
|
procedure UnknownProc;
|
|
protected
|
|
function GetSampleSource: UnicodeString; override;
|
|
function IsFilterStored: Boolean; override;
|
|
public
|
|
class function GetLanguageName: string; override;
|
|
class function GetFriendlyLanguageName: UnicodeString; override;
|
|
public
|
|
constructor Create(AOwner: TComponent); override;
|
|
function GetDefaultAttribute(Index: Integer): TSynHighlighterAttributes;
|
|
override;
|
|
function GetEol: Boolean; override;
|
|
function GetTokenID: TtkTokenKind;
|
|
function GetTokenAttribute: TSynHighlighterAttributes; override;
|
|
function GetTokenKind: Integer; override;
|
|
function IsIdentChar(AChar: WideChar): Boolean; override;
|
|
procedure Next; override;
|
|
published
|
|
property CommentAttri: TSynHighlighterAttributes read FCommentAttri
|
|
write FCommentAttri;
|
|
property IdentifierAttri: TSynHighlighterAttributes read FIdentifierAttri
|
|
write FIdentifierAttri;
|
|
property InvalidAttri: TSynHighlighterAttributes read FInvalidAttri
|
|
write FInvalidAttri;
|
|
property KeyAttri: TSynHighlighterAttributes read FKeyAttri write FKeyAttri;
|
|
property NumberAttri: TSynHighlighterAttributes read FNumberAttri
|
|
write FNumberAttri;
|
|
property OperatorAttri: TSynHighlighterAttributes read FOperatorAttri
|
|
write FOperatorAttri;
|
|
property PragmaAttri: TSynHighlighterAttributes read FPragmaAttri
|
|
write FPragmaAttri;
|
|
property SpaceAttri: TSynHighlighterAttributes read FSpaceAttri
|
|
write FSpaceAttri;
|
|
property StringAttri: TSynHighlighterAttributes read FStringAttri
|
|
write FStringAttri;
|
|
property SymbolAttri: TSynHighlighterAttributes read FSymbolAttri
|
|
write FSymbolAttri;
|
|
property VariableAttri: TSynHighlighterAttributes read FVariableAttri
|
|
write FVariableAttri;
|
|
end;
|
|
|
|
implementation
|
|
|
|
uses
|
|
SynEditStrConst;
|
|
|
|
const
|
|
KeyWords: array[0..281] of UnicodeString = (
|
|
'$ACCUMULATOR', '$ARG', '$ARGV', '$BASETIME', '$CHILD_ERROR', '$DEBUGGING',
|
|
'$EFFECTIVE_GROUP_ID', '$EFFECTIVE_USER_ID', '$EGID', '$ENV', '$ERRNO',
|
|
'$EUID', '$EVAL_ERROR', '$EXECUTABLE_NAME', '$FORMAT_FORMFEED',
|
|
'$FORMAT_LINE_BREAK_CHARACTERS', '$FORMAT_LINES_LEFT',
|
|
'$FORMAT_LINES_PER_PAGE', '$FORMAT_NAME', '$FORMAT_PAGE_NUMBER',
|
|
'$FORMAT_TOP_NAME', '$GID', '$INPLACE_EDIT', '$INPUT_LINE_NUMBER',
|
|
'$INPUT_RECORD_SEPARATOR', '$LAST_PAREN_MATCH', '$LIST_SEPARATOR', '$MATCH',
|
|
'$MULTILINE_MATCHING', '$NR', '$OFMT', '$ORS', '$OS_ERROR',
|
|
'$OUTPUT_AUTOFLUSH', '$OUTPUT_FIELD_SEPARATOR', '$PERL_VERSION', '$PERLDB',
|
|
'$PID', '$POSTMATCH', '$PREMATCH', '$PROCESS_ID', '$PROGRAM_NAME',
|
|
'$REAL_GROUP_ID', '$REAL_USER_ID', '$RS', '$SIG', '$SUBSCRIPT_SEPARATOR',
|
|
'$SUBSEP', '$SYSTEM_FD_MAX', '$UID', '$WARNING', '%INC', '@ARGV', '@INC',
|
|
'abs', 'accept', 'alarm', 'and', 'atan2', 'bind', 'binmode', 'bless',
|
|
'caller', 'chdir', 'chmod', 'chomp', 'chop', 'chown', 'chr', 'chroot',
|
|
'close', 'closedir', 'cmp', 'connect', 'constant', 'cos', 'crypt',
|
|
'dbmclose', 'dbmopen', 'defined', 'delete', 'diagnostics', 'die', 'do',
|
|
'dump', 'each', 'else', 'elsif', 'endgrent', 'endhostent', 'endnetent',
|
|
'endprotoent', 'endpwent', 'endservent', 'eof', 'eq', 'eval', 'exec',
|
|
'exists', 'exit', 'exp', 'fcntl', 'fileno', 'flock', 'for', 'foreach',
|
|
'fork', 'format', 'formline', 'ge', 'getc', 'getgrent', 'getgrgid',
|
|
'getgrnam', 'gethostbyaddr', 'gethostbyname', 'gethostent', 'getlogin',
|
|
'getnetbyaddr', 'getnetbyname', 'getnetent', 'getpeername', 'getpgrp',
|
|
'getppid', 'getpriority', 'getprotobyname', 'getprotobynumber',
|
|
'getprotoent', 'getpwent', 'getpwnam', 'getpwuid', 'getservbyname',
|
|
'getservbyport', 'getservent', 'getsockname', 'getsockopt', 'glob',
|
|
'gmtime', 'goto', 'grep', 'gt', 'hex', 'if', 'import', 'index', 'int',
|
|
'integer', 'ioctl', 'join', 'keys', 'kill', 'last', 'lc', 'lcfirst', 'le',
|
|
'length', 'less', 'link', 'listen', 'local', 'locale', 'localtime', 'log',
|
|
'lstat', 'lt', 'm', 'map', 'mkdir', 'msgctl', 'msgget', 'msgrcv', 'msgsnd',
|
|
'my', 'ne', 'next', 'no', 'not', 'oct', 'open', 'opendir', 'or', 'ord',
|
|
'pack', 'package', 'pipe', 'pop', 'pos', 'print', 'push', 'q', 'qq',
|
|
'quotemeta', 'qw', 'qx', 'rand', 'read', 'readdir', 'readlink', 'recv',
|
|
'redo', 'ref', 'rename', 'require', 'reset', 'return', 'reverse',
|
|
'rewinddir', 'rindex', 'rmdir', 'scalar', 'seek', 'seekdir', 'select',
|
|
'semctl', 'semget', 'semop', 'send', 'setgrent', 'sethostent', 'setnetent',
|
|
'setpgrp', 'setpriority', 'setprotoent', 'setpwent', 'setservent',
|
|
'setsockopt', 'shift', 'shmctl', 'shmget', 'shmread', 'shmwrite',
|
|
'shutdown', 'sigtrap', 'sin', 'sleep', 'socket', 'socketpair', 'sort',
|
|
'splice', 'split', 'sprintf', 'sqrt', 'srand', 'stat', 'strict', 'study',
|
|
'sub', 'subs', 'substr', 'symlink', 'syscall', 'sysread', 'system',
|
|
'syswrite', 'tell', 'telldir', 'tie', 'time', 'times', 'tr', 'truncate',
|
|
'uc', 'ucfirst', 'umask', 'undef', 'unless', 'unlink', 'unpack', 'unshift',
|
|
'untie', 'use', 'utime', 'values', 'vars', 'vec', 'wait', 'waitpid',
|
|
'wantarray', 'warn', 'while', 'write', 'xor'
|
|
);
|
|
|
|
KeyIndices: array[0..2422] of Integer = (
|
|
-1, -1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
62, -1, -1, -1, -1, -1, -1, 133, -1, -1, -1, -1, -1, -1, -1, -1, 10, -1, -1,
|
|
-1, -1, -1, -1, 212, 189, -1, -1, -1, -1, -1, -1, -1, 111, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, 55, -1, 242, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, 34, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 77, 247,
|
|
-1, -1, 102, -1, -1, -1, -1, -1, -1, -1, -1, -1, 60, -1, -1, -1, -1, -1, -1,
|
|
155, -1, -1, -1, -1, -1, -1, -1, -1, 9, -1, -1, -1, -1, -1, -1, -1, 254, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, 253, -1, 273, -1, -1, -1, 180, -1, -1, -1, -1,
|
|
41, -1, -1, 18, -1, 173, -1, -1, -1, -1, -1, -1, -1, -1, -1, 243, -1, 132,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 17, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 172, -1, 45, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 44, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 46, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, 208, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, 281, -1, 142, -1, -1, -1, -1, 233, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 23, -1, 7, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, 87, 179, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
161, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 256, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 165, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, 198, -1, -1, -1, -1, -1, 116, 124, -1, -1, 203, 47, -1, -1, -1, -1,
|
|
150, -1, -1, -1, 205, -1, -1, 152, -1, -1, 271, -1, -1, -1, -1, 76, 92, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 186, -1, -1, -1, 207, -1, -1, -1,
|
|
-1, -1, 72, -1, -1, -1, -1, -1, -1, -1, 175, -1, -1, -1, -1, -1, -1, 153,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, 11, -1, 170, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, 258, -1, -1, -1, -1, 99, -1, -1, -1, -1, 22, -1, -1, 33, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, -1, -1, -1, 227, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
259, 228, -1, -1, -1, -1, 115, -1, -1, 215, -1, -1, -1, -1, -1, -1, -1, 167,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 158, 40, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 174, -1, 169, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, -1, -1, -1, 59, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 197, -1, -1, 32, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 261, -1, -1,
|
|
276, -1, -1, -1, -1, -1, -1, -1, -1, 266, -1, -1, -1, -1, 101, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 144,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 75, -1, -1, 38, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, 134, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 190, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 262, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, 239, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, 202, -1, -1, 70, -1, -1, -1, -1, -1, -1, -1, -1, -1, 49, -1, -1, -1, -1,
|
|
-1, -1, -1, 112, -1, -1, 20, -1, -1, -1, -1, -1, 238, -1, -1, 8, -1, 249,
|
|
-1, -1, -1, -1, -1, -1, 246, -1, 232, 216, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, 146, 54, -1, -1, -1, -1, -1, -1, -1, -1, 39, -1, -1, -1, -1, -1, -1,
|
|
218, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
214, -1, -1, -1, -1, 277, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, 31, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 89, 183, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6, -1, -1, -1, 79, -1, -1, -1,
|
|
-1, -1, 86, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 53, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, 267, 48, 131, 91, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, 69, -1, -1, -1, -1, -1, 94, -1, -1, -1, -1, -1, -1, -1, 270, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, 109, -1, 166, -1, 73, -1, -1, -1, -1, -1,
|
|
-1, -1, 43, -1, -1, -1, -1, -1, -1, 279, -1, 26, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, 68, -1, 280, -1, -1, -1, -1, 61, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, 278, -1, 184, -1, -1, -1, -1, -1, -1, -1, -1, 206, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, 264, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
163, -1, -1, -1, -1, 52, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 81,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, 176, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, 21, -1, -1, -1, -1, -1, 117, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, 250, -1, -1, -1, -1, -1, -1, -1, 244, -1, -1, -1,
|
|
-1, -1, 129, -1, -1, -1, -1, -1, 95, -1, 234, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, 231, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 230, -1, 138, -1, -1,
|
|
-1, -1, -1, 191, -1, 200, -1, -1, -1, 125, -1, -1, 268, 108, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, 185, -1, -1, 66,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, 194, -1, 222, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, 143, -1, 226, 182, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 16,
|
|
-1, -1, -1, -1, -1, -1, 251, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, 192, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
113, -1, -1, -1, -1, -1, -1, -1, 37, -1, 71, -1, 15, -1, -1, -1, 154, 257,
|
|
-1, -1, -1, -1, 209, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, 160, -1, -1, -1, 126, -1, -1, -1, -1, -1, 58, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, 140, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
240, -1, -1, -1, -1, -1, -1, 241, -1, -1, -1, -1, -1, -1, 275, -1, -1, -1,
|
|
-1, -1, -1, -1, 36, -1, -1, -1, -1, -1, -1, -1, -1, 139, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, 100, -1, -1, 13, -1, -1, -1, -1, -1, -1, -1, 177, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, 223, -1, -1, -1, -1, -1, -1, 130, -1, -1, 97,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 224, -1, -1, -1, -1, -1, 196, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, 114, -1, 148, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, 93, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, 168, -1, -1, -1, 274, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, 137, 35, 159, -1, -1, -1, -1, -1, -1, -1, 260, -1,
|
|
-1, -1, -1, -1, 24, -1, 118, 245, -1, -1, 88, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, 211, 119, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, 187, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, 217, -1, -1, -1, -1, -1, 237, -1, -1, -1, -1, 188, 147,
|
|
-1, 50, -1, -1, -1, -1, -1, -1, 103, -1, -1, -1, -1, -1, 96, 181, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 14, -1, -1, -1,
|
|
-1, 210, 27, -1, 136, -1, -1, 106, -1, -1, -1, -1, -1, -1, -1, 107, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 236, -1, -1, -1,
|
|
-1, 141, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, 25, -1, 164, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 265, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, 193, -1, -1, -1, -1, 67, -1, -1, -1, -1, -1,
|
|
121, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 78,
|
|
-1, -1, -1, 51, -1, -1, -1, -1, -1, -1, -1, -1, 151, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 98, 213, -1, -1, -1, -1, 5,
|
|
-1, 219, -1, -1, -1, -1, 162, -1, -1, -1, -1, -1, 74, -1, -1, -1, -1, -1,
|
|
-1, -1, 221, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, 12, -1, 255, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 272, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, 56, -1, -1, -1, -1, 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
82, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, 225, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 30, -1, -1, -1, -1, -1, -1, 171,
|
|
-1, -1, -1, 157, 149, -1, -1, -1, -1, -1, -1, 127, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, 42, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, 252, -1, -1, -1, 65, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
229, -1, -1, -1, -1, -1, -1, -1, 199, -1, -1, -1, 105, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, 64, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 248, -1, -1, -1, -1, 104, -1, -1,
|
|
-1, -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, -1, 269, -1, -1, -1, -1, -1, -1,
|
|
-1, 220, 110, -1, -1, -1, 128, -1, -1, -1, -1, 235, 263, -1, -1, -1, -1, -1,
|
|
-1, -1, 201, -1, -1, -1, -1, -1, 29, -1, 156, -1, -1, -1, 19, -1, 123, -1,
|
|
204, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, 122, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, 57, -1, -1, 145, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, 84, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 90, -1, -1, -1, -1, -1,
|
|
80, -1, -1, -1, -1
|
|
);
|
|
|
|
{$Q-}
|
|
function TSynPerlSyn.HashKey(Str: PWideChar): Cardinal;
|
|
begin
|
|
Result := 0;
|
|
while IsIdentChar(Str^) or CharInSet(Str^, ['$', '%', '@']) do
|
|
begin
|
|
Result := Result * 975 + Ord(Str^) * 515;
|
|
Inc(Str);
|
|
end;
|
|
Result := Result mod 2423;
|
|
FStringLen := Str - FToIdent;
|
|
end;
|
|
{$Q+}
|
|
|
|
function TSynPerlSyn.IdentKind(MayBe: PWideChar): TtkTokenKind;
|
|
var
|
|
Key: Cardinal;
|
|
begin
|
|
FToIdent := MayBe;
|
|
Key := HashKey(MayBe);
|
|
if Key <= High(FIdentFuncTable) then
|
|
Result := FIdentFuncTable[Key](KeyIndices[Key])
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.InitIdent;
|
|
var
|
|
i: Integer;
|
|
begin
|
|
for i := Low(FIdentFuncTable) to High(FIdentFuncTable) do
|
|
if KeyIndices[i] = -1 then
|
|
FIdentFuncTable[i] := AltFunc;
|
|
|
|
FIdentFuncTable[368] := Func36accumulator;
|
|
FIdentFuncTable[2] := Func36arg;
|
|
FIdentFuncTable[804] := Func36argv;
|
|
FIdentFuncTable[2272] := Func36basetime;
|
|
FIdentFuncTable[626] := Func36child95error;
|
|
FIdentFuncTable[2026] := Func36debugging;
|
|
FIdentFuncTable[981] := Func36effective95group95id;
|
|
FIdentFuncTable[317] := Func36effective95user95id;
|
|
FIdentFuncTable[876] := Func36egid;
|
|
FIdentFuncTable[141] := Func36env;
|
|
FIdentFuncTable[35] := Func36errno;
|
|
FIdentFuncTable[495] := Func36euid;
|
|
FIdentFuncTable[2067] := Func36eval95error;
|
|
FIdentFuncTable[1589] := Func36executable95name;
|
|
FIdentFuncTable[1835] := Func36format95formfeed;
|
|
FIdentFuncTable[1465] := Func36format95line95break95characters;
|
|
FIdentFuncTable[1415] := Func36format95lines95left;
|
|
FIdentFuncTable[201] := Func36format95lines95per95page;
|
|
FIdentFuncTable[172] := Func36format95name;
|
|
FIdentFuncTable[2319] := Func36format95page95number;
|
|
FIdentFuncTable[867] := Func36format95top95name;
|
|
FIdentFuncTable[1237] := Func36gid;
|
|
FIdentFuncTable[519] := Func36inplace95edit;
|
|
FIdentFuncTable[315] := Func36input95line95number;
|
|
FIdentFuncTable[1733] := Func36input95record95separator;
|
|
FIdentFuncTable[1923] := Func36last95paren95match;
|
|
FIdentFuncTable[1093] := Func36list95separator;
|
|
FIdentFuncTable[1841] := Func36match;
|
|
FIdentFuncTable[2201] := Func36multiline95matching;
|
|
FIdentFuncTable[2313] := Func36nr;
|
|
FIdentFuncTable[2149] := Func36ofmt;
|
|
FIdentFuncTable[955] := Func36ors;
|
|
FIdentFuncTable[648] := Func36os95error;
|
|
FIdentFuncTable[522] := Func36output95autoflush;
|
|
FIdentFuncTable[97] := Func36output95field95separator;
|
|
FIdentFuncTable[1718] := Func36perl95version;
|
|
FIdentFuncTable[1568] := Func36perldb;
|
|
FIdentFuncTable[1461] := Func36pid;
|
|
FIdentFuncTable[723] := Func36postmatch;
|
|
FIdentFuncTable[908] := Func36prematch;
|
|
FIdentFuncTable[594] := Func36process95id;
|
|
FIdentFuncTable[169] := Func36program95name;
|
|
FIdentFuncTable[2182] := Func36real95group95id;
|
|
FIdentFuncTable[1084] := Func36real95user95id;
|
|
FIdentFuncTable[238] := Func36rs;
|
|
FIdentFuncTable[220] := Func36sig;
|
|
FIdentFuncTable[261] := Func36subscript95separator;
|
|
FIdentFuncTable[427] := Func36subsep;
|
|
FIdentFuncTable[1016] := Func36system95fd95max;
|
|
FIdentFuncTable[856] := Func36uid;
|
|
FIdentFuncTable[1803] := Func36warning;
|
|
FIdentFuncTable[1992] := Func37inc;
|
|
FIdentFuncTable[1181] := Func64argv;
|
|
FIdentFuncTable[1004] := Func64inc;
|
|
FIdentFuncTable[899] := FuncAbs;
|
|
FIdentFuncTable[79] := FuncAccept;
|
|
FIdentFuncTable[2102] := FuncAlarm;
|
|
FIdentFuncTable[2365] := FuncAnd;
|
|
FIdentFuncTable[1501] := FuncAtan2;
|
|
FIdentFuncTable[630] := FuncBind;
|
|
FIdentFuncTable[125] := FuncBinmode;
|
|
FIdentFuncTable[1110] := FuncBless;
|
|
FIdentFuncTable[19] := FuncCaller;
|
|
FIdentFuncTable[992] := FuncChdir;
|
|
FIdentFuncTable[2236] := FuncChmod;
|
|
FIdentFuncTable[2200] := FuncChomp;
|
|
FIdentFuncTable[1341] := FuncChop;
|
|
FIdentFuncTable[1964] := FuncChown;
|
|
FIdentFuncTable[1103] := FuncChr;
|
|
FIdentFuncTable[1046] := FuncChroot;
|
|
FIdentFuncTable[846] := FuncClose;
|
|
FIdentFuncTable[1463] := FuncClosedir;
|
|
FIdentFuncTable[470] := FuncCmp;
|
|
FIdentFuncTable[1076] := FuncConnect;
|
|
FIdentFuncTable[2039] := FuncConstant;
|
|
FIdentFuncTable[720] := FuncCos;
|
|
FIdentFuncTable[447] := FuncCrypt;
|
|
FIdentFuncTable[111] := FuncDbmclose;
|
|
FIdentFuncTable[1988] := FuncDbmopen;
|
|
FIdentFuncTable[985] := FuncDefined;
|
|
FIdentFuncTable[2418] := FuncDelete;
|
|
FIdentFuncTable[1194] := FuncDiagnostics;
|
|
FIdentFuncTable[2120] := FuncDie;
|
|
FIdentFuncTable[2107] := FuncDo;
|
|
FIdentFuncTable[2381] := FuncDump;
|
|
FIdentFuncTable[1909] := FuncEach;
|
|
FIdentFuncTable[991] := FuncElse;
|
|
FIdentFuncTable[341] := FuncElsif;
|
|
FIdentFuncTable[1739] := FuncEndgrent;
|
|
FIdentFuncTable[967] := FuncEndhostent;
|
|
FIdentFuncTable[2412] := FuncEndnetent;
|
|
FIdentFuncTable[1018] := FuncEndprotoent;
|
|
FIdentFuncTable[448] := FuncEndpwent;
|
|
FIdentFuncTable[1681] := FuncEndservent;
|
|
FIdentFuncTable[1052] := FuncEof;
|
|
FIdentFuncTable[1278] := FuncEq;
|
|
FIdentFuncTable[1816] := FuncEval;
|
|
FIdentFuncTable[1618] := FuncExec;
|
|
FIdentFuncTable[2020] := FuncExists;
|
|
FIdentFuncTable[514] := FuncExit;
|
|
FIdentFuncTable[1586] := FuncExp;
|
|
FIdentFuncTable[686] := FuncFcntl;
|
|
FIdentFuncTable[115] := FuncFileno;
|
|
FIdentFuncTable[1810] := FuncFlock;
|
|
FIdentFuncTable[2265] := FuncFor;
|
|
FIdentFuncTable[2225] := FuncForeach;
|
|
FIdentFuncTable[1846] := FuncFork;
|
|
FIdentFuncTable[1854] := FuncFormat;
|
|
FIdentFuncTable[1319] := FuncFormline;
|
|
FIdentFuncTable[1072] := FuncGe;
|
|
FIdentFuncTable[2289] := FuncGetc;
|
|
FIdentFuncTable[51] := FuncGetgrent;
|
|
FIdentFuncTable[864] := FuncGetgrgid;
|
|
FIdentFuncTable[1453] := FuncGetgrnam;
|
|
FIdentFuncTable[1663] := FuncGethostbyaddr;
|
|
FIdentFuncTable[567] := FuncGethostbyname;
|
|
FIdentFuncTable[422] := FuncGethostent;
|
|
FIdentFuncTable[1243] := FuncGetlogin;
|
|
FIdentFuncTable[1735] := FuncGetnetbyaddr;
|
|
FIdentFuncTable[1749] := FuncGetnetbyname;
|
|
FIdentFuncTable[1647] := FuncGetnetent;
|
|
FIdentFuncTable[1970] := FuncGetpeername;
|
|
FIdentFuncTable[2348] := FuncGetpgrp;
|
|
FIdentFuncTable[2321] := FuncGetppid;
|
|
FIdentFuncTable[423] := FuncGetpriority;
|
|
FIdentFuncTable[1315] := FuncGetprotobyname;
|
|
FIdentFuncTable[1495] := FuncGetprotobynumber;
|
|
FIdentFuncTable[2168] := FuncGetprotoent;
|
|
FIdentFuncTable[2293] := FuncGetpwent;
|
|
FIdentFuncTable[1272] := FuncGetpwnam;
|
|
FIdentFuncTable[1615] := FuncGetpwuid;
|
|
FIdentFuncTable[1017] := FuncGetservbyname;
|
|
FIdentFuncTable[186] := FuncGetservbyport;
|
|
FIdentFuncTable[26] := FuncGetservent;
|
|
FIdentFuncTable[737] := FuncGetsockname;
|
|
FIdentFuncTable[531] := FuncGetsockopt;
|
|
FIdentFuncTable[1843] := FuncGlob;
|
|
FIdentFuncTable[1717] := FuncGmtime;
|
|
FIdentFuncTable[1303] := FuncGoto;
|
|
FIdentFuncTable[1577] := FuncGrep;
|
|
FIdentFuncTable[1528] := FuncGt;
|
|
FIdentFuncTable[1896] := FuncHex;
|
|
FIdentFuncTable[292] := FuncIf;
|
|
FIdentFuncTable[1381] := FuncImport;
|
|
FIdentFuncTable[708] := FuncIndex;
|
|
FIdentFuncTable[2368] := FuncInt;
|
|
FIdentFuncTable[898] := FuncInteger;
|
|
FIdentFuncTable[1801] := FuncIoctl;
|
|
FIdentFuncTable[1665] := FuncJoin;
|
|
FIdentFuncTable[2161] := FuncKeys;
|
|
FIdentFuncTable[432] := FuncKill;
|
|
FIdentFuncTable[2001] := FuncLast;
|
|
FIdentFuncTable[439] := FuncLc;
|
|
FIdentFuncTable[485] := FuncLcfirst;
|
|
FIdentFuncTable[1469] := FuncLe;
|
|
FIdentFuncTable[132] := FuncLength;
|
|
FIdentFuncTable[2315] := FuncLess;
|
|
FIdentFuncTable[2160] := FuncLink;
|
|
FIdentFuncTable[593] := FuncListen;
|
|
FIdentFuncTable[1719] := FuncLocal;
|
|
FIdentFuncTable[1491] := FuncLocale;
|
|
FIdentFuncTable[357] := FuncLocaltime;
|
|
FIdentFuncTable[2033] := FuncLog;
|
|
FIdentFuncTable[1176] := FuncLstat;
|
|
FIdentFuncTable[1925] := FuncLt;
|
|
FIdentFuncTable[406] := FuncM;
|
|
FIdentFuncTable[1074] := FuncMap;
|
|
FIdentFuncTable[578] := FuncMkdir;
|
|
FIdentFuncTable[1701] := FuncMsgctl;
|
|
FIdentFuncTable[613] := FuncMsgget;
|
|
FIdentFuncTable[497] := FuncMsgrcv;
|
|
FIdentFuncTable[2156] := FuncMsgsnd;
|
|
FIdentFuncTable[218] := FuncMy;
|
|
FIdentFuncTable[174] := FuncNe;
|
|
FIdentFuncTable[611] := FuncNext;
|
|
FIdentFuncTable[478] := FuncNo;
|
|
FIdentFuncTable[1217] := FuncNot;
|
|
FIdentFuncTable[1597] := FuncOct;
|
|
FIdentFuncTable[1330] := FuncOpen;
|
|
FIdentFuncTable[342] := FuncOpendir;
|
|
FIdentFuncTable[164] := FuncOr;
|
|
FIdentFuncTable[1817] := FuncOrd;
|
|
FIdentFuncTable[1384] := FuncPack;
|
|
FIdentFuncTable[968] := FuncPackage;
|
|
FIdentFuncTable[1125] := FuncPipe;
|
|
FIdentFuncTable[1338] := FuncPop;
|
|
FIdentFuncTable[460] := FuncPos;
|
|
FIdentFuncTable[1768] := FuncPrint;
|
|
FIdentFuncTable[1800] := FuncPush;
|
|
FIdentFuncTable[43] := FuncQ;
|
|
FIdentFuncTable[777] := FuncQq;
|
|
FIdentFuncTable[1309] := FuncQuotemeta;
|
|
FIdentFuncTable[1444] := FuncQw;
|
|
FIdentFuncTable[1959] := FuncQx;
|
|
FIdentFuncTable[1367] := FuncRand;
|
|
FIdentFuncTable[2133] := FuncRead;
|
|
FIdentFuncTable[1635] := FuncReaddir;
|
|
FIdentFuncTable[645] := FuncReadlink;
|
|
FIdentFuncTable[416] := FuncRecv;
|
|
FIdentFuncTable[2221] := FuncRedo;
|
|
FIdentFuncTable[1311] := FuncRef;
|
|
FIdentFuncTable[2307] := FuncRename;
|
|
FIdentFuncTable[843] := FuncRequire;
|
|
FIdentFuncTable[426] := FuncReset;
|
|
FIdentFuncTable[2323] := FuncReturn;
|
|
FIdentFuncTable[436] := FuncReverse;
|
|
FIdentFuncTable[1134] := FuncRewinddir;
|
|
FIdentFuncTable[464] := FuncRindex;
|
|
FIdentFuncTable[272] := FuncRmdir;
|
|
FIdentFuncTable[1475] := FuncScalar;
|
|
FIdentFuncTable[1840] := FuncSeek;
|
|
FIdentFuncTable[1748] := FuncSeekdir;
|
|
FIdentFuncTable[42] := FuncSelect;
|
|
FIdentFuncTable[2021] := FuncSemctl;
|
|
FIdentFuncTable[933] := FuncSemget;
|
|
FIdentFuncTable[570] := FuncSemop;
|
|
FIdentFuncTable[888] := FuncSend;
|
|
FIdentFuncTable[1789] := FuncSetgrent;
|
|
FIdentFuncTable[915] := FuncSethostent;
|
|
FIdentFuncTable[2028] := FuncSetnetent;
|
|
FIdentFuncTable[2288] := FuncSetpgrp;
|
|
FIdentFuncTable[2047] := FuncSetpriority;
|
|
FIdentFuncTable[1369] := FuncSetprotoent;
|
|
FIdentFuncTable[1608] := FuncSetpwent;
|
|
FIdentFuncTable[1629] := FuncSetservent;
|
|
FIdentFuncTable[2134] := FuncSetsockopt;
|
|
FIdentFuncTable[1383] := FuncShift;
|
|
FIdentFuncTable[540] := FuncShmctl;
|
|
FIdentFuncTable[562] := FuncShmget;
|
|
FIdentFuncTable[2213] := FuncShmread;
|
|
FIdentFuncTable[1301] := FuncShmwrite;
|
|
FIdentFuncTable[1289] := FuncShutdown;
|
|
FIdentFuncTable[887] := FuncSigtrap;
|
|
FIdentFuncTable[297] := FuncSin;
|
|
FIdentFuncTable[1280] := FuncSleep;
|
|
FIdentFuncTable[2298] := FuncSocket;
|
|
FIdentFuncTable[1891] := FuncSocketpair;
|
|
FIdentFuncTable[1795] := FuncSort;
|
|
FIdentFuncTable[873] := FuncSplice;
|
|
FIdentFuncTable[830] := FuncSplit;
|
|
FIdentFuncTable[1546] := FuncSprintf;
|
|
FIdentFuncTable[1553] := FuncSqrt;
|
|
FIdentFuncTable[81] := FuncSrand;
|
|
FIdentFuncTable[184] := FuncStat;
|
|
FIdentFuncTable[1266] := FuncStrict;
|
|
FIdentFuncTable[1736] := FuncStudy;
|
|
FIdentFuncTable[885] := FuncSub;
|
|
FIdentFuncTable[112] := FuncSubs;
|
|
FIdentFuncTable[2260] := FuncSubstr;
|
|
FIdentFuncTable[878] := FuncSymlink;
|
|
FIdentFuncTable[1258] := FuncSyscall;
|
|
FIdentFuncTable[1422] := FuncSysread;
|
|
FIdentFuncTable[2196] := FuncSystem;
|
|
FIdentFuncTable[158] := FuncSyswrite;
|
|
FIdentFuncTable[149] := FuncTell;
|
|
FIdentFuncTable[2069] := FuncTelldir;
|
|
FIdentFuncTable[387] := FuncTie;
|
|
FIdentFuncTable[1470] := FuncTime;
|
|
FIdentFuncTable[509] := FuncTimes;
|
|
FIdentFuncTable[561] := FuncTr;
|
|
FIdentFuncTable[1727] := FuncTruncate;
|
|
FIdentFuncTable[669] := FuncUc;
|
|
FIdentFuncTable[819] := FuncUcfirst;
|
|
FIdentFuncTable[2299] := FuncUmask;
|
|
FIdentFuncTable[1162] := FuncUndef;
|
|
FIdentFuncTable[1946] := FuncUnless;
|
|
FIdentFuncTable[681] := FuncUnlink;
|
|
FIdentFuncTable[1015] := FuncUnpack;
|
|
FIdentFuncTable[1318] := FuncUnshift;
|
|
FIdentFuncTable[2280] := FuncUntie;
|
|
FIdentFuncTable[1060] := FuncUse;
|
|
FIdentFuncTable[442] := FuncUtime;
|
|
FIdentFuncTable[2080] := FuncValues;
|
|
FIdentFuncTable[160] := FuncVars;
|
|
FIdentFuncTable[1705] := FuncVec;
|
|
FIdentFuncTable[1560] := FuncWait;
|
|
FIdentFuncTable[672] := FuncWaitpid;
|
|
FIdentFuncTable[938] := FuncWantarray;
|
|
FIdentFuncTable[1123] := FuncWarn;
|
|
FIdentFuncTable[1091] := FuncWhile;
|
|
FIdentFuncTable[1105] := FuncWrite;
|
|
FIdentFuncTable[290] := FuncXor;
|
|
end;
|
|
|
|
function TSynPerlSyn.AltFunc(Index: Integer): TtkTokenKind;
|
|
begin
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36accumulator(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36arg(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36argv(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36basetime(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36child95error(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36debugging(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36effective95group95id(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36effective95user95id(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36egid(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36env(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36errno(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36euid(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36eval95error(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36executable95name(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36format95formfeed(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36format95line95break95characters(Index: Integer):
|
|
TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36format95lines95left(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36format95lines95per95page(Index: Integer):
|
|
TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36format95name(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36format95page95number(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36format95top95name(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36gid(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36inplace95edit(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36input95line95number(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36input95record95separator(Index: Integer):
|
|
TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36last95paren95match(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36list95separator(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36match(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36multiline95matching(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36nr(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36ofmt(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36ors(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36os95error(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36output95autoflush(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36output95field95separator(Index: Integer):
|
|
TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36perl95version(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36perldb(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36pid(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36postmatch(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36prematch(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36process95id(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36program95name(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36real95group95id(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36real95user95id(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36rs(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36sig(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36subscript95separator(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36subsep(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36system95fd95max(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36uid(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func36warning(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func37inc(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func64argv(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.Func64inc(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkVariable
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncAbs(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncAccept(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncAlarm(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncAnd(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkOperator
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncAtan2(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncBind(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncBinmode(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncBless(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncCaller(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncChdir(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncChmod(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncChomp(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncChop(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncChown(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncChr(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncChroot(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncClose(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncClosedir(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncCmp(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkOperator
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncConnect(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncConstant(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkPragma
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncCos(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncCrypt(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncDbmclose(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncDbmopen(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncDefined(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncDelete(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncDiagnostics(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkPragma
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncDie(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncDo(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncDump(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncEach(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncElse(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncElsif(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncEndgrent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncEndhostent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncEndnetent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncEndprotoent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncEndpwent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncEndservent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncEof(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncEq(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkOperator
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncEval(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncExec(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncExists(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncExit(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncExp(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncFcntl(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncFileno(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncFlock(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncFor(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncForeach(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncFork(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncFormat(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncFormline(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGe(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkOperator
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetc(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetgrent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetgrgid(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetgrnam(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGethostbyaddr(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGethostbyname(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGethostent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetlogin(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetnetbyaddr(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetnetbyname(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetnetent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetpeername(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetpgrp(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetppid(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetpriority(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetprotobyname(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetprotobynumber(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetprotoent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetpwent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetpwnam(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetpwuid(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetservbyname(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetservbyport(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetservent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetsockname(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGetsockopt(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGlob(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGmtime(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGoto(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGrep(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncGt(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkOperator
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncHex(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncIf(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncImport(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncIndex(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncInt(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncInteger(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkPragma
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncIoctl(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncJoin(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncKeys(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncKill(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLast(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLc(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLcfirst(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLe(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkOperator
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLength(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLess(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkPragma
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLink(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncListen(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLocal(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLocale(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkPragma
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLocaltime(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLog(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLstat(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncLt(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkOperator
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncM(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncMap(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncMkdir(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncMsgctl(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncMsgget(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncMsgrcv(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncMsgsnd(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncMy(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncNe(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkOperator
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncNext(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncNo(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncNot(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkOperator
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncOct(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncOpen(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncOpendir(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncOr(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkOperator
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncOrd(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncPack(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncPackage(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncPipe(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncPop(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncPos(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncPrint(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncPush(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncQ(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncQq(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncQuotemeta(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncQw(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncQx(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncRand(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncRead(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncReaddir(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncReadlink(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncRecv(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncRedo(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncRef(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncRename(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncRequire(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncReset(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncReturn(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncReverse(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncRewinddir(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncRindex(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncRmdir(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncScalar(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSeek(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSeekdir(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSelect(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSemctl(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSemget(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSemop(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSend(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSetgrent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSethostent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSetnetent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSetpgrp(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSetpriority(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSetprotoent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSetpwent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSetservent(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSetsockopt(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncShift(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncShmctl(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncShmget(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncShmread(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncShmwrite(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncShutdown(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSigtrap(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkPragma
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSin(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSleep(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSocket(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSocketpair(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSort(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSplice(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSplit(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSprintf(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSqrt(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSrand(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncStat(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncStrict(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkPragma
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncStudy(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSub(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSubs(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkPragma
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSubstr(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSymlink(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSyscall(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSysread(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSystem(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncSyswrite(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncTell(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncTelldir(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncTie(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncTime(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncTimes(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncTr(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncTruncate(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncUc(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncUcfirst(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncUmask(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncUndef(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncUnless(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncUnlink(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncUnpack(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncUnshift(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncUntie(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncUse(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncUtime(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncValues(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncVars(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkPragma
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncVec(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncWait(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncWaitpid(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncWantarray(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncWarn(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncWhile(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncWrite(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkKey
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
function TSynPerlSyn.FuncXor(Index: Integer): TtkTokenKind;
|
|
begin
|
|
if IsCurrentToken(KeyWords[Index]) then
|
|
Result := tkOperator
|
|
else
|
|
Result := tkIdentifier;
|
|
end;
|
|
|
|
constructor TSynPerlSyn.Create(AOwner: TComponent);
|
|
begin
|
|
inherited Create(AOwner);
|
|
|
|
FCaseSensitive := True;
|
|
|
|
FCommentAttri := TSynHighlighterAttributes.Create(SYNS_AttrComment, SYNS_FriendlyAttrComment);
|
|
FCommentAttri.Style:= [fsItalic];
|
|
AddAttribute(FCommentAttri);
|
|
FIdentifierAttri := TSynHighlighterAttributes.Create(SYNS_AttrIdentifier, SYNS_FriendlyAttrIdentifier);
|
|
AddAttribute(FIdentifierAttri);
|
|
FInvalidAttri := TSynHighlighterAttributes.Create(SYNS_AttrIllegalChar, SYNS_FriendlyAttrIllegalChar);
|
|
AddAttribute(FInvalidAttri);
|
|
FKeyAttri := TSynHighlighterAttributes.Create(SYNS_AttrReservedWord, SYNS_FriendlyAttrReservedWord);
|
|
FKeyAttri.Style:= [fsBold];
|
|
AddAttribute(FKeyAttri);
|
|
FNumberAttri := TSynHighlighterAttributes.Create(SYNS_AttrNumber, SYNS_FriendlyAttrNumber);
|
|
AddAttribute(FNumberAttri);
|
|
FOperatorAttri := TSynHighlighterAttributes.Create(SYNS_AttrOperator, SYNS_FriendlyAttrOperator);
|
|
AddAttribute(FOperatorAttri);
|
|
FPragmaAttri := TSynHighlighterAttributes.Create(SYNS_AttrPragma, SYNS_FriendlyAttrPragma);
|
|
FPragmaAttri.Style := [fsBold];
|
|
AddAttribute(FPragmaAttri);
|
|
FSpaceAttri := TSynHighlighterAttributes.Create(SYNS_AttrSpace, SYNS_FriendlyAttrSpace);
|
|
AddAttribute(FSpaceAttri);
|
|
FStringAttri := TSynHighlighterAttributes.Create(SYNS_AttrString, SYNS_FriendlyAttrString);
|
|
AddAttribute(FStringAttri);
|
|
FSymbolAttri := TSynHighlighterAttributes.Create(SYNS_AttrSymbol, SYNS_FriendlyAttrSymbol);
|
|
AddAttribute(FSymbolAttri);
|
|
FVariableAttri := TSynHighlighterAttributes.Create(SYNS_AttrVariable, SYNS_FriendlyAttrVariable);
|
|
FVariableAttri.Style := [fsBold];
|
|
AddAttribute(FVariableAttri);
|
|
SetAttributesOnChange(DefHighlightChange);
|
|
InitIdent;
|
|
FDefaultFilter := SYNS_FilterPerl;
|
|
end; { Create }
|
|
|
|
procedure TSynPerlSyn.AndSymbolProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=': {bit and assign}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
'&':
|
|
begin
|
|
if FLine[Run + 2] = '=' then {logical and assign}
|
|
Inc(Run, 3)
|
|
else {logical and}
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {bit and}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.CRProc;
|
|
begin
|
|
FTokenID := tkSpace;
|
|
case FLine[Run + 1] of
|
|
#10: Inc(Run, 2);
|
|
else Inc(Run);
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.ColonProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
':': {double colon}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {colon}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.CommentProc;
|
|
begin
|
|
FTokenID := tkComment;
|
|
repeat
|
|
case FLine[Run] of
|
|
#0, #10, #13:
|
|
Break;
|
|
end;
|
|
Inc(Run);
|
|
until FLine[Run] = #0;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.EqualProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=': {logical equal}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
'>': {digraph}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
'~': {bind scalar to pattern}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {assign}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.GreaterProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=': {greater than or equal to}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
'>':
|
|
begin
|
|
if FLine[Run + 2] = '=' then {shift right assign}
|
|
Inc(Run, 3)
|
|
else {shift right}
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {greater than}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.IdentProc;
|
|
begin
|
|
case FLine[Run] of
|
|
'$':
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'!'..'+', '-'..'@', '['..']', '_', '`', '|', '~':
|
|
begin {predefined variables}
|
|
Inc(Run, 2);
|
|
FTokenID := tkVariable;
|
|
Exit;
|
|
end;
|
|
'^':
|
|
begin
|
|
case FLine[Run + 2] of
|
|
'A', 'D', 'F', 'I', 'L', 'P', 'T', 'W', 'X':
|
|
begin {predefined variables}
|
|
Inc(Run, 3);
|
|
FTokenID := tkVariable;
|
|
Exit;
|
|
end;
|
|
#0, #10, #13: {predefined variables}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkVariable;
|
|
Exit;
|
|
end;
|
|
end;
|
|
end;
|
|
end;
|
|
end;
|
|
'%':
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=': {mod assign}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
Exit;
|
|
end;
|
|
#0, #10, #13: {mod}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
Exit;
|
|
end;
|
|
end;
|
|
end;
|
|
'x':
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=': {repetition assign}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
Exit;
|
|
end;
|
|
#0, #10, #13: {repetition}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
Exit;
|
|
end;
|
|
end;
|
|
end;
|
|
end;
|
|
{regular identifier}
|
|
FTokenID := IdentKind((FLine + Run));
|
|
Inc(Run, FStringLen);
|
|
while IsIdentChar(FLine[Run]) do Inc(Run);
|
|
end;
|
|
|
|
procedure TSynPerlSyn.LFProc;
|
|
begin
|
|
FTokenID := tkSpace;
|
|
Inc(Run);
|
|
end;
|
|
|
|
procedure TSynPerlSyn.LowerProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=':
|
|
begin
|
|
if FLine[Run + 2] = '>' then {compare - less than, equal, greater}
|
|
Inc(Run, 3)
|
|
else {less than or equal to}
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
'<':
|
|
begin
|
|
if FLine[Run + 2] = '=' then {shift left assign}
|
|
Inc(Run, 3)
|
|
else {shift left}
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {less than}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.MinusProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=': {subtract assign}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
'-': {decrement}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
'>': {arrow}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {subtract}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.NotSymbolProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'~': {logical negated bind like =~}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
'=': {not equal}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {not}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.NullProc;
|
|
begin
|
|
FTokenID := tkNull;
|
|
Inc(Run);
|
|
end;
|
|
|
|
procedure TSynPerlSyn.NumberProc;
|
|
|
|
function IsNumberChar: Boolean;
|
|
begin
|
|
case FLine[Run] of
|
|
'0'..'9', '-', '_', '.', 'A'..'F', 'a'..'f', 'x', 'X':
|
|
Result := True;
|
|
else
|
|
Result := False;
|
|
end;
|
|
end;
|
|
|
|
begin
|
|
if FLine[Run] = '.' then
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'.':
|
|
begin
|
|
Inc(Run, 2);
|
|
if FLine[Run] = '.' then {sed range}
|
|
Inc(Run);
|
|
|
|
FTokenID := tkSymbol; {range}
|
|
Exit;
|
|
end;
|
|
'=':
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol; {concatenation assign}
|
|
Exit;
|
|
end;
|
|
'a'..'z', 'A'..'Z', '_':
|
|
begin
|
|
FTokenID := tkSymbol; {concatenation}
|
|
Inc(Run);
|
|
Exit;
|
|
end;
|
|
end;
|
|
end;
|
|
Inc(Run);
|
|
FTokenID := tkNumber;
|
|
while IsNumberChar do
|
|
begin
|
|
case FLine[Run] of
|
|
'.':
|
|
if FLine[Run + 1] = '.' then Break;
|
|
'-': {check for e notation}
|
|
if not ((FLine[Run + 1] = 'e') or (FLine[Run + 1] = 'E')) then Break;
|
|
end;
|
|
Inc(Run);
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.OrSymbolProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=': {bit or assign}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
'|':
|
|
begin
|
|
if FLine[Run + 2] = '=' then {logical or assign}
|
|
Inc(Run, 3)
|
|
else {logical or}
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {bit or}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.PlusProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=': {add assign}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
'+': {increment}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {add}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.SlashProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=': {division assign}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {division}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.SpaceProc;
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSpace;
|
|
while (FLine[Run] <= #32) and not IsLineEnd(Run) do Inc(Run);
|
|
end;
|
|
|
|
procedure TSynPerlSyn.StarProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=': {multiply assign}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
'*':
|
|
begin
|
|
if FLine[Run + 2] = '=' then {exponentiation assign}
|
|
Inc(Run, 3)
|
|
else {exponentiation}
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {multiply}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.StringInterpProc;
|
|
var
|
|
BackslashCount : Integer;
|
|
begin
|
|
FTokenID := tkString;
|
|
if (FLine[Run + 1] = #34) and (FLine[Run + 2] = #34) then Inc(Run, 2);
|
|
repeat
|
|
case FLine[Run] of
|
|
#0, #10, #13:
|
|
Break;
|
|
#92:
|
|
{ If we're looking at a backslash, and the following character is an
|
|
end quote, and it's preceeded by an odd number of backslashes, then
|
|
it shouldn't mark the end of the string. If it's preceeded by an
|
|
even number, then it should. }
|
|
if (FLine[Run + 1] = #34) then
|
|
begin
|
|
BackslashCount := 1;
|
|
|
|
while ((Run > BackslashCount) and (FLine[Run - BackslashCount] = #92)) do
|
|
BackslashCount := BackslashCount + 1;
|
|
|
|
if (BackslashCount mod 2 = 1) then Inc(Run)
|
|
end;
|
|
end;
|
|
Inc(Run);
|
|
until FLine[Run] = #34;
|
|
if FLine[Run] <> #0 then Inc(Run);
|
|
end;
|
|
|
|
procedure TSynPerlSyn.StringLiteralProc;
|
|
begin
|
|
FTokenID := tkString;
|
|
repeat
|
|
case FLine[Run] of
|
|
#0, #10, #13:
|
|
Break;
|
|
end;
|
|
Inc(Run);
|
|
until FLine[Run] = #39;
|
|
if FLine[Run] <> #0 then Inc(Run);
|
|
end;
|
|
|
|
procedure TSynPerlSyn.SymbolProc;
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.XOrSymbolProc;
|
|
begin
|
|
case FLine[Run + 1] of
|
|
'=': {xor assign}
|
|
begin
|
|
Inc(Run, 2);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
else {xor}
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkSymbol;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.UnknownProc;
|
|
begin
|
|
Inc(Run);
|
|
FTokenID := tkUnknown;
|
|
end;
|
|
|
|
procedure TSynPerlSyn.Next;
|
|
begin
|
|
FTokenPos := Run;
|
|
case FLine[Run] of
|
|
'&': AndSymbolProc;
|
|
#13: CRProc;
|
|
':': ColonProc;
|
|
'#': CommentProc;
|
|
'=': EqualProc;
|
|
'>': GreaterProc;
|
|
'%', '@', '$', 'A'..'Z', 'a'..'z', '_': IdentProc;
|
|
#10: LFProc;
|
|
'<': LowerProc;
|
|
'-': MinusProc;
|
|
'!': NotSymbolProc;
|
|
#0: NullProc;
|
|
'0'..'9', '.': NumberProc;
|
|
'|': OrSymbolProc;
|
|
'+': PlusProc;
|
|
'/': SlashProc;
|
|
#1..#9, #11, #12, #14..#32: SpaceProc;
|
|
'*': StarProc;
|
|
#34: StringInterpProc;
|
|
#39: StringLiteralProc;
|
|
'^': XOrSymbolProc;
|
|
'(', ')', '[', ']', '\', '{', '}', ',', ';', '?', '~': SymbolProc;
|
|
else UnknownProc;
|
|
end;
|
|
inherited;
|
|
end;
|
|
|
|
function TSynPerlSyn.GetDefaultAttribute(Index: Integer): TSynHighlighterAttributes;
|
|
begin
|
|
case Index of
|
|
SYN_ATTR_COMMENT: Result := FCommentAttri;
|
|
SYN_ATTR_IDENTIFIER: Result := FIdentifierAttri;
|
|
SYN_ATTR_KEYWORD: Result := FKeyAttri;
|
|
SYN_ATTR_STRING: Result := FStringAttri;
|
|
SYN_ATTR_WHITESPACE: Result := FSpaceAttri;
|
|
SYN_ATTR_SYMBOL: Result := FSymbolAttri;
|
|
else
|
|
Result := nil;
|
|
end;
|
|
end;
|
|
|
|
function TSynPerlSyn.GetEol: Boolean;
|
|
begin
|
|
Result := Run = FLineLen + 1;
|
|
end;
|
|
|
|
function TSynPerlSyn.GetTokenID: TtkTokenKind;
|
|
begin
|
|
Result := FTokenID;
|
|
end;
|
|
|
|
function TSynPerlSyn.GetTokenAttribute: TSynHighlighterAttributes;
|
|
begin
|
|
case FTokenID of
|
|
tkComment: Result := FCommentAttri;
|
|
tkIdentifier: Result := FIdentifierAttri;
|
|
tkKey: Result := FKeyAttri;
|
|
tkNumber: Result := FNumberAttri;
|
|
tkOperator: Result := FOperatorAttri;
|
|
tkPragma: Result := FPragmaAttri;
|
|
tkSpace: Result := FSpaceAttri;
|
|
tkString: Result := FStringAttri;
|
|
tkSymbol: Result := FSymbolAttri;
|
|
tkUnknown: Result := FInvalidAttri;
|
|
tkVariable: Result := FVariableAttri;
|
|
else Result := nil;
|
|
end;
|
|
end;
|
|
|
|
function TSynPerlSyn.GetTokenKind: Integer;
|
|
begin
|
|
Result := Ord(FTokenID);
|
|
end;
|
|
|
|
function TSynPerlSyn.GetSampleSource: UnicodeString;
|
|
begin
|
|
Result :=
|
|
'#!/bin/perl'#13#10 +
|
|
'require "cgi-lib.pl";'#13#10 +
|
|
'use sigtrap;'#13#10 +
|
|
'do ''envars.pl'';'#13#10 +
|
|
'$_ = $password1;'#13#10 +
|
|
'sub WriteBack {'#13#10 +
|
|
' while ($_ ne "fred") {'#13#10 +
|
|
' sleep 5;'#13#10 +
|
|
' }'#13#10 +
|
|
'}';
|
|
end;
|
|
|
|
function TSynPerlSyn.IsFilterStored: Boolean;
|
|
begin
|
|
Result := FDefaultFilter <> SYNS_FilterPerl;
|
|
end;
|
|
|
|
function TSynPerlSyn.IsIdentChar(AChar: WideChar): Boolean;
|
|
begin
|
|
case AChar of
|
|
'%', '@', '$', '_', '0'..'9', 'a'..'z', 'A'..'Z':
|
|
Result := True;
|
|
else
|
|
Result := False;
|
|
end;
|
|
end;
|
|
|
|
class function TSynPerlSyn.GetLanguageName: string;
|
|
begin
|
|
Result := SYNS_LangPerl;
|
|
end;
|
|
|
|
class function TSynPerlSyn.GetFriendlyLanguageName: UnicodeString;
|
|
begin
|
|
Result := SYNS_FriendlyLangPerl;
|
|
end;
|
|
|
|
initialization
|
|
{$IFNDEF SYN_CPPB_1}
|
|
RegisterPlaceableHighlighter(TSynPerlSyn);
|
|
{$ENDIF}
|
|
end.
|