| 84 | def groups(self): |
| 85 | return len(self.groupwidths) |
| 86 | def opengroup(self, name=None): |
| 87 | gid = self.groups |
| 88 | self.groupwidths.append(None) |
| 89 | if self.groups > MAXGROUPS: |
| 90 | raise error("too many groups") |
| 91 | if name is not None: |
| 92 | ogid = self.groupdict.get(name, None) |
| 93 | if ogid is not None: |
| 94 | raise error("redefinition of group name %r as group %d; " |
| 95 | "was group %d" % (name, gid, ogid)) |
| 96 | self.groupdict[name] = gid |
| 97 | return gid |
| 98 | def closegroup(self, gid, p): |
| 99 | self.groupwidths[gid] = p.getwidth() |
| 100 | def checkgroup(self, gid): |