//=======================================================================
'{': begin
q:=0;
res:=s[i];
AddToMas(res,2);
res:='';
inc(i);
end;
'}': begin
q:=0;
res:=s[i];
AddToMas(res,2);
res:='';
inc(i);
end;
//========================================================
' ': begin
q:=0;
res:='';
inc(i);
end;
'_','g','h','j','k','l','q','s','a','b','x'..'z':
begin
q:=100;
res:=s[i];
inc(i);
end;
'0'..'9': begin
q:=2003;
res:=res+s[i];
inc(i);
end;
'+','-','*','/': begin
q:=2004;
res:=res+s[i];
inc(i);
end;
else begin
q:=1000;
res:=s[i];
inc(i);
end;
end;
//==public private protected published =====
1: case s[i] of
'u': begin
q:=2;
res:=res+s[i];
inc(i);
end;
'r': begin
q:=3;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
//=============public===========
2: case s[i] of
'b': begin
q:=4;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
4: case s[i] of
'l': begin
q:=5;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
5: case s[i] of
'i': begin
q:=6;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
6: case s[i] of
's': begin
q:=11;
res:=res+s[i];
inc(i);
end;
'c': begin
q:=2001;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
//===========published==============
11: case s[i] of
'h': begin
q:=12;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
12: case s[i] of
'e': begin
q:=13;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
13: case s[i] of
'd': begin
q:=2001;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
//=======private================
3: case s[i] of
'i': begin
q:=7;
res:=res+s[i];
inc(i);
end;
'o': begin
q:=14;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
7: case s[i] of
'v': begin
q:=8;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
8: case s[i] of
'a': begin
q:=9;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
9: case s[i] of
't': begin
q:=10;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
10: case s[i] of
'e': begin
q:=2001;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
//=====protected=====================
14: case s[i] of
't': begin
q:=15;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
15: case s[i] of
'e': begin
q:=16;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
16: case s[i] of
'c': begin
q:=17;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
17: case s[i] of
't': begin
q:=18;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
18: case s[i] of
'e': begin
q:=19;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
19: case s[i] of
'd': begin
q:=2001;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
//=======class=======================
20: case s[i] of
'l': begin
q:=21;
res:=res+s[i];
inc(i);
end;
'h': begin
q:=52;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
21: case s[i] of
'a': begin
q:=22;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
22: case s[i] of
's': begin
q:=23;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
23: case s[i] of
's': begin
q:=2001;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
//==== int ===================
50: case s[i] of
'n': begin
q:=51;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
51: case s[i] of
't': begin
q:=2001;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
//===== char =================
52: case s[i] of
'a': begin
q:=53;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
53: case s[i] of
'r': begin
q:=2001;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
//==== real =================
54: case s[i] of
'e': begin
q:=55;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
55: case s[i] of
'a': begin
q:=56;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
56: case s[i] of
'l': begin
q:=2001;
res:=res+s[i];
inc(i);
end;
else begin
q:=100;
end;
end;
//========< <> <= ==============
24: case s[i] of
' ','a'..'z','_': begin
q:=0;
AddToMas(res,2);
end;
'>': begin
q:=2002;
res:=res+s[i];
inc(i);
end;
'=': begin
q:=2002;
res:=res+s[i];
inc(i);
end;
'0'..'9': begin
q:=2003;
AddToMas(res,2);
res:=s[i];
inc(i);
end;
else begin
q:=1000;
res:=s[i];
inc(i);
end;
end;
//======== > > ============
25: case s[i] of
' ','a'..'z','_': begin
q:=0;
AddToMas(res,2);
end;
'=': begin
q:=2002;
res:=res+s[i];
inc(i);
end;
'0'..'9': begin
q:=2003;
AddToMas(res,2);
res:=s[i];
inc(i);
end;
else begin
q:=1000;
res:=s[i];
inc(i);
end;
end;
//====Идентификаторы (id)====
100: case s[i] of
'A'..'Z','_','a'..'z','0'..'9':
begin
q:=100;
res:=res+s[i];
inc(i);
end;
' ','<','>','=',';','.',',',':',')','+','-','*','/','[',']','"':
begin
q:=0;
AddToMas(res,3);
res:='';
end;
else begin
q:=1000;
res:=s[i];
inc(i);
end;
end;
//======Ключевые слова (key)=================================================
2001: case s[i] of
' ',';','.',',','(':
begin
q:=0;
AddToMas(res,1);
res:='';
end
else begin
q:=1000;
res:=s[i];
inc(i);
end;
end;
//=========Операторы (operator)===== ===
2002: case s[i] of
' ','a'..'z','_': begin
q:=0;
AddToMas(res,2);
end;
'0'..'9': begin
q:=2003;
AddToMas(res,2);
res:=s[i];
inc(i);
end;
else begin
q:=1000;
res:=s[i];
inc(i);
end;
end;
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 |


