Lichen

lib/_sre.py

90:c7ddfc4525da
2016-10-08 Paul Boddie Added some support for eliminating accessor class types where the provided attributes are invoked and are unbound methods. This uses a more sophisticated method involving usage observations that incorporate invocation information, permitting classes as accessors if paths through the code support them, even if other paths require instances as accessors to invoke methods.
     1 #!/usr/bin/env python     2      3 CODESIZE = 4     4 MAGIC = 20140812     5      6 class RegexObject:     7      8     def __init__(self, flags, groups, groupindex, pattern):     9         self.flags = flags    10         self.groups = groups    11         self.groupindex = groupindex    12         self.pattern = pattern    13     14     def search(self, string, pos=None, endpos=None): pass    15     def match(self, string, pos=None, endpos=None): pass    16     def split(self, string, maxsplit=0): pass    17     def findall(self, string, pos=None, endpos=None): pass    18     def finditer(self, string, pos=None, endpos=None): pass    19     def sub(self, repl, string, count=0): pass    20     def subn(self, repl, string, count=0): pass    21     22 class MatchObject:    23     24     def __init__(self, pos, endpos, lastindex, lastgroup, re, string):    25         self.pos = pos    26         self.endpos = endpos    27         self.lastindex = lastindex    28         self.lastgroup = lastgroup    29         self.re = re    30         self.string = string    31     32     def expand(self, template): pass    33     def group(self, *groups): pass    34     def groups(self, default=None): pass    35     def groupdict(self, default=None): pass    36     def start(self, group=None): pass    37     def end(self, group=None): pass    38     def span(self, group=None): pass    39     40 def compile(pattern, flags=0): pass    41 def getcodesize(): pass    42 def getlower(c): pass    43     44 # vim: tabstop=4 expandtab shiftwidth=4