Show More
@@ -74,6 +74,17 b' class itemregister(dict):' | |||
|
74 | 74 | # search for a matching generic item |
|
75 | 75 | generics = sorted(self._generics, key=(lambda x: (x.priority, x.name))) |
|
76 | 76 | for item in generics: |
|
77 | # we use 'match' instead of 'search' to make the matching simpler | |
|
78 | # for people unfamiliar with regular expression. Having the match | |
|
79 | # rooted to the start of the string will produce less surprising | |
|
80 | # result for user writing simple regex for sub-attribute. | |
|
81 | # | |
|
82 | # For example using "color\..*" match produces an unsurprising | |
|
83 | # result, while using search could suddenly match apparently | |
|
84 | # unrelated configuration that happens to contains "color." | |
|
85 | # anywhere. This is a tradeoff where we favor requiring ".*" on | |
|
86 | # some match to avoid the need to prefix most pattern with "^". | |
|
87 | # The "^" seems more error prone. | |
|
77 | 88 | if item._re.match(key): |
|
78 | 89 | return item |
|
79 | 90 |
General Comments 0
You need to be logged in to leave comments.
Login now