Age | Commit message (Collapse) | Author |
|
* Remove all uses of `using namespace std` from header files (although a
few specific cases of things like `using std::vector` remain)
* Move all existing uses of `using namespace std` in cpp files to after the
header includes
* Make coordinating changes so it builds again.
Qt6 builds on Windows were breaking because of namespace collision between
std::byte and some version of `byte` in one of Qt's namespaces. That breakage
is now fixed.
It would be good to systematically clean up all `using` declarations in header
files to ensure nothing is leaking out, but that's for another time.
|
|
Mostly signed/unsigned/size_t mismatches, except for one
case treating a bool as an integer.
|
|
Also, extend copyright to 2019.
|
|
|
|
* Fix a number of remaining bugs in the lexicon dialog.
* Fix an error reading the v1 DAWG.
* Improve the word counting mechanism.
* Make sure the lexicn dialog properly selects and loads
its dictionary after it's done.
* Implement deleting of user dictionaries.
* Clean up dictionary info text in lexicon dialog.
* Disable gaddag generation...still have to fix that up
to happen at sensible times and with user notification.
|
|
Get enables and disables right, efficient computation
of word counts, etc.
|
|
Now prints better stats. Now loads the
dictionary you're editing. Now disables the
Delete button at appropriate times.
|
|
Words are loaded and hashed. Duplicates are
discovered. Alphabets are dealt with. Merging
of multiple word lists works. This is good stuff.
Saving the resulting dictionaries has not been
tried, yet, and the gui code for saving needs to
be finished off, yet.
|
|
V1 DAWGs now include an alphabet.
Begin creating DAWGs which extend other DAWGs.
In general, laying the groundwork for plain text import
to DAWG.
|
|
Need to add a user interface, but gaddags are now
auto-generated if they can't be found.
Some specific improvements here:
* FixedLengthString gained a pop_back member.
* Add code to allow v1 gaddags and v0 dawgs to work
together.
* Change memory allocation of dawgs and gaddags to
be dynamic (the old limit didn't accommodate the
ridiculously large Polish dictionary in the gaddag)
* The Settings class now knows a bit about generating
gaddags. This will be important for giving UI feedback.
* Fixed several places using filenames which should be
using string, not UVString.
* Dawg/GaddagFactory should have been using
UVString, not QString. My misunderstanding.
|
|
|
|
Make reader and writer for the new format, while
maintaing compatibility with the old. Things to
note of the new format...
* Now has a header, with version number, MD5, and word count.
* No longer has terminator bit. Nodes are terminated by
a non-zero playability.
* Which means letters have one more bit. So we can now
support more than 32 letters. Important for Slovak alphabet.
Also, various cleanups and refactorings.
|
|
Same thing I just did for the gaddag code I'm now doing
for the dawg code. While I was at it, I made some
improvements to the dawg code...
* Instead of adding multiple cross-checks for various
kinds of node metadata, there's now only one cross-
check...a hash applied to each node.
* Some useless variables/members have been excised.
* Add ability to do a word count (cryptohash coming soon).
* Make it possible to call generate() and writeIndex()
multiple times without corrupting the dictionary.
|