synhighlighterunreal.pas

来自「一个mwEdit控件原码,比mwCuuEdit0.92a功能先进.」· PAS 代码 · 共 2,004 行 · 第 1/5 页

PAS
2,004
字号
  fIdentFuncTable[82] := Func82;
  fIdentFuncTable[83] := Func83;
  fIdentFuncTable[84] := Func84;
  fIdentFuncTable[85] := Func85;
  fIdentFuncTable[87] := Func87;
  fIdentFuncTable[89] := Func89;
  fIdentFuncTable[91] := Func91;
  fIdentFuncTable[92] := Func92;
  fIdentFuncTable[96] := Func96;
  fIdentFuncTable[97] := Func97;
  fIdentFuncTable[98] := Func98;
  fIdentFuncTable[99] := Func99;
  fIdentFuncTable[100] := Func100;
  fIdentFuncTable[101] := Func101;
  fIdentFuncTable[102] := Func102;
  fIdentFuncTable[103] := Func103;
  fIdentFuncTable[104] := Func104;
  fIdentFuncTable[106] := Func106;
  fIdentFuncTable[107] := Func107;
  fIdentFuncTable[108] := Func108;
  fIdentFuncTable[109] := Func109;
  fIdentFuncTable[113] := Func113;
  fIdentFuncTable[115] := Func115;
  fIdentFuncTable[120] := Func120;
  fIdentFuncTable[122] := Func122;
  fIdentFuncTable[126] := Func126;
  fIdentFuncTable[127] := Func127;
  fIdentFuncTable[128] := Func128;
  fIdentFuncTable[136] := Func136;
  fIdentFuncTable[143] := Func143;
  fIdentFuncTable[144] := Func144;
  fIdentFuncTable[146] := Func146;
  fIdentFuncTable[147] := Func147;
  fIdentFuncTable[148] := Func148;
  fIdentFuncTable[156] := Func156;
  fIdentFuncTable[167] := Func167;
  fIdentFuncTable[172] := Func172;
  fIdentFuncTable[174] := Func174;
  fIdentFuncTable[178] := Func178;
  fIdentFuncTable[185] := Func185;
  fIdentFuncTable[190] := Func190;
  fIdentFuncTable[192] := Func192;
  fIdentFuncTable[193] := Func193;
  fIdentFuncTable[210] := Func210;
  fIdentFuncTable[218] := Func218;
  fIdentFuncTable[238] := Func238;
end;

function TSynUnrealSyn.KeyHash(ToHash: PChar): Integer;
begin
  Result := 0;

  while ToHash^ in TSynValidStringChars do
  begin
    inc(Result, mHashTable[ToHash^]);
    inc(ToHash);
  end;
  fStringLen := ToHash - fToIdent;
end; { KeyHash }

function TSynUnrealSyn.KeyComp(const aKey: String): Boolean;
var
  I: Integer;
  Temp: PChar;
begin
  Temp := fToIdent;
  if Length(aKey) = fStringLen then
  begin
    Result := True;
    for i := 1 to fStringLen do
    begin
      if Uppercase(Temp^) <> aKey[i] then
      begin
        Result := False;
        break;
      end;
      inc(Temp);
    end;
  end else Result := False;
end; { KeyComp }

function TSynUnrealSyn.Func15: TtkTokenKind;
begin
  if KeyComp('IF') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func17: TtkTokenKind;
begin
  if KeyComp('EACH') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func19: TtkTokenKind;
begin
  if KeyComp('DO') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func28: TtkTokenKind;
begin
  if KeyComp('CASE') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func33: TtkTokenKind;
begin
  if KeyComp('NAME') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func35: TtkTokenKind;
begin
  if KeyComp('CATCH') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func37: TtkTokenKind;
begin
  if KeyComp('BREAK') then Result := tkKey else
    if KeyComp('EXEC') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func39: TtkTokenKind;
begin
  if KeyComp('DOT') then Result := tkSymbol else
    if KeyComp('FOR') then Result := tkKey else
      if KeyComp('RNG') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func40: TtkTokenKind;
begin
  if KeyComp('SCALE') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func41: TtkTokenKind;
begin
  if KeyComp('ELSE') then Result := tkKey else
    if KeyComp('VAR') then Result := tkKey else
      if KeyComp('GUID') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func42: TtkTokenKind;
begin
  if KeyComp('FINAL') then Result := tkKey2 else
    if KeyComp('FOR') then Result := tkKey else
      if KeyComp('SELF') then Result := tkKey else
      if KeyComp('NEW') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func43: TtkTokenKind;
begin
  if KeyComp('NEW') then Result := tkKey else
    if KeyComp('INT') then Result := tkKey else
      if KeyComp('SELF') then Result := tkKey else
        if KeyComp('LOCAL') then Result := tkKey else
          if KeyComp('FALSE') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func44: TtkTokenKind;
begin
  if KeyComp('FALSE') then Result := tkKey else
    if KeyComp('BOOL') then Result := tkKey else
      if KeyComp('LOCAL') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func45: TtkTokenKind;
begin
  if KeyComp('BOOL') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func48: TtkTokenKind;
begin
  if KeyComp('MESH') then Result := tkKey else
    if KeyComp('LONG') then Result := tkKey else 
      if KeyComp('NONE') then Result := tkKey else
        if KeyComp('PLANE') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func49: TtkTokenKind;
begin
  if KeyComp('GLOBAL') then Result := tkKey else
    if KeyComp('MODEL') then Result := tkKey else
      if KeyComp('COERCE') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func50: TtkTokenKind;
begin
  if KeyComp('VOID') then Result := tkKey else
    if KeyComp('VECT') then Result := tkKey else Result := tkIdentifier; 
end;

function TSynUnrealSyn.Func51: TtkTokenKind;
begin
  if KeyComp('DELETE') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func52: TtkTokenKind;
begin
  if KeyComp('BYTE') then Result := tkKey else
    if KeyComp('INIT') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func53: TtkTokenKind;
begin
  if KeyComp('ENUM') then Result := tkKey else
    if KeyComp('ROT') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func54: TtkTokenKind;
begin
  if KeyComp('CLASS') then Result := tkKey else
    if KeyComp('CONFIG') then Result := tkKey else
      if KeyComp('FLOAT') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func55: TtkTokenKind;
begin
  if KeyComp('SKIP') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func56: TtkTokenKind;
begin
  if KeyComp('FOREACH') then Result := tkKey else
    if KeyComp('OUT') then Result := tkKey else Result := tkIdentifier;
end;                                                                                  

function TSynUnrealSyn.Func57: TtkTokenKind;
begin
  if KeyComp('AUTO') then Result := tkKey else
    if KeyComp('GOTO') then Result := tkKey else
      if KeyComp('WHILE') then Result := tkKey else
        if KeyComp('PLACEABLE') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func59: TtkTokenKind;
begin
  if KeyComp('DELEGATE') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func62: TtkTokenKind;
begin
  if KeyComp('EDFINDABLE') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func63: TtkTokenKind;
begin
  if KeyComp('COLOR') then Result := tkKey else
    if KeyComp('ARRAY') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func64: TtkTokenKind;
begin
  if KeyComp('TRUE') then Result := tkKey else
    if KeyComp('RELIABLE') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func65: TtkTokenKind;
begin
  if KeyComp('STATE') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func66: TtkTokenKind;
begin
  if KeyComp('EVENT') then Result := tkKey else
    if KeyComp('LENGTH') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func69: TtkTokenKind;
begin
  if KeyComp('DEFAULT') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func70: TtkTokenKind;
begin
  if KeyComp('STOP') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func71: TtkTokenKind;
begin
  if KeyComp('CONST') then Result := tkKey2 else
    if KeyComp('NATIVE') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func72: TtkTokenKind;
begin
  if KeyComp('LATENT') then Result := tkKey2 else
    if KeyComp('STATIC') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func73: TtkTokenKind;
begin
  if KeyComp('SOUND') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func74: TtkTokenKind;
begin
  if KeyComp('CROSS') then Result := tkSymbol else
    if KeyComp('MUTABLE') then Result := tkKey else
      if KeyComp('COORDS') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func76: TtkTokenKind;
begin
  if KeyComp('UNTIL') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func78: TtkTokenKind;
begin
  if KeyComp('TRAVEL') then Result := tkKey else
    if KeyComp('REMOVE') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func79: TtkTokenKind;
begin
  if KeyComp('SUPER') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func80: TtkTokenKind;
begin
  if KeyComp('INPUT') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func81: TtkTokenKind;
begin
  if KeyComp('DEPRECATED') then Result := tkKey2 else
    if KeyComp('ALWAYS') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func82: TtkTokenKind;
begin
  if KeyComp('SWITCH') then Result := tkKey else
    if KeyComp('ASSERT') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func83: TtkTokenKind;
begin
  if KeyComp('EXPANDS') then Result := tkKey else
    if KeyComp('VECTOR') then Result := tkKey else
      if KeyComp('WITHIN') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func84: TtkTokenKind;
begin
  if KeyComp('ABSTRACT') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func85: TtkTokenKind;
begin
  if KeyComp('INSERT') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func87: TtkTokenKind;
begin
  if KeyComp('LOCALIZED') then Result := tkKey2 else
    if KeyComp('STRING') then Result := tkKey else
      if KeyComp('IGNORES') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func89: TtkTokenKind;
begin
  if KeyComp('INSTANCED') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func91: TtkTokenKind;
begin
  if KeyComp('EXTENDS') then Result := tkKey else
    if KeyComp('PRIVATE') then Result := tkKey2 else
      if KeyComp('SAFEREPLACE') then Result := tkKey2 else
        if KeyComp('IMPORT') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func92: TtkTokenKind;
begin
  if KeyComp('BUTTON') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func96: TtkTokenKind;
begin
  if KeyComp('RETURN') then Result := tkKey else
    if KeyComp('DEPENDSON') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func97: TtkTokenKind;
begin
  if KeyComp('POINTER') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func98: TtkTokenKind;
begin
  if KeyComp('EXPLICIT') then Result := tkKey else
    if KeyComp('EXPORT') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func99: TtkTokenKind;
begin
  if KeyComp('UNRELIABLE') then Result := tkKey2 else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func100: TtkTokenKind;
begin
  if KeyComp('HIDEPARENT') then Result := tkKey else
    if KeyComp('AUTOMATED') then Result := tkKey else Result := tkIdentifier;
end;

function TSynUnrealSyn.Func101: TtkTokenKind;
begin

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?