equal
deleted
inserted
replaced
33 def __init__(self, gen, values, makemap, joinfmt): |
33 def __init__(self, gen, values, makemap, joinfmt): |
34 self.gen = gen |
34 self.gen = gen |
35 self.values = values |
35 self.values = values |
36 self._makemap = makemap |
36 self._makemap = makemap |
37 self.joinfmt = joinfmt |
37 self.joinfmt = joinfmt |
38 def __iter__(self): |
|
39 return self.gen |
|
40 def itermaps(self): |
38 def itermaps(self): |
41 makemap = self._makemap |
39 makemap = self._makemap |
42 for x in self.values: |
40 for x in self.values: |
43 yield makemap(x) |
41 yield makemap(x) |
44 def __contains__(self, x): |
42 def __contains__(self, x): |
47 return len(self.values) |
45 return len(self.values) |
48 def __getattr__(self, name): |
46 def __getattr__(self, name): |
49 if name != 'get': |
47 if name != 'get': |
50 raise AttributeError(name) |
48 raise AttributeError(name) |
51 return getattr(self.values, name) |
49 return getattr(self.values, name) |
|
50 |
|
51 def unwraphybrid(thing): |
|
52 """Return an object which can be stringified possibly by using a legacy |
|
53 template""" |
|
54 if not util.safehasattr(thing, 'gen'): |
|
55 return thing |
|
56 return thing.gen |
52 |
57 |
53 def showlist(name, values, plural=None, element=None, separator=' ', **args): |
58 def showlist(name, values, plural=None, element=None, separator=' ', **args): |
54 if not element: |
59 if not element: |
55 element = name |
60 element = name |
56 f = _showlist(name, values, plural, separator, **args) |
61 f = _showlist(name, values, plural, separator, **args) |