Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stanislav-tkach/spellchecker
https://github.com/stanislav-tkach/spellchecker
Last synced: 25 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/stanislav-tkach/spellchecker
- Owner: stanislav-tkach
- Created: 2013-03-03T23:09:49.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2013-03-03T23:18:31.000Z (over 11 years ago)
- Last Synced: 2023-04-10T02:55:54.121Z (over 1 year ago)
- Language: C++
- Size: 121 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.txt
Awesome Lists containing this project
README
This project is a simple "spell checker".
It has several limitations. At first, only English language is supported. Secondly, only two "edits" can be used to correct the words. Here, an "edit" is either: inserting a single letter or deleting a single letter. With the restriction that if the edits are both insertions or both deletions, they may not be of adjacent characters.
The input will consist of a dictionary followed by a sequence of possibly misspelt words. Both contain words. The dictionary, in free format, is followed by a line containing just the string "===". After this, there will be zero or more text lines containing words followed again by a line containing the string "===". The input is case-insensitive; print corrections from the dictionary in the case they appear in the dictionary and unchanged words from the text lines in their original case as well.
The project structure:
SpellChecker
shared - common things
SpellCheckerDll - spell checker implementation (with spellChecker.h public header).
SpellChecker - console project using ISpellCheckerFacade interface.
tests - tests for public interface.Optional Dependencies:
Boost Test Library (for \SpellChecker\tests).The project does not use exceptions and fancy logging. The reason of this is architectural decision: DLL can be used separately from other project parts. So some specific logging system cannot be used. Cross-dll exception also has some limitations.