1
0

mnemonic: implement Wordlist class

Wordlist subclasses 'tuple' so it can be transparently used.
'in' and '.index()' are fast.
Use Wordlist in bip39_is_checksum_valid, which makes that faster.
This commit is contained in:
SomberNight
2020-02-29 00:20:11 +01:00
parent e1dcdde272
commit a0b096dcb2
5 changed files with 59 additions and 35 deletions

View File

@@ -30,7 +30,7 @@ from PyQt5.QtWidgets import (QVBoxLayout, QCheckBox, QHBoxLayout, QLineEdit,
from electrum.i18n import _
from electrum.mnemonic import Mnemonic, seed_type
import electrum.old_mnemonic
from electrum import old_mnemonic
from .util import (Buttons, OkButton, WWLabel, ButtonsTextEdit, icon_path,
EnterButton, CloseButton, WindowModalDialog, ColorScheme)
@@ -150,7 +150,7 @@ class SeedLayout(QVBoxLayout):
def initialize_completer(self):
bip39_english_list = Mnemonic('en').wordlist
old_list = electrum.old_mnemonic.words
old_list = old_mnemonic.wordlist
only_old_list = set(old_list) - set(bip39_english_list)
self.wordlist = list(bip39_english_list) + list(only_old_list) # concat both lists
self.wordlist.sort()