diff options
| author | 2022-09-18 18:30:46 +0100 | |
|---|---|---|
| committer | 2022-09-18 18:30:46 +0100 | |
| commit | 44d1e790681f9430836694273f93a30994643a9b (patch) | |
| tree | 0b8f81933267a545a085d50aa5deeb4ba0b54728 | |
| parent | enumerate full_rules with a start index of 1 (diff) | |
replace the keywords set with a dict that maps each keyword to its rule number
Diffstat (limited to '')
| -rw-r--r-- | bot/exts/info/information.py | 14 | 
1 files changed, 6 insertions, 8 deletions
diff --git a/bot/exts/info/information.py b/bot/exts/info/information.py index e09083f90..315d93f1d 100644 --- a/bot/exts/info/information.py +++ b/bot/exts/info/information.py @@ -529,16 +529,17 @@ class Information(Cog):          keywords, rule_numbers = [], []          full_rules = await self.bot.api_client.get("rules", params={"link_format": "md"}) -        available_keywords = set() +        keyword_to_rule_number = dict() -        for _, rule_keywords in full_rules: -            available_keywords = available_keywords | set(rule_keywords) +        for rule_number, (_, rule_keywords) in enumerate(full_rules, start=1): +            for rule_keyword in rule_keywords: +                keyword_to_rule_number[rule_keyword] = rule_number          for word in args:              try:                  rule_numbers.append(int(word))              except ValueError: -                if (kw := word.lower()) not in available_keywords: +                if (kw := word.lower()) not in keyword_to_rule_number:                      break                  keywords.append(kw) @@ -568,10 +569,7 @@ class Information(Cog):          final_rule_numbers.extend(rule_numbers)          for keyword in keywords: -            for rule_number, rule in enumerate(full_rules, start=1): -                if keyword in rule[1]: -                    final_rule_numbers.append(rule_number) -                    break +            final_rule_numbers.append(keyword_to_rule_number.get(keyword))          final_rules = []          final_rule_numbers = set(final_rule_numbers)  |