Dropped uuid in favour of each word having its own id. I think this is logical as it allows origins() and tree() to ignore a word if it's already in the result. E.g.
$ python -m ety -t software
software (English)
├── -ware (English)
│ └── software (English) # <- I think this doesn't make sense
└── soft (English)
└── softe (Middle English (1100-1500))
Added a couple more checks around when we should add a word to the origins() results. Again this drops out duplicated words. E.g.
$ python -m ety -r software
-ware (English)
soft (English)
software (English) # <- Again, I think this doesn't make sense
softe (Middle English (1100-1500))
Added an Exception case when trying to add a child node to a Tree, as it's possible the key might already exist now (circular references).
Added __eq__ for checking if 2 Words are the same.
This fixes #20.
Dropped
uuid
in favour of each word having its own id. I think this is logical as it allowsorigins()
andtree()
to ignore a word if it's already in the result. E.g.Added a couple more checks around when we should add a word to the
origins()
results. Again this drops out duplicated words. E.g.Added an Exception case when trying to add a child node to a Tree, as it's possible the key might already exist now (circular references).
Added
__eq__
for checking if 2Word
s are the same.