Hex Artifact Content

Not logged in

Artifact a1c854d162219a9e1814fbc210e1ebe275787683:


0000: 23 69 66 6e 64 65 66 20 41 46 58 5f 52 53 45 41  #ifndef AFX_RSEA
0010: 52 43 48 5f 48 5f 5f 35 41 39 33 34 36 44 34 5f  RCH_H__5A9346D4_
0020: 33 31 35 32 5f 34 39 32 33 5f 38 45 46 43 5f 33  3152_4923_8EFC_3
0030: 38 32 36 34 41 34 35 36 33 36 34 5f 5f 49 4e 43  8264A456364__INC
0040: 4c 55 44 45 44 5f 0d 0a 23 64 65 66 69 6e 65 20  LUDED_..#define 
0050: 41 46 58 5f 52 53 45 41 52 43 48 5f 48 5f 5f 35  AFX_RSEARCH_H__5
0060: 41 39 33 34 36 44 34 5f 33 31 35 32 5f 34 39 32  A9346D4_3152_492
0070: 33 5f 38 45 46 43 5f 33 38 32 36 34 41 34 35 36  3_8EFC_38264A456
0080: 33 36 34 5f 5f 49 4e 43 4c 55 44 45 44 5f 0d 0a  364__INCLUDED_..
0090: 23 69 6e 63 6c 75 64 65 20 22 6b 69 6c 69 62 2f  #include "kilib/
00a0: 6b 74 6c 61 70 74 72 2e 68 22 0d 0a 23 69 6e 63  ktlaptr.h"..#inc
00b0: 6c 75 64 65 20 22 4e 53 65 61 72 63 68 2e 68 22  lude "NSearch.h"
00c0: 0d 0a 0d 0a 0d 0a 2f 2f 3d 3d 3d 3d 3d 3d 3d 3d  ......//========
00d0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
00e0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
00f0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
0100: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
0110: 3d 0d 0a 2f 2f 40 7b 20 40 70 6b 67 20 47 70 2e  =..//@{ @pkg Gp.
0120: 53 65 61 72 63 68 20 2f 2f 40 7d 0d 0a 2f 2f 40  Search //@}..//@
0130: 7b 0d 0a 2f 2f 09 92 b4 8a c8 88 d5 90 b3 8b 4b  {..//..........K
0140: 95 5c 8c bb 83 7d 83 62 83 60 83 93 83 4f 8a d6  .\...}.b.`...O..
0150: 90 94 81 42 0d 0a 2f 2f 0d 0a 2f 2f 09 70 61 74  ...B..//..//.pat
0160: 82 c6 73 74 72 91 53 91 cc 82 aa 83 7d 83 62 83  ..str.S.....}.b.
0170: 60 82 b7 82 e9 82 c8 82 e7 74 72 75 65 81 41 83  `........true.A.
0180: 5f 83 81 82 c8 82 e7 66 61 6c 73 65 82 f0 95 d4  _......false....
0190: 82 b7 0d 0a 2f 2f 40 7d 0d 0a 2f 2f 3d 3d 3d 3d  ....//@}..//====
01a0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
01b0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
01c0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
01d0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
01e0: 3d 3d 3d 3d 3d 0d 0a 0d 0a 62 6f 6f 6c 20 72 65  =====....bool re
01f0: 67 5f 6d 61 74 63 68 28 20 63 6f 6e 73 74 20 77  g_match( const w
0200: 63 68 61 72 5f 74 2a 20 70 61 74 2c 20 63 6f 6e  char_t* pat, con
0210: 73 74 20 77 63 68 61 72 5f 74 2a 20 73 74 72 2c  st wchar_t* str,
0220: 20 62 6f 6f 6c 20 63 61 73 65 53 20 29 3b 0d 0a   bool caseS );..
0230: 0d 0a 0d 0a 63 6c 61 73 73 20 52 65 67 4e 46 41  ....class RegNFA
0240: 3b 0d 0a 2f 2f 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ;..//===========
0250: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
0260: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
0270: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
0280: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0d 0a  ==============..
0290: 2f 2f 40 7b 0d 0a 2f 2f 20 53 65 61 72 68 63 61  //@{..// Searhca
02a0: 62 6c 65 82 c6 82 b5 82 c4 82 cc 8e c0 91 95 0d  ble.............
02b0: 0a 2f 2f 40 7d 0d 0a 2f 2f 3d 3d 3d 3d 3d 3d 3d  .//@}..//=======
02c0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
02d0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
02e0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
02f0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
0300: 3d 3d 0d 0a 0d 0a 63 6c 61 73 73 20 52 53 65 61  ==....class RSea
0310: 72 63 68 20 3a 20 70 75 62 6c 69 63 20 53 65 61  rch : public Sea
0320: 72 63 68 61 62 6c 65 0d 0a 7b 0d 0a 70 75 62 6c  rchable..{..publ
0330: 69 63 3a 0d 0a 09 52 53 65 61 72 63 68 28 20 63  ic:...RSearch( c
0340: 6f 6e 73 74 20 75 6e 69 63 6f 64 65 2a 20 6b 65  onst unicode* ke
0350: 79 2c 20 62 6f 6f 6c 20 63 61 73 65 53 2c 20 62  y, bool caseS, b
0360: 6f 6f 6c 20 64 6f 77 6e 20 29 3b 0d 0a 0d 0a 70  ool down );....p
0370: 72 69 76 61 74 65 3a 0d 0a 09 76 69 72 74 75 61  rivate:...virtua
0380: 6c 20 62 6f 6f 6c 20 53 65 61 72 63 68 28 20 63  l bool Search( c
0390: 6f 6e 73 74 20 75 6e 69 63 6f 64 65 2a 20 73 74  onst unicode* st
03a0: 72 2c 20 75 6c 6f 6e 67 20 6c 65 6e 2c 20 75 6c  r, ulong len, ul
03b0: 6f 6e 67 20 73 74 74 2c 0d 0a 09 09 75 6c 6f 6e  ong stt,....ulon
03c0: 67 2a 20 6d 62 67 2c 20 75 6c 6f 6e 67 2a 20 6d  g* mbg, ulong* m
03d0: 65 64 20 29 3b 0d 0a 0d 0a 70 72 69 76 61 74 65  ed );....private
03e0: 3a 0d 0a 09 6b 69 3a 3a 64 70 74 72 3c 52 65 67  :...ki::dptr<Reg
03f0: 4e 46 41 3e 20 72 65 5f 3b 0d 0a 09 62 6f 6f 6c  NFA> re_;...bool
0400: 20 63 61 73 65 53 5f 3b 0d 0a 09 62 6f 6f 6c 20   caseS_;...bool 
0410: 64 6f 77 6e 5f 3b 0d 0a 7d 3b 0d 0a 0d 0a 0d 0a  down_;..};......
0420: 0d 0a 0d 0a 0d 0a 23 65 6e 64 69 66 0d 0a        ......#endif..