Esempio n. 1
0
    def parse_depends(self, value):
        package_name = Word(alphanums + '.-${}:')('name')
        version = Combine(
            Word(nums + '.-') + Optional(Literal('~') + Word(alphanums + '+'))
        )('version')

        sign = Or(map(Literal, ('>', '<', '>=', '<=', '=',)))('sign')
        dependency = (
                (
                    package_name +
                    Literal('(').suppress() +
                    Optional(sign)('sign') +
                    version +
                    Literal(')').suppress()
                ) | (
                    package_name
                )
            ).setParseAction(lambda x: get_dependency(x.name, x.sign, x.version))

        delim = MatchFirst([])
        for i in self.dependency_delimiters + self.dependency_interlimiters:
            delim = delim | Literal(i)
            
        dlName = _ustr(dependency)+" ["+_ustr(delim)+" "+_ustr(dependency)+"]..."
        dependencies = Optional((dependency + ZeroOrMore(delim + dependency)).setName(dlName))

        return dependencies.parseString(value, True).asList()
    def __str__( self ):
        if hasattr(self,"name"):
            return self.name

        if self.strRepr is None:
            self.strRepr = "[" + _ustr(self.expr) + "]"

        return self.strRepr
Esempio n. 3
0
def _defaultExceptionDebugAction(instring, loc, expr, exc):
    log.debug("Exception raised:" + P._ustr(exc))
Esempio n. 4
0
def _defaultSuccessDebugAction(instring, startloc, endloc, expr, toks):
    log.debug("Matched " + P._ustr(expr) + " -> " + str(toks.asList()))
Esempio n. 5
0
def _defaultStartDebugAction(instring, loc, expr):
    log.debug("Match " + P._ustr(expr) + " at loc " + P._ustr(loc) + "(%d,%d)" 
              % ( P.lineno(loc,instring), P.col(loc,instring) ))
Esempio n. 6
0
def _defaultExceptionDebugAction(instring, loc, expr, exc):
    log.debug("Exception raised:" + P._ustr(exc))
Esempio n. 7
0
def _defaultSuccessDebugAction(instring, startloc, endloc, expr, toks):
    log.debug("Matched " + P._ustr(expr) + " -> " + str(toks.asList()))
Esempio n. 8
0
def _defaultStartDebugAction(instring, loc, expr):
    log.debug("Match " + P._ustr(expr) + " at loc " + P._ustr(loc) +
              "(%d,%d)" % (P.lineno(loc, instring), P.col(loc, instring)))