Show More
@@ -0,0 +1,25 b'' | |||
|
1 | from mercurial import util | |
|
2 | ||
|
3 | class namespaces(object): | |
|
4 | """ | |
|
5 | provides an interface to register a generic many-to-many mapping between | |
|
6 | some (namespaced) names and nodes. The goal here is to control the | |
|
7 | pollution of jamming things into tags or bookmarks (in extension-land) and | |
|
8 | to simplify internal bits of mercurial: log output, tab completion, etc. | |
|
9 | ||
|
10 | More precisely, we define a list of names (the namespace) and a mapping of | |
|
11 | names to nodes. This name mapping returns a list of nodes. | |
|
12 | ||
|
13 | Furthermore, each name mapping will be passed a name to lookup which might | |
|
14 | not be in its domain. In this case, each method should return an empty list | |
|
15 | and not raise an error. | |
|
16 | ||
|
17 | We'll have a dictionary '_names' where each key is a namespace and | |
|
18 | its value is a dictionary of functions: | |
|
19 | 'namemap': function that takes a name and returns a list of nodes | |
|
20 | """ | |
|
21 | ||
|
22 | _names_version = 0 | |
|
23 | ||
|
24 | def __init__(self): | |
|
25 | self._names = util.sortdict() |
General Comments 0
You need to be logged in to leave comments.
Login now