เบžเบฒเบชเบฒเบญเบฑเบ‡เบเบดเบ”เบžเบฒเบชเบฒเบเบฃเบฑเปˆเบ‡เปเบญเบชเบ›เบฒเป‚เบเบ™

Ad


OnWorks favicon

SWISH-LIBRARY - เบญเบญเบ™เบฅเบฒเบเปƒเบ™เบ„เบฅเบฒเบง

เป€เบ›เบตเบ”เปƒเบŠเป‰ SWISH-LIBRARY เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเบœเปˆเบฒเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ SWISH-LIBRARY เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป„เบ”เป‰เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเป‚เบ”เบเปƒเบŠเป‰เบซเบ™เบถเปˆเบ‡เปƒเบ™เบซเบผเบฒเบเป†เบšเปˆเบญเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบญเบญเบ™เป„เบฅเบ™เปŒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบฑเปˆเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เป‚เบ„เบ‡เบเบฒเบ™:

NAME


SWISH-LIBRARY - เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบเบฑเบšเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” Swish-e C

เบžเบฒเบšเบฅเบงเบก


เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” C เปƒเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบเบฑเบšเบฅเบฐเบซเบฑเบ”เบ„เบปเป‰เบ™เบซเบฒ Swish-e. เบกเบฑเบ™เบชเบฐเบซเบ™เบญเบ‡เบงเบดเบ—เบตเบเบฒเบ™เบเบฑเบ‡
Swish-e เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ‚เบญเบ‡เบ—เปˆเบฒเบ™. API เบ™เบตเป‰เปเบกเปˆเบ™เบญเบตเบ‡เปƒเบชเปˆ Swish-e เป€เบงเบตเบŠเบฑเบ™ 2.3.

เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹: เบ™เบตเป‰เปเบกเปˆเบ™ API เปƒเปเปˆเบ‚เบญเบ‡ Swish-e เป€เบงเบตเบŠเบฑเบ™ 2.3. เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบžเบฒเบชเบฒ C เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡
เบ”เบฑเปˆเบ‡เบ—เบตเปˆเบกเบตเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš perl เบเบฑเบš Swish-e. เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš Perl เปƒเบซเบกเปˆเปเบกเปˆเบ™ SWISH::API module เปเบฅเบฐ
เปเบกเปˆเบ™เบฅเบงเบกเบเบฑเบšเบเบฒเบ™เปเบˆเบเบขเบฒเบ Swish-e. เป‚เบกเบ”เบนเบ™ SWISHE perl เป€เบเบปเปˆเบฒเป„เบ”เป‰เบ–เบทเบเบ‚เบฝเบ™เบ„เบทเบ™เปƒเบซเบกเปˆ
เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš API เปƒเปเปˆ. เป‚เบกเบ”เบนเบ™ SWISHE perl เบšเปเปˆเป„เบ”เป‰เบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบš Swish-e เบญเบตเบเบ•เปเปˆเป„เบ›
เบเบฒเบ™เปเบˆเบเบขเบฒเบ, เปเบ•เปˆเบชเบฒเบกเบฒเบ”เบ”เบฒเบงเป‚เบซเบฅเบ”เป„เบ”เป‰เบˆเบฒเบเป€เบงเบฑเบšเป„เบŠเบ—เปŒ Swish-e.

เบ›เบฐเป‚เบซเบเบ”เบ‚เบญเบ‡เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เปเบกเปˆเบ™เบงเปˆเบฒเป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบซเบผเบทเป„เบŸเบฅเปŒเบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เบซเบ™เบถเปˆเบ‡เบ„เบฑเป‰เบ‡เปเบฅเบฐ
เบซเบผเบฒเบเบ„เปเบฒเบ–เบฒเบกเบ—เบตเปˆเป€เบฎเบฑเบ”เบขเบนเปˆเปƒเบ™เบ”เบฑเบ”เบŠเบฐเบ™เบตเป€เบ›เบตเบ”. เบ™เบตเป‰เบŠเปˆเบงเบเบ›เบฐเบขเบฑเบ”เป€เบงเบฅเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบžเบทเปˆเบญเบชเป‰เบญเบกเปเบฅเบฐเปเบฅเปˆเบ™
swish-e binary, เปเบฅเบฐเป€เบงเบฅเบฒเบฅเบฒเบ„เบฒเปเบžเบ‡เบ‚เบญเบ‡เบเบฒเบ™เป€เบ›เบตเบ”เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบต. เบšเบฒเบ‡เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™
เป„เบ”เป‰เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบชเบฒเบกเป€เบ—เบปเปˆเบฒเปƒเบ™เบ„เบงเบฒเบกเป„เบง.

เบ‚เปเป‰เป€เบชเบเปเบกเปˆเบ™เบงเปˆเบฒเป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบกเบตเบฅเบฐเบซเบฑเบ”เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบ‚เบถเป‰เบ™ (เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ”เบฑเบ”เบชเบฐเบ™เบตเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰
เปƒเบŠเป‰โ€‹เบ„เบงเบฒเบกโ€‹เบŠเบปเบ‡โ€‹เบˆเปเบฒโ€‹เบ—เบตเปˆโ€‹เบ‚เป‰เบญเบ™โ€‹เบ‚เป‰เบฒเบ‡โ€‹เบ™เป‰เบญเบโ€‹)โ€‹, เปเบฅเบฐโ€‹เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ„เบงเบฒเบกโ€‹เบœเบดเบ”โ€‹เบžเบฒเบ”โ€‹เบ—เบตเปˆโ€‹เบฎเป‰เบฒเบโ€‹เปเบฎเบ‡โ€‹เป€เบเบตเบ”โ€‹เบ‚เบถเป‰เบ™โ€‹เปƒเบ™ swish เบกเบฑเบ™โ€‹เบˆเบฐโ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบ—เปˆเบฒเบ™โ€‹เบซเบผเบธเบ”โ€‹เบฅเบปเบ‡โ€‹
เป‚เบ„เบ‡เบเบฒเบ™. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบ„เบงเบ™เบ„เบดเบ”เบเปˆเบฝเบงเบเบฑเบš, เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบ–เป‰เบฒเบเบฑเบ‡ swish เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบงเบฑเบšเป„เบŠเบ•เปŒ
เป€เบŠเบฑเปˆเบ™ Apache เบšเปˆเบญเบ™เบ—เบตเปˆเบกเบตเบซเบผเบฒเบเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบฎเบฑเบšเปƒเบŠเป‰เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป.

เบงเบดเบ—เบตเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเบˆเบฐเบฎเบฝเบ™เบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบšเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เปเบกเปˆเบ™เป€เบšเบดเปˆเบ‡เบชเบญเบ‡เป„เบŸเบฅเปŒเบ—เบตเปˆเบฅเบงเบกเบขเบนเปˆเปƒเบ™ Swish-e
เบเบฒเบ™เปเบˆเบเบขเบฒเบเบ—เบตเปˆเบ™เปเบฒเปƒเบŠเป‰เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”.

src/libtest.c
เป„เบŸเบฅเปŒเบ™เบตเป‰เปƒเบซเป‰เบžเบฒเบšเบฅเบงเบกเบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เป‚เบ„เบ‡เบเบฒเบ™ C เบเบฑเบšเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” Swish-e. เบšเปเปˆเปเบกเปˆเบ™
เบŸเบฑเบ‡เบŠเบฑเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ™เบฑเป‰เบ™, เปเบ•เปˆเบกเบฑเบ™เบ„เบงเบ™เบˆเบฐเปƒเบซเป‰เบ—เปˆเบฒเบ™เบ”เบต
เบžเบฒเบšเบฅเบงเบกเบ‚เบญเบ‡เบเบฒเบ™เบชเป‰เบฒเบ‡เป‚เบ›เบผเปเบเบผเบก C เบ”เป‰เบงเบ swish-e.

เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เปเบฅเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ libtest chdir เป„เบ›เบซเบฒเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบต src เปเบฅเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡:

$ เป€เบฎเบฑเบ”เปƒเบซเป‰ libtest
$ ./libtest [เบŠเบทเปˆเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบต]

เบ—เปˆเบฒเบ™เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เป€เบ•เบทเบญเบ™เบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเบ„เบปเป‰เบ™เบซเบฒ. เบ”เบฑเบ”เบŠเบฐเบ™เบตเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ—เบตเปˆเปƒเบŠเป‰เปเบกเปˆเบ™ index.swish-e.
เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเบฅเบปเบšเบฅเป‰เบฒเบ‡เป‚เบ”เบเบเบฒเบ™เบงเบฒเบ‡เบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเปƒเบ™เบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบ›เบปเบเบ›เป‰เบญเบ‡เบ”เป‰เบงเบเบ„เปเบฒเป€เบงเบปเป‰เบฒ.

$ ./libtest 'index1 index2 index3'

perl/API.xs
เป„เบ”เป‰ API.xs เป„เบŸเบฅเปŒเปเบกเปˆเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš Perl "xsub" เบเบฑเบšเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” C เปเบฅเบฐเป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡
SWISH::API Perl module. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเปเบšเบšเบงเบฑเบ”เบ–เบธเบเบฑเบšเบซเป‰เบญเบ‡เบชเบฐเปเบธเบ” Swish-e
เปเบฅเบฐเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเบดเบ—เบตเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ•เปˆเบฒเบ‡เป† "เบงเบฑเบ”เบ–เบธ" เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เป‚เบ”เบเบเบฒเบ™เป‚เบ—เบซเบฒ C เปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเบžเบงเบเบกเบฑเบ™
เบ–เบทเบเบ—เปเบฒเบฅเบฒเบเป€เบกเบทเปˆเบญเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™.

เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ เป„เบ”เป‰ Swish-e เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”


เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” Swish-e เบ–เบทเบเบ•เบดเบ”เบ•เบฑเป‰เบ‡เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ "เป€เบฎเบฑเบ”เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡" เป€เบกเบทเปˆเบญเบชเป‰เบฒเบ‡ Swish-e. เบšเปเปˆ
เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบžเบดเป€เบชเบ”เปเบกเปˆเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™.

เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเป„เบŸเบฅเปŒเบชเปˆเบงเบ™เบซเบปเบง "swish-eh" เปเบฅเบฐเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” "libswish-e.*" เบ—เบตเปˆเบชเบฒเบกเบฒเบ”
เบšเปเปˆเบงเปˆเบฒเบˆเบฐเป€เบ›เบฑเบ™เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เปเบšเบšเบ„เบปเบ‡เบ—เบตเปˆ เบซเบผเบทเบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เบ—เบตเปˆเปƒเบŠเป‰เบฎเปˆเบงเบกเบเบฑเบ™ เบ‚เบถเป‰เบ™เบเบฑเบšเป€เบงเบ—เบตเบ‚เบญเบ‡เบ—เปˆเบฒเบ™.

เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” เบžเบฒเบšเบฅเบงเบก


เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เบ•เบดเบ”เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบต (เบซเบผเบทเป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบต) เบ—เปเบฒเบญเบดเบ”, เบ—เปˆเบฒเบ™เบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบเบฑเบš "swish handle".
เบˆเบฒเบเบ•เบปเบงเบˆเบฑเบšเบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบซเบ™เบถเปˆเบ‡เบซเบผเบทเบซเบผเบฒเบ "เบงเบฑเบ”เบ–เบธเบ„เบปเป‰เบ™เบซเบฒ" เป€เบŠเบดเปˆเบ‡เบ–เบทเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเป„เบ›
เบชเบญเบšเบ–เบฒเบกเบ”เบฑเบ”เบชเบฐเบ™เบต, เป€เบŠเบฑเปˆเบ™: เบชเบฒเบเบ„เบณเบŠเบญเบเบซเบฒ, เบฅเบณเบ”เบฑเบšเบเบฒเบ™เบฎเบฝเบ‡เบฅเบณเบ”เบฑเบš, เบ•เบปเบงเบ‚เบฑเป‰เบ™เบ„เบณเบŠเบญเบเบซเบฒ, เบ‚เบตเบ”เบˆเบณเบเบฑเบ”.
เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเปเบฅเบฐเป‚เบ„เบ‡เบชเป‰เบฒเบ‡ HTML bits. "เบงเบฑเบ”เบ–เบธ" เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบ•เบปเบงเบŠเบตเป‰เป„เบ›เบซเบฒ C
เป‚เบ„เบ‡เบชเป‰เบฒเบ‡, เปเบ•เปˆเบกเบฑเบ™เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ—เบตเปˆเบˆเบฐเบ„เบดเบ”เบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบงเบฑเบ”เบ–เบธเบ—เบตเปˆเบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ
เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบกเบฑเบ™.

เบงเบฑเบ”เบ–เบธเบ„เบปเป‰เบ™เบซเบฒเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบชเบญเบšเบ–เบฒเบกเบ”เบฑเบ”เบชเบฐเบ™เบต. เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบชเบปเปˆเบ‡เบ„เบทเบ™ "เบงเบฑเบ”เบ–เบธเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš". เป„เบ”เป‰
เบงเบฑเบ”โ€‹เบ–เบธโ€‹เบœเบปเบ™โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบ–เบทโ€‹เบˆโ€‹เปโ€‹เบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡ hits, เบเบฒเบ™โ€‹เบชเบญเบšโ€‹เบ–เบฒเบกโ€‹เบ—เบตเปˆโ€‹เบงเบดโ€‹เป€เบ„เบฒเบฐโ€‹เบ•เปเปˆโ€‹เบ”เบฑเบ”โ€‹เบŠเบฐโ€‹เบ™เบต, เปเบฅเบฐโ€‹เบŠเบธเบ”โ€‹เบœเบปเบ™โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบš.
เบงเบฑเบ”เบ–เบธเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ•เบดเบ”เบ•เบฒเบกเบ•เปเบฒเปเบซเบ™เปˆเบ‡เบ›เบฐเบˆเบธเบšเบฑเบ™เปƒเบ™เบŠเบธเบ”เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš. เป€เบˆเบปเป‰เบฒเบญเบฒเบ”เบˆเบฐ "เบŠเบญเบเบซเบฒ"
เบเบฑเบšเบšเบฑเบ™เบ—เบถเบเบชเบฐเป€เบžเบฒเบฐเบžเบฒเบเปƒเบ™เบŠเบธเบ”เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš (เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบซเบ™เป‰เบฒเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš).

เบชเบธเบ”เบ—เป‰เบฒเบ, เบงเบฑเบ”เบ–เบธเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบ‚เบญเบ‡เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ”เบฝเบงเบˆเบฒเบเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš. เบงเบฑเบ”เบ–เบธเบœเบปเบ™
เปƒเบซเป‰เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ‚เบญเบ‡เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš (เป€เบŠเบฑเปˆเบ™: เบŠเบทเปˆเป„เบŸเบฅเปŒ, เบญเบฑเบ™เบ”เบฑเบš, เปเบฅเบฐเบญเบทเปˆเบ™เป†).

เบ™เบญเบเป€เปœเบทเบญเป„เบ›เบˆเบฒเบเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš, เบกเบตเบŸเบฑเบ‡เบŠเบฑเบ™เบ•เปˆเบฒเบ‡เป†เป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ„เปˆเบฒ header เบ—เบตเปˆเป€เบเบฑเบšเป„เบงเป‰
เปƒเบ™เป€เบญเบเบฐเบชเบฒเบ™เบ”เบฑเบ”เบชเบฐเบ™เบต, เบซเบ™เป‰เบฒเบ—เบตเปˆเบเบงเบ”เบชเบญเบšเปเบฅเบฐเบฅเบฒเบเบ‡เบฒเบ™เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”, เปเบฅเบฐเบซเบ™เป‰เบฒเบ—เบตเปˆเบกเบตเบ›เบฐเป‚เบซเบเบ”เบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡.

เบกเบต เบซเบ™เป‰เบฒเบ—เบตเปˆ


เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เปเบกเปˆเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเปƒเบ™ Swish-e C language API.

เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰ (เปเบฅเบฐ typedefs) เบ–เบทเบเบเปเบฒเบ™เบปเบ”เบขเบนเปˆเปƒเบ™ swish-เป€เบญเบต เป„เบŸเบฅเปŒเบซเบปเบง. เบ—เบปเปˆเบงเป„เบ›
เบงเบฑเบ”เบ–เบธ (เป€เบŠเบฑเปˆเบ™: เป‚เบ„เบ‡เบชเป‰เบฒเบ‡) เบ—เบตเปˆเปƒเบŠเป‰เปเบกเปˆเบ™:

SW_HANDLE - เป‚เบ•เบˆเบฑเบš swish เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบเบฑเบšเป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบต
SW_SEARCH - เบ„เบปเป‰เบ™เบซเบฒ "เบงเบฑเบ”เบ–เบธ" เบ—เบตเปˆเบ–เบทเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒ
SW_RESULTS - เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš "เบงเบฑเบ”เบ–เบธ" เบ—เบตเปˆเบ–เบทเบŠเบธเบ”เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš
SW_RESULT - เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ”เบฝเบงเบ—เบตเปˆเปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ‚เบญเบ‡เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš
SW_FUZZYWORD - เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เบ„เปเบฒเบชเบฑเบš fuzzy (stemming).

เบŠเบญเบเบซเบฒ

SW_HANDLE SwishInit(char *IndexFiles);
เบŸเบฑเบ‡เบŠเบฑเบ™เบ™เบตเป‰เบˆเบฐเป€เบ›เบตเบ” เปเบฅเบฐเบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบชเปˆเบงเบ™เบซเบปเบงเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบ—เบตเปˆเบฅเบงเบกเบขเบนเปˆเปƒเบ™
IndexFiles string. เบชเบฐเบ•เบฃเบดเบ‡เบ„เบงเบ™เบกเบตเบฅเบฒเบเบŠเบทเปˆเป„เบŸเบฅเปŒเบ”เบฑเบ”เบŠเบฐเบ™เบตเบ—เบตเปˆเปเบเบเบเบฑเบ™เบˆเบฒเบเบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡.

SW_HANDLE เบกเบทเบˆเบฑเบšเบ‚เบญเบ‡เบ‚เป‰เบญเบ;
myhandle = SwishInit("file1.idx");

เป‚เบ”เบเบ›เบปเบเบเบฐเบ•เบดเบ—เปˆเบฒเบ™เบˆเบฐเป€เบ›เบตเบ”เบ•เบปเบงเบˆเบฑเบšเปƒเบ™เบ•เบญเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เป‚เบ›เบผเปเบเบผเบกเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบฅเบฐเปƒเบŠเป‰เบกเบฑเบ™เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡
เบซเบผเบฒเบเบ„เปเบฒเบ–เบฒเบกเบขเบนเปˆเปƒเบ™เบ”เบฑเบ”เบŠเบฐเบ™เบต.

เบŸเบฑเบ‡เบŠเบฑเบ™เบ™เบตเป‰เบˆเบฐเบชเบปเปˆเบ‡เบ„เบทเบ™เบ•เบปเบงเบˆเบฑเบšเบชเบฐเบงเบดเบ”เบชเบฐเป€เปเบต. เบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบงเบ”เป€เบšเบดเปˆเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”, เปเบฅเบฐเบชเบธเบ”
เบ„เบงเบฒเบกโ€‹เบœเบดเบ”โ€‹เบžเบฒเบ”โ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบ„เบงเบฒเบกโ€‹เบŠเบปเบ‡โ€‹เบˆเปเบฒโ€‹เบ—เบตเปˆโ€‹เปƒเบŠเป‰โ€‹เป‚เบ”เบโ€‹เบกเบทโ€‹เบˆเบฑเบšโ€‹, เบซเบผเบทโ€‹เบเบปเบโ€‹เป€เบฅเบตเบโ€‹.

เบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เป€เบญเบปเบฒเบฅเบนเบเบญเบญเบ:

SW_HANDLE swish_handle;
swish_handle = SwishInit("file1.idx file2.idx");
เบ–เป‰เบฒ ( SwishError( swish_handle ) )
SwishAbortLastError( swish_handle );

เปเบฅเบฐเบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบˆเบฑเบšเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”:

SW_HANDLE swish_handle;
swish_handle = SwishInit("file1.idx file2.idx");
เบ–เป‰เบฒ ( SwishError( swish_handle ) )
{
printf("เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบซเบฒ swish เบฅเบปเป‰เบกเป€เบซเบฅเบง. %s\n", SwishErrorString( swish_handle ) );
SwishClose( swish_handle ); /* เบ›เบปเบ”โ€‹เบ›เปˆเบญเบโ€‹เบ„เบงเบฒเบกโ€‹เบŠเบปเบ‡โ€‹เบˆเปเบฒโ€‹เบ—เบตเปˆโ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰ */
return 0
}

เป€เบˆเบปเป‰เบฒเบญเบฒเบ”เบกเบตเบ•เบปเบงเบˆเบฑเบšเบซเบผเบฒเบเบเบงเปˆเบฒเปœเบถเปˆเบ‡เบญเบฑเบ™เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเบ•เปเปˆเบ„เบฑเป‰เบ‡.

Swish-e เบˆเบฐเบšเปเปˆเบšเบญเบเบ—เปˆเบฒเบ™เบงเปˆเบฒเป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบขเบนเปˆเปƒเบ™เปเบœเปˆเบ™ (เป€เบŠเบฑเปˆเบ™: เบซเบผเบฑเบ‡เบˆเบฒเบ
reindexing). เปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ„เบปเบ‡เบ—เบตเปˆ (เป€เบŠเบฑเปˆเบ™: mod_perl) เป‚เบ„เบ‡เบเบฒเบ™เบเบฒเบ™เป‚เบ—เบ„เบงเบ™
เบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบขเบนเปˆเปƒเบ™เปเบœเปˆเบ™. เบงเบดเบ—เบตเบเบฒเบ™เบ—เบปเปˆเบงเป„เบ›เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เบ™เบตเป‰เปเบกเปˆเบ™เป€เบžเบทเปˆเบญ
เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ•เบปเบงเป€เบฅเบ inode เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเป€เบ›เบตเบ”เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบต, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบฅเบฐเบšเบธเบŠเบทเปˆเป„เบŸเบฅเปŒ
เป€เบฅเบทเป‰เบญเบเป†เปเบฅเบฐเป€เบ›เบตเบ”เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบ„เบทเบ™เปƒเบซเบกเปˆเบ–เป‰เบฒเบ•เบปเบงเป€เบฅเบ inode เบ›เปˆเบฝเบ™เปเบ›เบ‡.

void SwishClose(SW_HANDLE handle);
เบŸเบฑเบ‡เบŠเบฑเบ™เบ™เบตเป‰เบ›เบดเบ”เปเบฅเบฐเบ›เปˆเบญเบเบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเปเบฒเบ‚เบญเบ‡เบ•เบปเบงเบˆเบฑเบš Swish. เบ—เบธเบเป† swish handle
เบ„เบงเบ™เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบปเบ”เบ›เปˆเบญเบเป€เบกเบทเปˆเบญเป€เบฎเบฑเบ”เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ”เบฑเบ”เบชเบฐเบ™เบต. เบฅเบปเป‰เบกเป€เบซเบฅเบงเปƒเบ™เบเบฒเบ™เบ›เบดเบ” handle เบˆเบฐ
เบชเบปเปˆเบ‡เบœเบปเบ™เปƒเบซเป‰เบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเปเบฒเบฎเบปเปˆเบงเป„เบซเบผ.

SW_SEARCH New_Search_Object(SW_HANDLE handle, const char *query);
เบชเบปเปˆเบ‡เบ„เบทเบ™เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเปƒเบซเบกเปˆ "object". เบงเบฑเบ”เบ–เบธเบ„เบปเป‰เบ™เบซเบฒเบ–เบทเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ—เบตเปˆเปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบš
เบ„เบปเป‰เบ™เบซเบฒเบ”เบฑเบ”เบชเบฐเบ™เบต. เบงเบฑเบ”เบ–เบธเบ„เบปเป‰เบ™เบซเบฒเบญเบฑเบ™เบ”เบฝเบงเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบชเบญเบšเบ–เบฒเบกเบ”เบฑเบ”เบชเบฐเบ™เบตเบซเบผเบฒเบ
เป€เบ—เบทเปˆเบญ. เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบขเบนเปˆโ€‹เบ‚เป‰เบฒเบ‡โ€‹เบฅเบธเปˆเบกโ€‹เบ™เบตเป‰โ€‹เปเบกเปˆเบ™ "เบ•เบดเบ”โ€‹" เบ—เบตเปˆโ€‹เบžเบงเบโ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบเบฑเบ‡โ€‹เบ„เบปเบ‡โ€‹เบ•เบฑเป‰เบ‡โ€‹เบขเบนเปˆโ€‹
เบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ„เบปเป‰เบ™เบซเบฒเบˆเบปเบ™เบเปˆเบงเบฒเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡.

int SwishGetStructure( SW_SEARCH srch );
เบ•เบญเบšเบ—เบธเบ‡ "เป‚เบ„เบ‡เบชเป‰เบฒเบ‡" เบ‚เบญเบ‡เบงเบฑเบ”เบ–เบธเบŠเบญเบเบซเบฒเบ—เบตเปˆเบœเปˆเบฒเบ™ เบซเบผเบท 0 เบ–เป‰เบฒเบงเบฑเบ”เบ–เบธเบŠเบญเบเบซเบฒเปเบกเปˆเบ™
NULL.

void SwishPhraseDelimiter( SW_SEARCH srch, char delimiter );
เบเปเบฒเบ™เบปเบ”เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ•เบปเบงเบ‚เบฑเป‰เบ™เบ›เบฐเป‚เบซเบเบ. เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปเบกเปˆเบ™เบชเบญเบ‡เบงเบปเบ‡เบขเบทเบก.

char SwishGetPhraseDelimiter( SW_SEARCH srch );
เบชเบปเปˆเบ‡เบ„เปˆเบฒเบ•เบปเบงเบ‚เบฑเป‰เบ™เบ›เบฐเป‚เบซเบเบเบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เบงเบฑเบ”เบ–เบธเบŠเบญเบเบซเบฒ เบซเบผเบท 0 เบ–เป‰เบฒเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒ
เบงเบฑเบ”เบ–เบธเปเบกเปˆเบ™ NULL.

void SwishSetStructure( SW_SEARCH srch, เป‚เบ„เบ‡เบชเป‰เบฒเบ‡ int );
เบเปเบฒเบ™เบปเบ”เบ—เบธเบ‡ "เป‚เบ„เบ‡เบชเป‰เบฒเบ‡" เปƒเบ™เบงเบฑเบ”เบ–เบธเบ„เบปเป‰เบ™เบซเบฒ. เบ—เบธเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบˆเปเบฒเบเบฑเบ”
เบ„เบปเป‰เบ™เบซเบฒเบžเบฒเบเบชเปˆเบงเบ™เบ‚เบญเบ‡เป„เบŸเบฅเปŒ HTML (เป€เบŠเบฑเปˆเบ™: เบซเบปเบงเบ‚เปเป‰ เบซเบผเบทเบชเปˆเบงเบ™เบซเบปเบง). เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปเบกเปˆเบ™เป€เบžเบทเปˆเบญ
เบšเปเปˆเบˆเปเบฒเบเบฑเบ”. เบ™เบตเป‰เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบชเบฐเบซเบผเบฑเบšเป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ -H.

void SwishPhraseDelimiter( SW_SEARCH srch, char delimiter );
เบเปเบฒเบ™เบปเบ”เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ•เบปเบงเบ‚เบฑเป‰เบ™เบ›เบฐเป‚เบซเบเบ. เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปเบกเปˆเบ™เบชเบญเบ‡เบงเบปเบ‡เบขเบทเบก.

void SwishSetSort( SW_SEARCH srch, char *sort );
เบเปเบฒเบ™เบปเบ”เบฅเปเบฒเบ”เบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบฅเบฝเบ‡เบ‚เบญเบ‡เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš. เบ™เบตเป‰เปเบกเปˆเบ™เบ„เบทเบเบฑเบ™เบเบฑเบšเบชเบฐเบงเบดเบ” -s เบ—เบตเปˆเปƒเบŠเป‰เบเบฑเบš
swish-e เบ„เบนเปˆ.

void SwishSetQuery( SW_SEARCH srch, char *query );
เบ•เบฑเป‰เบ‡เบชเบฐเบ•เบฃเบดเบ‡เปเบšเบšเบชเบญเบšเบ–เบฒเบกเปƒเบ™เบงเบฑเบ”เบ–เบธเบŠเบญเบเบซเบฒ. เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เปเบฅเป‰เบงเบ™เบตเป‰เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰
เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป€เบกเบทเปˆเบญเบชเป‰เบฒเบ‡เบงเบฑเบ”เบ–เบธเบŠเบญเบเบซเบฒ เบซเบผเบทเป€เบกเบทเปˆเบญเบ”เบณเป€เบ™เบตเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบก.

void SwishSetSearchLimit( SW_SEARCH srch, char *propertyname, char *low, char *hi);
เบเปเบฒเบ™เบปเบ”เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒ. เบชเบฐเบซเบ™เบญเบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆเบ”เบฝเบงเบเบฑเบ™เบเบฑเบš -L
เบชเบฐเบซเบผเบฑเบšเป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡. เบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเบเปเบฒเบ™เบปเบ”เบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡เบกเบนเบ™เบ„เปˆเบฒเบŠเบฑเบšเบชเบดเบ™เบ—เบตเปˆเบœเบปเบ™เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒ
เบ•เป‰เบญเบ‡เบขเบนเปˆเปƒเบ™. เป€เบˆเบปเป‰เบฒเบญเบฒเบ”เบˆเบฐเป‚เบ—เบซเบฒ SwishSetSearchLimit() เบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡เบ„เบฑเป‰เบ‡เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบŠเบฑเบšเบชเบดเบ™
(เปเบ•เปˆเบชเบฒเบกเบฒเบ”เบเปเบฒเบ™เบปเบ”เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบซเบผเบฒเบเบเบงเปˆเบฒเบซเบ™เบถเปˆเบ‡เบŠเบฑเบšเบชเบดเบ™เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบง).

เบšเปเปˆเป€เบซเบกเบทเบญเบ™เบเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบญเบทเปˆเบ™เป†เปƒเบ™เบงเบฑเบ”เบ–เบธเบŠเบญเบเบซเบฒ, เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเปƒเบ™เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒ
เบงเบฑเบ”เบ–เบธเบ—เบตเปˆเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เป‚เบ—เบซเบฒ SwishResetSearchLimit() เป€เบžเบทเปˆเบญเบ›เปˆเบฝเบ™ เบซเบผเบทเบฅเบถเบšเบฅเป‰เบฒเบ‡เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ‚เบตเบ”เบˆเบณเบเบฑเบ”.

void SwishResetSearchLimit( SW_SEARCH srch );
เบ›เบฑเบšโ€‹เบ‚เปเป‰โ€‹เบˆเปเบฒโ€‹เบเบฑเบ”โ€‹เบ—เบตเปˆโ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เป„เบงเป‰โ€‹เปƒเบ™โ€‹เบงเบฑเบ”โ€‹เบ–เบธโ€‹เบเบฒเบ™โ€‹เบŠเบญเบโ€‹เบซเบฒโ€‹เบ—เบตเปˆโ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เป„เบงเป‰โ€‹เป‚เบ”เบโ€‹ SwishSetSearchLimit().

void Free_Search_Object( SW_SEARCH srch );
เบ›เบปเบ”เบ›เปˆเบญเบเบงเบฑเบ”เบ–เบธเบŠเบญเบเบซเบฒ. เบญเบฑเบ™เบ™เบตเป‰เบ•เป‰เบญเบ‡เบ–เบทเบเป€เบญเบตเป‰เบ™เป€เบกเบทเปˆเบญเป€เบฎเบฑเบ”เบเบฑเบšเบงเบฑเบ”เบ–เบธเบŠเบญเบเบซเบฒ.
เป‚เบ”เบโ€‹เบ—เบปเปˆเบงโ€‹เป„เบ›โ€‹เปเบฅเป‰เบงโ€‹, เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบ„เบทเบ™โ€‹เปƒเบซเบกเปˆโ€‹เบงเบฑเบ”โ€‹เบ–เบธโ€‹เบเบฒเบ™โ€‹เบ„เบปเป‰เบ™โ€‹เบซเบฒโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบชเบญเบšโ€‹เบ–เบฒเบกโ€‹เบซเบผเบฒเบโ€‹เบชเบฐโ€‹เบ™เบฑเป‰เบ™โ€‹เป‚เบ”เบโ€‹เบ›เบปเบโ€‹เบเบฐโ€‹เบ•เบดโ€‹เบ—เปˆเบฒเบ™โ€‹เบˆเบฐโ€‹
เป‚เบ—เบซเบฒเบชเบดเบ”เบ™เบตเป‰เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเป‚เบ—เบซเบฒ SwishClose().

เป€เบˆเบปเป‰เบฒเบญเบฒเบ”เบˆเบฐเบ›เปˆเบญเบเบงเบฑเบ”เบ–เบธเบŠเบญเบเบซเบฒเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ›เปˆเบญเบ เปเบฅเบฐเบชเป‰เบฒเบ‡เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš.

SW_RESULTS SwishExecute( SW_SEARCH เบ„เบปเป‰เบ™เบซเบฒ, const char *query);
เบ„เบปเป‰เบ™เบซเบฒเบ”เบฑเบ”เบชเบฐเบ™เบตเบซเบผเบทเบ”เบฑเบ”เบชเบฐเบ™เบตเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเปƒเบ™เบงเบฑเบ”เบ–เบธเบ„เบปเป‰เบ™เบซเบฒ. เบชเบปเปˆเบ‡เบ„เบทเบ™ เบ
เบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš. เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบชเปเบฒเบฅเบฑเบšเบซเบ™เป‰เบฒเบ—เบตเปˆเปƒเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš
เบงเบฑเบ”เบ–เบธ

เบ—เปˆเบฒเบ™เบ„เบงเบ™เบเบงเบ”เป€เบšเบดเปˆเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบขเบนเปˆเบชเบฐเป€เปเบตเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เป‚เบ— SwishExecute().

SW_RESULTS SwishQuery(SW_HANDLE, const char *words );
เบ™เบตเป‰โ€‹เปเบกเปˆเบ™โ€‹เบเบฒเบ™โ€‹เบ—เปเบฒโ€‹เบ‡เบฒเบ™โ€‹เบเบฒเบ™โ€‹เบ•เบฑเบ”โ€‹เบชเบฑเป‰เบ™โ€‹เบ—เบตเปˆโ€‹เบ‚เป‰เบฒเบกโ€‹เบเบฒเบ™โ€‹เบชเป‰เบฒเบ‡โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบ„เบปเป‰เบ™โ€‹เบซเบฒ (เบ—เบตเปˆโ€‹เบˆเบดเบ‡โ€‹เปเบฅเป‰เบงโ€‹,
bypasses เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเบˆเบฐเบชเป‰เบฒเบ‡เปเบฅเบฐเบ›เบปเบ”เบ›เปˆเบญเบเบงเบฑเบ”เบ–เบธเบŠเบญเบเบซเบฒ). เบ™เบตเป‰เบžเบฝเบ‡เปเบ•เปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบœเปˆเบฒเบ™เปƒเบ™ a
string query; เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบŠเบญเบเบซเบฒเบญเบทเปˆเบ™เป†เบšเปเปˆเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ•เบฑเป‰เบ‡. เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบกเปˆเบ™เบˆเบฑเบ”เบฎเบฝเบ‡เบ•เบฒเบกเบฅเปเบฒเบ”เบฑเบš.

เบ—เปˆเบฒเบ™เบ„เบงเบ™เบเบงเบ”เป€เบšเบดเปˆเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบขเบนเปˆเบชเบฐเป€เปเบตเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เป‚เบ— SwishQuery().

เบญเปˆเบฒเบ™ เบœเบปเบ™เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒ

int SwishHits( SW_RESULTS เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš );
เบ•เบญเบšเบˆเปเบฒเบ™เบงเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปƒเบ™เบงเบฑเบ”เบ–เบธเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš.

SWISH_HEADER_VALUE SwishParsedWords( SW_RESULTS, const char *index_name );
เบชเบปเปˆเบ‡เบ„เบทเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเป‚เบ—เป€เบ„เบ™. เบ„เปเบฒเบชเบฑเบšเบ•เปˆเบฒเบ‡เป†เปเบกเปˆเบ™เปเบšเปˆเบ‡เบญเบญเบเป‚เบ”เบ WordCharacters เปเบฅเบฐเบ„เปเบฒเบขเบธเบ”เปเบกเปˆเบ™
เป€เบญเบปเบฒเบญเบญเบ. เบ„เบณเบชเบฑเบšเบ—เบตเปˆเปเบเบเบญเบญเบเปเบกเปˆเบ™เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบชเบณเบฅเบฑเบšเบเบฒเบ™เป€เบ™เบฑเป‰เบ™เบ„เบณเบŠเบญเบเบซเบฒเปƒเบ™เป‚เบ›เบฃเปเบเบฃเบกเบ‚เบญเบ‡เบ—เปˆเบฒเบ™.

"index_name" เปเบกเปˆเบ™เบŠเบทเปˆเบ‚เบญเบ‡เบ”เบฑเบ”เบŠเบฐเบ™เบตเบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เบขเบนเปˆเปƒเบ™ SwishInit() เป‚เบ—เบŸเบฑเบ‡เบŠเบฑเบ™.

เปƒเบซเป‰เบœเบปเบ™เป€เบ›เบฑเบ™เบชเบฐเบเบธเบ™ SWISH_HEADER_VALUE เบ‚เบญเบ‡เบ›เบฐเป€เบžเบ” SWISH_LIST เป€เบŠเบดเปˆเบ‡เป€เบ›เบฑเบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™ **. เป€เบšเบดเปˆเบ‡
src/libtest.c เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ strings เปƒเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ™เบตเป‰, เปเบ•เปˆเป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เปเบฅเป‰เบงเบ—เปˆเบฒเบ™
เบญเบฒเบ”เบˆเบฐเป‚เบเบ™เบ™เบตเป‰เป€เบ›เบฑเบ™ (char **).

SWISH_HEADER_VALUE SwishRemovedStopwords( SW_RESULTS, const char *index_name );
เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบ„เบณเบขเบธเบ”เบ—เบตเปˆเบ–เบญเบ”เบญเบญเบเบˆเบฒเบเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ‚เปเป‰เบกเบนเบ™เป€เบ‚เบปเป‰เบฒ.

เปƒเบซเป‰เบœเบปเบ™เป€เบ›เบฑเบ™เบชเบฐเบเบธเบ™ SWISH_HEADER_VALUE เบ‚เบญเบ‡เบ›เบฐเป€เบžเบ” SWISH_LIST เป€เบŠเบดเปˆเบ‡เป€เบ›เบฑเบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™ **. เป€เบšเบดเปˆเบ‡
src/libtest.c เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ strings เปƒเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ™เบตเป‰, เปเบ•เปˆเป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เปเบฅเป‰เบงเบ—เปˆเบฒเบ™
เบญเบฒเบ”เบˆเบฐเป‚เบเบ™เบ™เบตเป‰เป€เบ›เบฑเบ™ (char **).

int SwishSeekResult( SW_RESULTS, เบ•เบณเปเปœเปˆเบ‡ int );
เบเบณเบ™เบปเบ”เบ•เบณเปเปœเปˆเบ‡เบชเบฐเปเบซเบงเบ‡เบซเบฒเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เปƒเบ™เบฅเบฒเบเบเบฒเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš, เป‚เบ”เบเบกเบตเบ•เบณเปเปœเปˆเบ‡เบชเบนเบ™เป€เบ›เบฑเบ™
เบšเบฑเบ™เบ—เบถเบเบ—เปเบฒเบญเบดเบ” (เบšเปเปˆเบ„เบทเบเบฑเบš -b เบšเปˆเบญเบ™เบ—เบตเปˆเบซเบ™เบถเปˆเบ‡เปเบกเปˆเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ—เปเบฒเบญเบดเบ”).

เบชเบปเปˆเบ‡เบ„เบทเบ™เบ•เปเบฒเปเปœเปˆเบ‡ เบซเบผเบทเบ•เบปเบงเป€เบฅเบเบฅเบปเบšเบเป‰เบญเบ™เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”.

SW_RESULT SwishNextResult( SW_RESULTS );
เบ•เบญเบšเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ•เปเปˆเป„เบ›, เบซเบผเบท NULL เบ–เป‰เบฒเบšเปเปˆเบกเบตเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเป€เบžเบตเปˆเบกเป€เบ•เบตเบก.

เบˆเบธเบ”โ€‹เบ›เบฐโ€‹เบชเบปเบ‡โ€‹เบ—เบตเปˆโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฑเบšโ€‹เบ„เบทเบ™โ€‹เบกเบฒโ€‹เบšเปเปˆโ€‹เบˆเปเบฒโ€‹เป€เบ›เบฑเบ™โ€‹เบ•เป‰เบญเบ‡โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ›เบปเบ”โ€‹เบ›เปˆเบญเบโ€‹เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰ (เบšเปเปˆโ€‹เป€เบซเบกเบทเบญเบ™โ€‹เบเบฑเบš swish เป„เบ”เป‰โ€‹
handle, search object, and results object).

const char *SwishResultPropertyStr(SW_RESULT, char *propertyname);
เบŸเบฑเบ‡เบŠเบฑเบ™เบ™เบตเป‰เบชเปˆเบงเบ™เปƒเบซเบเปˆเปเบกเปˆเบ™เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเป‰เบญเบ™เบงเปˆเบฒเบกเบฑเบ™เบชเบปเปˆเบ‡เบ„เบทเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ—เบตเปˆเปเบ›เบเบ›เบฐเบซเบผเบฒเบ”เปƒเบ™เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”.

เบเบปเบเป€เบฅเบตเบเบซเบฒเบเบ–เบทเบเป€เบญเบตเป‰เบ™เบ”เป‰เบงเบเบงเบฑเบ”เบ–เบธ NULL SW_RESULT

เบ•เบญเบšเบ„เปˆเบฒเบชเบฐเบ•เบฃเบดเบ‡เบ‚เบญเบ‡เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ—เบตเปˆเบฅเบฐเบšเบธ.

เบ•เบญเบšเบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ "" เบ–เป‰เบฒเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบšเปเปˆเบกเบตเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ—เบตเปˆเบฅเบฐเบšเบธ
เบกเบญเบšเบซเบกเบฒเบ.

เบ•เบญเบšเบชเบฐเบ•เบฃเบดเบ‡ "(null)" เปƒเบ™เบŠเบทเปˆเบŠเบฑเบšเบชเบดเบ™เบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡ (เป€เบŠเบฑเปˆเบ™: เบŠเบทเปˆเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบšเปเปˆเปเบกเปˆเบ™
เบเปเบฒเบ™เบปเบ”เบขเบนเปˆเปƒเบ™เบ”เบฑเบ”เบŠเบฐเบ™เบต) เปเบฅเบฐเบเปเบฒเบ™เบปเบ”เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ” (เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰) เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เบŠเบฑเบšเบชเบดเบ™เบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡
เบŠเบทเปˆ

เบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ–เบทเบเบ›เบปเบ”เบ›เปˆเบญเบ, เปเบ•เปˆเปƒเบŠเป‰เป„เบ”เป‰เบเบฑเบšเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™
เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบชเบฐเบ•เบฃเบดเบ‡, เบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบ„เบฑเบ”เบฅเบญเบเบกเบฑเบ™เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡.

เบงเบฑเบ™เบ—เบตเบ–เบทเบเบˆเบฑเบ”เบฎเบนเบšเปเบšเบšเป‚เบ”เบเปƒเบŠเป‰เบชเบฐเบ•เบฃเบดเบ‡เบฎเบนเบšเปเบšเบšเบ—เบตเปˆเบซเบฒเบเบฒเบ: "%Y-%m-%d %H:%M:%S" เปƒเบ™
เป€เบงเบฅเบฒเบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™.

unsigned long SwishResultPropertyULong(SW_RESULT r, char *propertyname);
เปƒเบซเป‰เบœเบปเบ™เป€เบ›เบฑเบ™เบŠเบฑเบšเบชเบดเบ™เบ•เบปเบงเป€เบฅเบเป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบเบฒเบงเบ—เบตเปˆเบšเปเปˆเบกเบตเบฅเบฒเบเป€เบŠเบฑเบ™. เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ•เบปเบงเป€เบฅเบเปเบกเปˆเบ™เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบ—เบฑเบ‡เบชเบญเบ‡
PropertyNamesNumeric เปเบฅเบฐ PropertyNamesDate เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”. เบงเบฑเบ™เบ—เบตเบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™เป€เบ›เบฑเบ™
unix timestamp เบ•เบฒเบกเบเบฒเบ™เบฅเบฒเบเบ‡เบฒเบ™เป‚เบ”เบเบฅเบฐเบšเบปเบšเป€เบกเบทเปˆเบญเบ”เบฑเบ”เบชเบฐเบ™เบตเบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™.

Swish-e เบˆเบฐเบเบปเบเป€เบฅเบตเบเบซเบฒเบเบ–เบทเบเป€เบญเบตเป‰เบ™เบ”เป‰เบงเบเบงเบฑเบ”เบ–เบธ NULL SW_RESULT. เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™ SW_RESULT
object swish-e เบšเปเปˆเบชเบฒเบกเบฒเบ”เบ•เบฑเป‰เบ‡เบฅเบฐเบซเบฑเบ”เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เปƒเบ”เป†.

เบ”เป‰เบงเบเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบชเบปเปˆเบ‡เบ„เบทเบ™ UMAX_LONG. เบ™เบตเป‰เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เปƒเบ™ limits.h. เบเบงเบ”เบชเบญเบš SwishError()
(เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰) เบชเปเบฒเบฅเบฑเบšเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”.

If SwishError() เบเบฑเบšเบ„เบทเบ™ false (เบชเบนเบ™) เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ™เบตเป‰เบšเปเปˆเป„เบ”เป‰
เบกเบตเบ‚เปเป‰เบกเบนเบ™เปƒเบ”เป†เบชเปเบฒเบฅเบฑเบšเบŠเบฑเบšเบชเบดเบ™เบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰.

If SwishError() เปƒเบซเป‰เบœเบปเบ™เป€เบ›เบฑเบ™เบˆเบดเบ‡ (เบšเปเปˆเปเบกเปˆเบ™เบชเบนเบ™) เบˆเบฒเบเบ™เบฑเป‰เบ™เบŠเบทเปˆเบŠเบฑเบšเบชเบดเบ™เบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰เปเบกเปˆเบ™
เบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡, เบซเบผเบทเบŠเบฑเบšเบชเบดเบ™เบ—เบตเปˆเบฎเป‰เบญเบ‡เบ‚เปเบšเปเปˆเปเบกเปˆเบ™เบ•เบปเบงเป€เบฅเบ (เบซเบผเบทเบงเบฑเบ™เบ—เบต) เบŠเบฑเบšเบชเบดเบ™ (เป€เบŠเบฑเปˆเบ™: เบกเบฑเบ™เป€เบ›เบฑเบ™
เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบชเบฐเบ•เบฃเบดเบ‡).

เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เบ”เบถเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบชเบฐเป€เบžเบฒเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆ SwishError() เปเบกเปˆเบ™เบ„เบงเบฒเบกเบˆเบดเบ‡.

PropValue *getResultPropValue (SW_RESULT r, char *propertyname, int ID );
เบ™เบตเป‰เปเบกเปˆเบ™เบŸเบฑเบ‡เบŠเบฑเบ™เบฅเบฐเบ”เบฑเบšเบ•เปเปˆเบฒเป€เบžเบทเปˆเบญเบ”เบถเบ‡เบŠเบฑเบšเบชเบดเบ™เป‚เบ”เบเบšเปเปˆเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบ›เบฐเป€เบžเบ”. เบ™เบตเป‰เปเบกเปˆเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰
เบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”.

Swish-e เบˆเบฐเบเบปเบเป€เบฅเบตเบเบซเบฒเบเบ–เบทเบเป€เบญเบตเป‰เบ™เบ”เป‰เบงเบเบงเบฑเบ”เบ–เบธ NULL SW_RESULT. เบŠเบทเปˆเบŠเบฑเบšเบชเบดเบ™เปเบกเปˆเบ™เบŠเบทเปˆ
เบ‚เบญเบ‡เบŠเบฑเบšเบชเบดเบ™. ID เปเบกเปˆเบ™เปเบฒเบเป€เบฅเบ id เบ‚เบญเบ‡เบŠเบฑเบšเบชเบดเบ™, เบ–เป‰เบฒเบฎเบนเป‰เบˆเบฑเบ. ID เปเบกเปˆเบ™เบšเปเปˆเบ›เบปเบเบเบฐเบ•เบด
เปƒเบŠเป‰เปƒเบ™ API, เปเบ•เปˆเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ‚เบญเบ‡เบกเบฑเบ™เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบŠเบญเบเบซเบฒ ID เบŠเบฑเบšเบชเบดเบ™เบชเปเบฒเบฅเบฑเบšเบ—เบธเบเป†
เบœเบปเบ™โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบชเบฐโ€‹เปเบ”เบ‡โ€‹เบญเบญเบโ€‹.

เบเบฒเบ™เบเบฑเบšเบ„เบทเบ™ PropValue เปเบกเปˆเบ™เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ—เบตเปˆเบกเบตเบ—เบธเบ‡เป€เบžเบทเปˆเบญเบŠเบตเป‰เบšเบญเบเบ›เบฐเป€เบžเบ”, เปเบฅเบฐ a
เบชเบฐเบซเบฐเบžเบฑเบ™เบ—เบตเปˆเบ–เบทเบกเบนเบ™เบ„เปˆเบฒเบŠเบฑเบšเบชเบดเบ™. เบžเบงเบเป€เบ‚เบปเบฒเบ—เบธเบ‡เปเบฅเบฐเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เปเบกเปˆเบ™เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เปƒเบ™
swish-เป€เบญเบต

เบŠเบฑเบšเบชเบดเบ™เบ•เป‰เบญเบ‡เบ–เบทเบเบชเบณเป€เบ™เบปเบฒเบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡ เปเบฅเบฐเบ„เปˆเบฒ "PropValue" เบ—เบตเปˆเบชเบปเปˆเบ‡เบกเบฒเบˆเบฐเบ•เป‰เบญเบ‡เบ–เบทเบเบ›เบปเบ”เบ›เปˆเบญเบ
เป‚เบ”เบเบเบฒเบ™เป‚เบ—เบซเบฒ freeResultPropValue() เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบฎเบปเปˆเบงเป„เบซเบผเบ‚เบญเบ‡เบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเปเบฒ.

เป€เบกเบทเปˆเบญเป€เบเบตเบ”เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบเบฑเบšเบ„เบทเบ™เบกเบฒ NULL. เบเบงเบ”เบชเบญเบš SwishError() (เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰) เบชเปเบฒเบฅเบฑเบšเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”.

เบ–เป‰เบฒเบเบฑเบšเบ„เบทเบ™ NULL เปเบ•เปˆ SwishError() เบเบฑเบšเบ„เบทเบ™ false (เบชเบนเบ™) เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบ™เบตเป‰
เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบšเปเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™เปƒเบ”เป†เบชเปเบฒเบฅเบฑเบšเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ—เบตเปˆเบฅเบฐเบšเบธ.

If SwishError() เปƒเบซเป‰เบœเบปเบ™เป€เบ›เบฑเบ™เบˆเบดเบ‡ (เบšเปเปˆเปเบกเปˆเบ™เบชเบนเบ™) เบˆเบฒเบเบ™เบฑเป‰เบ™เบŠเบทเปˆเบŠเบฑเบšเบชเบดเบ™เบ—เบตเปˆเบฅเบฐเบšเบธเบ™เบฑเป‰เบ™เบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡
(ie เบšเปเปˆเป„เบ”เป‰เบเปเบฒเบ™เบปเบ”เบชเปเบฒเบฅเบฑเบšเบ”เบฑเบ”เบŠเบฐเบ™เบต).

เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เบ”เบถเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบชเบฐเป€เบžเบฒเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆ SwishError() เปเบกเปˆเบ™เบ„เบงเบฒเบกเบˆเบดเบ‡.

เป€เบšเบดเปˆเบ‡ perl/API.xs เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบŸเบฑเบ‡เบŠเบฑเบ™เบ™เบตเป‰.

void freeResultPropValue(void)
เบ›เบปเบ”เบ›เปˆเบญเบ "PropValue" เบเบฑเบšเบ„เบทเบ™เบกเบฒเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เป‚เบ— getResultPropValue().

void Free_Results_Object( SW_RESULTS เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš );
เบ›เบปเบ”เบ›เปˆเบญเบเบงเบฑเบ”เบ–เบธเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš (เบ›เบปเบ”เบ›เปˆเบญเบเบŠเบธเบ”เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš). เบญเบฑเบ™เบ™เบตเป‰เบ•เป‰เบญเบ‡เป€เบญเบตเป‰เบ™เบงเปˆเบฒเป€เบกเบทเปˆเบญเป€เบฎเบฑเบ”เปเบฅเป‰เบง
เบญเปˆเบฒเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบฅเบฐเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเป‚เบ—เบซเบฒ SwishClose().

เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ เป„เบ”เป‰ เบ”เบฑเบ”เบŠเบฐเบ™เบต Header เบกเบนเบ™เบ„เปˆเบฒ

เปเบ•เปˆเบฅเบฐเป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบกเบตเบ„เปˆเบฒเบชเปˆเบงเบ™เบซเบปเบงเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบ—เบตเปˆเบญเบฐเบ—เบดเบšเบฒเบเบ”เบฑเบ”เบŠเบฐเบ™เบต. เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰
เปƒเบซเป‰เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰. เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบชเปˆเบงเบ™โ€‹เบซเบปเบงโ€‹เปเบกเปˆเบ™โ€‹เป„เบ”เป‰โ€‹เบเบฑเบšโ€‹เบ„เบทเบ™โ€‹เบกเบฒโ€‹เป€เบ›เบฑเบ™โ€‹เบชเบฐโ€‹เบซเบฐโ€‹เบžเบฒเบš SWISH_HEADER_VALUE,
เปเบฅเบฐเบ•เบปเบงเบŠเบตเป‰เป„เบ›เบซเบฒ SWISH_HEADER_TYPE เบ–เบทเบเบชเบปเปˆเบ‡เป€เบ‚เบปเป‰เบฒ เปเบฅเบฐเบ„เปˆเบฒเบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™เบกเบฒเบชเบฐเปเบ”เบ‡เป€เบ–เบดเบ‡
เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™. เป€เบšเบดเปˆเบ‡ src/libtest.c เปเบฅเบฐ perl/API.xs เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡.

const char **SwishHeaderNames(SW_HANDLE );
เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบŠเบทเปˆเบชเปˆเบงเบ™เบซเบปเบงเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰. เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ™เบตเป‰เปเบกเปˆเบ™เบ„เบทเบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบ—เบฑเบ‡เบซเบกเบปเบ”
เบชเบฐเบšเบฑเบšเบ—เบตเปˆเปƒเบซเป‰เป„เบงเป‰เบ‚เบญเบ‡ Swish-e. เบกเบฑเบ™เบชเบฐเบซเบ™เบญเบ‡เบงเบดเบ—เบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบชเปˆเบงเบ™เบซเบปเบงเบ—เบฑเบ‡เบซเบกเบปเบ”
เป‚เบ”เบโ€‹เบšเปเปˆโ€‹เบˆเปเบฒโ€‹เป€เบ›เบฑเบ™โ€‹เบ•เป‰เบญเบ‡โ€‹เบฅเบฒเบโ€‹เบŠเบทเปˆโ€‹เปƒเบซเป‰โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบขเบนเปˆโ€‹เปƒเบ™โ€‹เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹.

const char **SwishIndexNames( SW_HANDLE );
เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบ—เบตเปˆเป€เบ›เบตเบ”. เบ™เบตเป‰เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰
เปƒเบ™ SwishInit() เป‚เบ—. เบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบชเบฐเป€เบžเบฒเบฐ
เบ„เปˆเบฒเบชเปˆเบงเบ™เบซเบปเบงเบ‚เบญเบ‡เบ”เบฑเบ”เบŠเบฐเบ™เบต.

SWISH_HEADER_VALUE SwishHeaderValue( SW_HANDLE, const char *index_name, const char
*cur_header, SWISH_HEADER_TYPE *เบ›เบฐเป€เบžเบ” );
เบ”เบถเบ‡เป€เบญเบปเบฒเบ„เปˆเบฒเบชเปˆเบงเบ™เบซเบปเบงเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ”เบฑเบ”เบŠเบฐเบ™เบตเบ—เบตเปˆเปƒเบซเป‰, เปเบฅเบฐเบŠเบทเปˆเบชเปˆเบงเบ™เบซเบปเบง. เบŠเบธเบ”เบเบฒเบ™เป‚เบ—
"เบ›เบฐเป€เบžเบ”" เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบกเบนเบ™เบ„เปˆเบฒเบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™.

เป€เบšเบดเปˆเบ‡ src/libtest.c เปเบฅเบฐ perl/API.xs เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡.

SWISH_HEADER_VALUE SwishResultIndexValue( SW_RESULT, const char *name, SWISH_HEADER_TYPE
* เบ›เบฐโ€‹เป€เบžเบ”โ€‹)โ€‹;
เบ™เบตเป‰เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบท SwishHeaderValue() เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡, เปเบ•เปˆเปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบชเบฐเบซเบ™เบญเบ‡เบŠเบทเปˆเป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเปเบฅเบฐ
เบˆเบฑเบš swish, เบชเบฐเบซเบ™เบญเบ‡เบงเบฑเบ”เบ–เบธเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบฅเบฐเบกเบนเบ™เบ„เปˆเบฒ header เปเบกเปˆเบ™ fetched เบˆเบฒเบ
เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบ‚เบญเบ‡เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš.

เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” Meta เบ‚เปเป‰เบกเบนเบ™

เบ™เบญเบเป€เบซเบ™เบทเบญเป„เบ›เบˆเบฒเบเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เบฅเปˆเบงเบ‡เบซเบ™เป‰เบฒ, เบ—เปˆเบฒเบ™เบกเบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบˆเบฐเป€เบžเบตเปˆเบก
เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” "meta" เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบ—เบตเปˆเบˆเบฐเบ–เบทเบเบ”เบฑเบ”เบชเบฐเบ™เบตเปเบฅเบฐ/เบซเบผเบทเป€เบžเบตเปˆเบกเปƒเบชเปˆเบฅเบฒเบเบŠเบทเปˆเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™
เบเบฑเบšเปเบ•เปˆเบฅเบฐเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš. เบ›เบถเบเบชเบฒเบเบฑเบšเบžเบฒเบเบชเปˆเบงเบ™เบ•เปˆเบฒเบ‡เป†เปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ MetaNames เปเบฅเบฐ PropteryNames เปƒเบ™
เป„เบŸเบฅเปŒ CONFIGURATION เบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบเบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰.

เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เปเป‰เบกเบนเบ™ meta เบ—เบตเปˆเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เบ”เบฑเบ”เบŠเบฐเบ™เบต. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ
เบเปเบฒเบ™เบปเบ”เบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™ meta/property เปƒเบ”เบกเบตเบขเบนเปˆเบชเปเบฒเบฅเบฑเบšเบ”เบฑเบ”เบชเบฐเบ™เบตเบฅเบงเบกเบ—เบฑเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”เบเปˆเบญเบ™.
เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”. เป€เบšเบดเปˆเบ‡ libtest.c เป€เบ›เบฑเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡.

SWISH_META_LIST SwishMetaList( SW_HANDLE, const char *index_name );
เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆ meta entries เบชเปเบฒเบฅเบฑเบšเป„เบŸเบฅเปŒเบ”เบฑเบ”เบŠเบฐเบ™เบตเบ—เบตเปˆเปƒเบซเป‰เบกเบฒเป€เบ›เบฑเบ™ array null-terminated
เบ‚เบญเบ‡เบงเบฑเบ”เบ–เบธ SW_META. เปƒเบŠเป‰เบŸเบฑเบ‡เบŠเบฑเบ™เบฅเบธเปˆเบกเบ™เบตเป‰เป€เบžเบทเปˆเบญเบชเบฐเบเบฑเบ”เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบชเบฐเป€เบžเบฒเบฐเบˆเบฒเบ
เป‚เบ„เบ‡เบชเป‰เบฒเบ‡ SW_META. Metas เปเบกเปˆเบ™เปเบ•เบเบ•เปˆเบฒเบ‡เบˆเบฒเบเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”.

SWISH_META_LIST SwishPropertyList(SW_HANDLE, const char *index_name );
เบŸเบฑเบ‡เบŠเบฑเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบ„เบทเบเบฑเบ™เบเบฑเบš SwishMetaList() เปเบ•เปˆเบกเบฑเบ™เบชเบปเปˆเบ‡เบ„เบทเบ™ array เบ‚เบญเบ‡เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เป€เบ›เบฑเบ™
เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบกเบเบฑเบšเบงเบฑเบ”เบ–เบธ meta. เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบŠเบฑเบšเบชเบดเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบชเบฐเบเบฑเบ”เบญเบญเบเบกเบฒเปƒเบ™เปเบšเบšเบ”เบฝเบงเบเบฑเบ™เบเบฑเบš meta
เบงเบฑเบ”เบ–เบธเบ—เบตเปˆเปƒเบŠเป‰เบซเบ™เป‰เบฒเบ—เบตเปˆเบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰.

SWISH_META_LIST SwishResultMetaList( SW_RESULT );
เบ™เบตเป‰เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบท SwishMetaList() เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เปเบ•เปˆเบเปเบฒเบ™เบปเบ”เบ”เบฑเบ”เบŠเบฐเบ™เบตเบ—เบตเปˆเบˆเบฐเบ™เปเบฒเปƒเบŠเป‰เบˆเบฒเบเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš
เบงเบฑเบ”เบ–เบธ

SWISH_META_LIST SwishResultPropertyList( SW_RESULT );
เบ™เบตเป‰เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบท SwishPropertyList() เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เปเบ•เปˆเบกเบฑเบ SwishResultMetaList() เปƒเบŠเป‰เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš
object เปเบ—เบ™เบŠเบทเปˆเบ”เบฑเบ”เบชเบฐเบ™เบต.

const char *SwishMetaName( SW_META );
เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเบฑเบ”เบ–เบธ SW_META เบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™เป‚เบ”เบเบญเบฑเบ™เปƒเบ”เบญเบฑเบ™เปœเบถเปˆเบ‡เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡, เบŸเบฑเบ‡เบŠเบฑเบ™เบ™เบตเป‰เบˆเบฐเบชเบปเปˆเบ‡เบ„เบทเบ™
เบŠเบทเปˆ meta/property. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เบŠเบทเปˆเบ™เบตเป‰เป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบกเบนเบ™เบ„เปˆเบฒเบ‚เบญเบ‡เบŠเบฑเบšเบชเบดเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปƒเบซเป‰
เบ”เบฑเปˆเบ‡เบ—เบตเปˆเป„เบ”เป‰เบญเบฐเบ—เบดเบšเบฒเบเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡.

int SwishMetaType( SW_META );
เป€เบญเบปเบฒเบ›เบฐเป€เบžเบ”เบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบš meta/property เบ—เบตเปˆเปƒเบซเป‰. เบ›เบฐเป€เบžเบ”เบ—เบตเปˆเบฎเบนเป‰เบˆเบฑเบเปเบกเปˆเบ™เบฅเบฐเบšเบธเป„เบงเป‰เปƒเบ™ swish-eh

SwishMetaID( SW_META );
เป€เบญเบปเบฒเป€เบฅเบ ID เบžเบฒเบเปƒเบ™เบชเปเบฒเบฅเบฑเบš meta/property เบ—เบตเปˆเปƒเบซเป‰. ids เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฑเบเบ•เปเปˆ
เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเปเบ•เปˆเบšเปเปˆเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฑเบเบ•เปเปˆเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš.

เบเบฒเบ™เบเบงเบ”เบชเบญเบš เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”

เบ—เปˆเบฒเบ™เบ„เบงเบ™เบเบงเบ”เป€เบšเบดเปˆเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เป‚เบ—เบ—เบฑเบ‡เบซเบกเบปเบ”. เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบชเบธเบ”เบ—เป‰เบฒเบเบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เบ•เบปเบงเบˆเบฑเบš swish
เบงเบฑเบ”เบ–เบธ, เปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบˆเบปเบ™เบเปˆเบงเบฒเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ•เปเปˆเป„เบ› (เป€เบŠเบดเปˆเบ‡เบ›เบฑเบšเบ„เปˆเบฒเบ—เบธเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”).

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เบšเบฒเบ‡เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบ–เบทเบเปเบฒเบเบงเปˆเบฒเป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ” "เบชเปเบฒเบ„เบฑเบ™". เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบ„เบงเบ™
เบ—เปเบฒเบฅเบฒเบ (เป‚เบ”เบเบเบฒเบ™เป‚เบ—เบซเบฒ SwishClose() function ) เบˆเบฑเบš โ€‹โ€‹swish เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™. เบ–เป‰เบฒเป€เบˆเบปเป‰เบฒเบกเบต
เบงเบฑเบ”เบ–เบธเบญเบทเปˆเบ™เปƒเบ™เบ‚เบญเบšเป€เบ‚เบ” (เป€เบŠเบฑเปˆเบ™: เบงเบฑเบ”เบ–เบธเบŠเบญเบเบซเบฒ เบซเบผเบทเบงเบฑเบ”เบ–เบธเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš) เบ—เปเบฒเบฅเบฒเบเบชเบดเปˆเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™เบเปˆเบญเบ™.

เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบซเบฑเบ™เป„เบ”เป‰เปƒเบ™ src/error.c. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ
เบ›เบฐเบเบญเบšเบกเบต:

เบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเป„เบ”เป‰
เบฎเบนเบšเปเบšเบšเป„เบŸเบฅเปŒเบ”เบฑเบ”เบŠเบฐเบ™เบตเบ—เบตเปˆเบšเปเปˆเบฎเบนเป‰เบˆเบฑเบ
เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ
เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบœเบดเบ”เบžเบฒเบ”
เบ”เป‰เบฒเบกเบซเบงเบดเบ”เบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡
เบงเบฑเบ”เบ–เบธเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡

int SwishError( SW_HANDLE );
เบญเบฑเบ™เบ™เบตเป‰เปƒเบซเป‰เบœเบปเบ™เป€เบ›เบฑเบ™เบˆเบดเบ‡เบ–เป‰เบฒเบกเบตเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”. เบกเบฑเบ™เบชเบปเปˆเบ‡เบ„เบทเบ™เบ•เบปเบงเป€เบฅเบเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”, เป€เบŠเบดเปˆเบ‡เปเบกเปˆเบ™
เบˆเบณเบ™เบงเบ™เป€เบ•เบฑเบกเปœเป‰เบญเบเบเบงเปˆเบฒเบชเบนเบ™เปƒเบ™เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”. เบ™เบตเป‰เบ„เบงเบ™เบˆเบฐเบ–เบทเบเบเบงเบ”เบชเบญเบšเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเป‚เบ—เบซเบฒเปƒเบ”เป†เบ‚เบญเบ‡
เบซเบ™เป‰เบฒเบ—เบตเปˆเบœเบดเบ”เบžเบฒเบ”เบญเบทเปˆเบ™เป†เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰.

const char *SwishErrorString( SW_HANDLE );
เบ™เบตเป‰เบชเบปเปˆเบ‡เบ„เบทเบ™เบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบเบ‚เปเป‰เบ„เบงเบฒเบกเบ—เบปเปˆเบงเป„เบ›เบ‚เบญเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™.

const char *SwishLastErrorMsg( SW_HANDLE );
เปƒเบ™เบšเบฒเบ‡เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰เบˆเบฐเบชเบปเปˆเบ‡เบ„เบทเบ™เบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบกเบตเบชเบฐเป€เบžเบฒเบฐเบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™. เบชเปเบฒเบฅเบฑเบš
เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, SwishErrorString() เบญเบฒเบ”เบˆเบฐเบเบฑเบšเบ„เบทเบ™ "เบŠเบทเปˆ metaname เบ—เบตเปˆเบšเปเปˆเบฎเบนเป‰", เปเบ•เปˆ SwishLastErrorMsg()
เบˆเบฐเบชเบปเปˆเบ‡เบ„เบทเบ™เบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบกเบตเบŠเบทเปˆเบ‚เบญเบ‡ metaname เบ—เบตเปˆเบšเปเปˆเบฎเบนเป‰เบˆเบฑเบ.

int SwishCriticalError( SW_HANDLE );
เปƒเบซเป‰โ€‹เบœเบปเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เบ–เบทเบโ€‹เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เป€เบ‡เบทเปˆเบญเบ™โ€‹เป„เบ‚โ€‹เบ„เบงเบฒเบกโ€‹เบœเบดเบ”โ€‹เบžเบฒเบ”โ€‹เบ›เบฐโ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เบ„เบงเบฒเบกโ€‹เบœเบดเบ”โ€‹เบžเบฒเบ”โ€‹เบ—เบตเปˆโ€‹เบชเปเบฒโ€‹เบ„เบฑเบ™โ€‹. เบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™
เบ—เปˆเบฒเบ™โ€‹เบ„เบงเบ™โ€‹เบˆเบฐโ€‹เบ›เปˆเบญเบโ€‹เปƒเบซเป‰โ€‹เป€เบ–เบดเบ‡โ€‹เบงเบฑเบ”โ€‹เบ–เบธโ€‹เบ›เบฐโ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹เปƒเบ”โ€‹เบซเบ™เบถเปˆเบ‡โ€‹เปเบฅเบฐโ€‹เป‚เบ—โ€‹เบซเบฒโ€‹ SwishClose() เป€เบ›เบฑเบ™ swish เบญเบฒเบ”เบˆเบฐเบขเบนเปˆเปƒเบ™
เบชเบฐเบ–เบฒเบ™เบฐเบšเปเปˆเปเบฑเป‰เบ™เบ„เบปเบ‡.

void SwishAbortLastError( SW_HANDLE );
เบ™เบตเป‰โ€‹เปเบกเปˆเบ™โ€‹เบซเบ™เป‰เบฒโ€‹เบ—เบตเปˆโ€‹เบชเบฐโ€‹เบ”เบงเบโ€‹เบชเบฐโ€‹เบšเบฒเบโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบˆเบฑเบ”โ€‹เบฎเบนเบšโ€‹เปเบšเบšโ€‹เปเบฅเบฐโ€‹เบžเบดเบกโ€‹เบ‚เปเป‰โ€‹เบ„เบงเบฒเบกโ€‹เบœเบดเบ”โ€‹เบžเบฒเบ”โ€‹เบชเบธเบ”โ€‹เบ—เป‰เบฒเบโ€‹, เปเบฅเบฐโ€‹
เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบปเบเป€เบฅเบตเบเป‚เบ„เบ‡เบเบฒเบ™.

void set_error_handle( FILE *เบšเปˆเบญเบ™ );
เบเปเบฒเบ™เบปเบ”เบšเปˆเบญเบ™เบ—เบตเปˆเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปเบฅเบฐเบ„เปเบฒเป€เบ•เบทเบญเบ™เบ–เบทเบเบžเบดเบกเบญเบญเบ (เป€เบกเบทเปˆเบญเบžเบดเบกเป‚เบ”เบ swish). เบชเปเบฒเบฅเบฑเบšเบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”
เป€เบซเบ”เบœเบปเบ™, เป€เบกเบทเปˆเบญ swish-e เบ—เปเบฒเบญเบดเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปเบฅเบฐเบเบฒเบ™เป€เบ•เบทเบญเบ™เป„เบžเบ–เบทเบเบชเบปเปˆเบ‡เป„เบ›เบซเบฒ stdout.

void SwishErrorsToStderr( void );
เบงเบดเบ—เบตเบ—เบตเปˆเบชเบฐเบ”เบงเบเบชเบฐเบšเบฒเบเบ—เบตเปˆเบˆเบฐเบชเบปเปˆเบ‡เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เป„เบ›เบซเบฒ stderr เปเบ—เบ™ stdout.

เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ” เบซเบ™เป‰เบฒเบ—เบตเปˆ

const char *SwishWordsByLetter(SWISH * sw, char *indexname, char c);
เบชเบปเปˆเบ‡เบ„เบทเบ™เบ—เบธเบเบ„เปเบฒเบ—เบตเปˆเบขเบนเปˆเปƒเบ™เบ”เบฑเบ”เบŠเบฐเบ™เบต "indexname" เบ—เบตเปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เบตเปˆเบœเปˆเบฒเบ™เป€เบ‚เบปเป‰เบฒ.
เบ•เบญเบš NULL เบ–เป‰เบฒเบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ”เบฑเบ”เบŠเบฐเบ™เบตเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡.

fuction เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบžเบฝเบ‡เปเบ•เปˆ 8-bit chars เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™.

char * SwsishStemWord( SW_HANDLE sw, char *in_word );
Deprecated

เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ›เปˆเบฝเบ™เบ„เปเบฒเป„เบ›เบซเบฒเบฅเปเบฒเบ‚เบญเบ‡เบกเบฑเบ™. เบกเบฑเบ™เปƒเบŠเป‰เบžเบฝเบ‡เปเบ•เปˆ Porter เบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบš
เบ•เบปเป‰เบ™.

SW_FUZZYWORD SwishFuzzyWord( SW_RESULT r, char *word );
เบฅเปเบฒ "เบ„เปเบฒ" เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบฎเบนเบšเปเบšเบš fuzzy เบ—เบตเปˆเป€เบฅเบทเบญเบเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ”เบฑเบ”เบชเบฐเบ™เบต.

เบฎเบนเบšเปเบšเบš fuzzy เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ”เบฑเบ”เบชเบฐเบ™เบตเปเบกเปˆเบ™เป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบต. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเปเบ•เปˆเบฅเบฐเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบกเปˆเบ™
เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบเบฑเบšเป„เบŸเบฅเปŒเบ”เบฑเบ”เบชเบฐเบ™เบตเบ—เบตเปˆเปƒเบซเป‰เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰ stemming เบ„เปเบฒเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบ”เบฑเบ”เบŠเบฐเบ™เบตเบ‚เบญเบ‡เบกเบฑเบ™
เบเบทเปˆเบ™.

เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเป€เบ™เบฑเป‰เบ™เปƒเบชเปˆเบ„เปเบฒเบ„เบปเป‰เบ™เบซเบฒเปƒเบ™เบšเบปเบ”เบชเบฐเบซเบผเบธเบšเป€เบญเบเบฐเบชเบฒเบ™, เป€เบŠเบดเปˆเบ‡
เบˆเบฐเบญเบตเบ‡เปƒเบชเปˆเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš.

เบงเบดเบ—เบตเบเบฒเบ™เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™. เบงเบฑเบ”เบ–เบธ SW_FUZZYWORD
เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบปเบ”เบ›เปˆเบญเบเป€เบกเบทเปˆเบญเป€เบฎเบฑเบ”เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบฎเบปเปˆเบงเป„เบซเบผเบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ.

const char **SwishFuzzyWordList( SW_FUZZYWORD fw );
เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆเบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบ–เบทเบเบเบปเบเป€เบฅเบตเบ null เบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™เป‚เบ”เบ stemmer. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”, เบ™เบตเป‰
เบˆเบฐเป€เบ›เบฑเบ™เบชเบฒเบเบ”เบฝเบง.

เบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡:

SW_FYZZYWORD fuzzy_word = SwishFuzzyWord(เบœเบปเบ™);
const char **word_list = SwishFuzzyWordList(fuzzy_word );
เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ ( *word_list )
{
printf("%s\n", *word_list );
word_list++;
}
SwishFuzzyWordFree( fuzzy_word );

เบ–เป‰เบฒ stemmer เบšเปเปˆเบ›เปˆเบฝเบ™เบชเบฐเบ•เบฃเบดเบ‡ (เบ•เบปเบงเบขเปˆเบฒเบ‡เบเบฒเบ™เบžเบฐเบเบฒเบเบฒเบก stem เบ•เบปเบงเป€เบฅเบ
data) เบฅเบฒเบเบเบฒเบ™ word_list เบˆเบฐเบกเบตเบ„เปเบฒเบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบš. เป€เบžเบทเปˆเบญเบšเบญเบเบงเปˆเบฒ stemmer เบ•เบปเบงเบˆเบดเบ‡เปเบฅเป‰เบง
stemmed เบ„เปเบฒเบเบงเบ”เป€เบšเบดเปˆเบ‡เบกเบนเบ™เบ„เปˆเบฒเบเบฑเบšเบ„เบทเบ™เบ”เป‰เบงเบ SwishFuzzyWordError().

int SwishFuzzyWordError( SW_FUZZYWORD fw );
เบ™เบตเป‰เบˆเบฐเบชเบปเปˆเบ‡เบ„เปˆเบฒเป€เบ›เบฑเบ™เบชเบนเบ™ เบ–เป‰เบฒเบเบฒเบ™เบ”เบณเป€เบ™เบตเบ™เบเบฒเบ™ stemming เบชเบณเป€เบฅเบฑเบ”, เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ เบกเบฑเบ™เบˆเบฐเบชเบปเปˆเบ‡เบ„เบทเบ™ a
เบ„เปˆเบฒเบ—เบตเปˆเบŠเบตเป‰เบšเบญเบเป€เบซเบ”เบœเบปเบ™เบ‚เบญเบ‡เบ„เปเบฒเบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบ•เบฑเป‰เบ‡เป„เบงเป‰. เบ„เปˆเบฒเบเบฑเบšเบ„เบทเบ™เปเบกเปˆเบ™เบ–เบทเบเบเปเบฒเบ™เบปเบ”
เปƒเบ™เป„เบŸเบฅเปŒ swish-e src/stemmer.h.

เบšเปเปˆเปเบกเปˆเบ™ stemmers เบ—เบฑเบ‡เบซเบกเบปเบ”เบเปเบฒเบ™เบปเบ”เบ„เปˆเบฒเบ™เบตเป‰เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡. เปเบ•เปˆเบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆ SwishFuzzyWordList() เบˆเบฐเบเบฑเบšเบ„เบทเบ™
เบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เป‚เบ”เบเบšเปเปˆเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบกเบนเบ™เบ„เปˆเบฒเบเบฑเบšเบ„เบทเบ™เบกเบฒ, เบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเบฒเบกเบฒเบ”เบฅเบฐเป€เบฅเบตเบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ™เบตเป‰.
เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบ‚เป‰เบญเบเป€เบฎเบฑเบ”.

int SwishFuzzyWordCount( SW_FUZZYWORD fw );
เบชเบปเปˆเบ‡เบ„เบทเบ™เบเบฒเบ™เบ™เบฑเบšเบชเบฐเบ•เบฃเบดเบ‡เปƒเบ™เบฅเบฒเบเบเบฒเบ™เบ„เบณเบชเบฑเบšเบ—เบตเปˆเบกเบตเบขเบนเปˆเป‚เบ”เบเบเบฒเบ™เป‚เบ—เบซเบฒ
SwishFuzzyWordList().

เบ™เบตเป‰เปเบกเปˆเบ™เบ›เบปเบเบเบฐเบ•เบดเบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡, เปเบ•เปˆเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡ DoubleMetaphone เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบซเบ™เบถเปˆเบ‡เบซเบผเบทเบชเบญเบ‡
(เป€เบŠเบฑเปˆเบ™ DoubleMetaphone เบชเบฒเบกเบฒเบ”เบชเบปเปˆเบ‡เบ„เบทเบ™เบ™เบถเปˆเบ‡ เบซเบผเบทเบชเบญเบ‡เบชเบฒเบ).

const char *SwishFuzzyMode( SW_RESULT r );
เบ•เบญเบšเบŠเบทเปˆเบ‚เบญเบ‡ stemmer เบ—เบตเปˆเปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš (เป€เบŠเบดเปˆเบ‡เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบš an
เบ”เบฑเบ”เบŠเบฐเบ™เบต).

void SwishFuzzyWordFree( SW_FUZZYWORD fw );
เบ›เบปเบ”เบ›เปˆเบญเบเบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเบณเบ—เบตเปˆเปƒเบŠเป‰เป‚เบ”เบ SW_FUZZYWORD.

เบฅเบฒเบเบ‡เบฒเบ™เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”


เบเบฐโ€‹เบฅเบธโ€‹เบ™เบฒโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบšเบปเบ”โ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™ bug เบเบฑเบšโ€‹เบเบธเปˆเบกโ€‹เบชเบปเบ™โ€‹เบ—เบฐโ€‹เบ™เบฒ Swish-eโ€‹. เบฎเบนเป‰เบชเบถเบเบงเปˆเบฒเบšเปเปˆเป€เบชเบเบ„เปˆเบฒเป€เบžเบทเปˆเบญเบ›เบฑเบšเบ›เบธเบ‡เบซเบผเบท
เบ›เบฑเบšเบ›เบธเบ‡เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰.

เบœเบนเป‰เบ‚เบฝเบ™


เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบš: เบชเบดเบ‡เบซเบฒ 2000 Jose Ruiz [email protected]

เบญเบฑเบšเป€เบ”เบ”: เบงเบฑเบ™เบ—เบต 22 เบชเบดเบ‡เบซเบฒ 2002 - Bill Moseley

เบญเบดเบ™เป€เบ•เบตเป€เบŸเบ”เบญเบญเบเปเบšเบšเปƒเปเปˆเบชเบณเบฅเบฑเบš Swish-e เป€เบงเบตเบŠเบฑเบ™ 2.3 เบงเบฑเบ™เบ—เบต 17 เบ•เบธเบฅเบฒ 2002 - Bill Moseley

เป€เบญเบเบฐเบชเบฒเบ™ เบ‚เปเป‰เบกเบนเบ™


$Id: SWISH-LIBRARY.pod 1906 2007-02-07 19:25:16Z moseley $

.

เปƒเบŠเป‰ SWISH-LIBRARY เบญเบญเบ™เป„เบฅเบ™เปŒ เป‚เบ”เบเปƒเบŠเป‰เบšเปเบฅเบดเบเบฒเบ™ onworks.net


เป€เบŠเบตเบšเป€เบงเบต เปเบฅเบฐเบชเบฐเบ–เบฒเบ™เบตเป€เบฎเบฑเบ”เบงเบฝเบเบŸเบฃเบต

เบ”เบฒเบงเป‚เบซเบผเบ”เปเบญเบฑเบš Windows เปเบฅเบฐ Linux

  • 1
    SWIG
    SWIG
    SWIG เป€เบ›เบฑเบ™เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบžเบฑเบ”เบ—เบฐเบ™เบฒเบŠเบญเบšเปเบง
    เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบšเบฑเบ™เบ”เบฒเป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเบ‚เบฝเบ™เปƒเบ™ C เปเบฅเบฐ
    C ++ เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบซเบฅเบฒเบเบซเบฅเบฒเบเบ‚เบญเบ‡เบฅเบฐเบ”เบฑเบšเบชเบนเบ‡
    เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบก. SWIG เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบเบฑเบš
    เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” SWIG
  • 2
    WooCommerce Nextjs React Theme
    WooCommerce Nextjs React Theme
    React WooCommerce เบซเบปเบงเบ‚เปเป‰, เบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบ”เป‰เบงเบ
    JS เบ•เปเปˆเป„เบ›, Webpack, Babel, Node, เปเบฅเบฐ
    เบ”เปˆเบงเบ™, เปƒเบŠเป‰ GraphQL เปเบฅเบฐ Apollo
    เบฅเบนเบโ€‹เบ„เป‰เบฒ. เบฎเป‰เบฒเบ™ WooCommerce เปƒเบ™ React(
    เบ›เบฐโ€‹เบเบญเบšโ€‹เบ”เป‰เบงเบโ€‹: เบœเบฐโ€‹เบฅเบดเบ”โ€‹เบ•เบฐโ€‹เบžเบฑเบ™ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” WooCommerce Nextjs React Theme
  • 3
    archlabs_repo
    archlabs_repo
    Package repo เบชเปเบฒเบฅเบฑเบš ArchLabs เบ™เบตเป‰เปเบกเปˆเบ™
    เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบเบฑเบ‡เบชเบฒเบกเบฒเบ”เป€เบญเบปเบฒเบกเบฒเป„เบ”เป‰
    เบˆเบฒเบ
    https://sourceforge.net/projects/archlabs-repo/.
    เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบˆเบฑเบ”เบขเบนเปˆเปƒเบ™ OnWorks เปƒเบ™ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” archlabs_repo
  • 4
    เป‚เบ„เบ‡เบเบฒเบ™ Zephyr
    เป‚เบ„เบ‡เบเบฒเบ™ Zephyr
    เป‚เบ„เบ‡เบเบฒเบ™ Zephyr เปเบกเปˆเบ™เบ„เบปเบ™เบฎเบธเปˆเบ™เปƒเบซเบกเปˆ
    เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เปƒเบ™เป€เบงเบฅเบฒเบˆเบดเบ‡ (RTOS) เบ™เบฑเป‰เบ™
    เบฎเบญเบ‡เบฎเบฑเบšเบฎเบฒเบ”เปเบงเบซเบผเบฒเบเบญเบฑเบ™
    เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒ. เบกเบฑเบ™เปเบกเปˆเบ™เบญเบตเบ‡เปƒเบชเปˆ a
    เปเบเปˆเบ™เบฎเบญเบเบ•เบตเบ™เบ™เป‰เบญเบ...
    เบ”เบฒเบงเป‚เบซเบฅเบ”เป‚เบ„เบ‡เบเบฒเบ™ Zephyr
  • 5
    SCons
    SCons
    SCons เป€เบ›เบฑเบ™โ€‹เป€เบ„เบทเปˆเบญเบ‡โ€‹เบกเบทโ€‹เบเบฒเบ™โ€‹เบเปเปˆโ€‹เบชเป‰เบฒเบ‡โ€‹เบŠเบญเบšโ€‹เปเบงโ€‹
    เบ™เบฑเป‰เบ™โ€‹เปเบกเปˆเบ™โ€‹เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบโ€‹เบ—เบตเปˆโ€‹เบ”เบตโ€‹เป€เบฅเบตเบ”โ€‹เบ‚เบญเบ‡โ€‹
    เบ„เบฅเบฒเบชเบชเบดเบ "เป€เบฎเบฑเบ”" เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ—เบตเปˆ
    เบžเบงเบเป€เบฎเบปเบฒเบ—เบธเบเบ„เบปเบ™เบฎเบนเป‰เบˆเบฑเบเปเบฅเบฐเบฎเบฑเบ. SCons เปเบกเปˆเบ™
    เป„เบ”เป‰โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เป€เบ›เบฑเบ™ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” SCons
  • 6
    PSeInt
    PSeInt
    PSeInt เป€เบ›เบฑเบ™เบ™เบฒเบเบžเบฒเบชเบฒ pseudo-code เบชเปเบฒเบฅเบฑเบš
    เบ™เบฑเบเบชเบถเบเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบกเบ—เบตเปˆเป€เบงเบปเป‰เบฒเบžเบฒเบชเบฒเบชเบฐเป€เบ›เบ™.
    เบˆเบธเบ”โ€‹เบ›เบฐโ€‹เบชเบปเบ‡โ€‹เบ•เบปเป‰เบ™โ€‹เบ•เปโ€‹เบ‚เบญเบ‡โ€‹เบ•เบปเบ™โ€‹เปเบกเปˆเบ™โ€‹เป€เบžเบทเปˆเบญโ€‹เป€เบ›เบฑเบ™โ€‹เป€เบ„เบทเปˆเบญเบ‡โ€‹เบกเบทโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹
    เบเบฒเบ™เบฎเบฝเบ™เบฎเบนเป‰เปเบฅเบฐเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเปƒเบˆเบžเบทเป‰เบ™เบ–เบฒเบ™
    เปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”...
    เบ”เบฒเบงเป‚เบซเบฅเบ” PSeInt
  • เป€เบžเบตเปˆเบกเป€เบ•เบตเบก ยป

Linux เบ„เบณ เบชเบฑเปˆเบ‡

  • 1
    7z
    7z
    7z - เปเบŸเป‰เบกเบˆเบฑเบ”เป€เบเบฑเบšเป„เบŸเบฅเปŒเบ—เบตเปˆเบกเบตเบชเบนเบ‡เบชเบธเบ”
    เบญเบฑเบ”โ€‹เบ•เบฒโ€‹เบชเปˆเบงเบ™โ€‹เบเบฒเบ™โ€‹เบšเบตเบšโ€‹เบญเบฑเบ” ...
    เปเบฅเปˆเบ™ 7z
  • 2
    7za
    7za
    7za - เปเบŸเป‰เบกเบˆเบฑเบ”เป€เบเบฑเบšเป„เบŸเบฅเปŒเบ—เบตเปˆเบกเบตเบชเบนเบ‡เบชเบธเบ”
    เบญเบฑเบ”โ€‹เบ•เบฒโ€‹เบชเปˆเบงเบ™โ€‹เบเบฒเบ™โ€‹เบšเบตเบšโ€‹เบญเบฑเบ” ...
    เปเบฅเปˆเบ™ 7za
  • 3
    creepy
    creepy
    CREEPY - เบ‚เปเป‰เบกเบนเบ™เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ•เบฑเป‰เบ‡เบžเบนเบกเบชเบฒเบ”
    เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบ•เบปเบงเบชเบฑเบ‡เบฅเบงเบก: creepy เปเบกเปˆเบ™
    เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบžเบทเปˆเบญเป€เบเบฑเบšเบเปเบฒ
    เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบžเบนเบกโ€‹เบชเบฒเบ”โ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹
    เบœเบนเป‰โ€‹เปƒเบŠเป‰โ€‹เบˆเบฒเบ ...
    เปเบฅเปˆเบ™ creepy
  • 4
    cricket-compile
    cricket-compile
    cricket - เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบเบฒเบ™โ€‹
    เบเบฒเบ™เป€เบเบฑเบšเบเปเบฒเปเบฅเบฐเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบŠเบธเบ”เป€เบงเบฅเบฒ
    เบ‚เปเป‰เบกเบนเบ™...
    เปเบฅเปˆเบ™ cricket-compile
  • 5
    g-wrap-config
    g-wrap-config
    g-wrap-config - script เป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เบฎเบฑเบš
    เบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบชเบฐเบšเบฑเบšเบ—เบตเปˆเบ•เบดเบ”เบ•เบฑเป‰เบ‡
    เบ‚เบญเบ‡ G-Wrap ...
    เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ g-wrap-config
  • 6
    g.accessgrass
    g.accessgrass
    g.access - เบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡
    เปเบœเบ™โ€‹เบ—เบตเปˆโ€‹เปƒเบ™โ€‹เบ›เบฐโ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบœเบนเป‰โ€‹เปƒเบŠเป‰โ€‹เบญเบทเปˆเบ™เป†โ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹
    เบฅเบฐเบšเบปเบš. เบ–เป‰เบฒเบšเปเปˆเบกเบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบซเป‰, เบžเบดเบก
    เบชเบฐเบ–เบฒเบ™เบฐเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™. เบ„เปเบฒเบชเปเบฒเบ„เบฑเบ™: เบ—เบปเปˆเบงเป„เบ›, เปเบœเบ™เบ—เบตเปˆ
    เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹, p ...
    เปเบฅเปˆเบ™ g.accessgrass
  • เป€เบžเบตเปˆเบกเป€เบ•เบตเบก ยป

Ad