Beispiel #1
0
def validate_pattern_expr(errors, stmt):
    # check that it's syntactically correct
    try:
        import libxml2
        try:
            re = libxml2.regexpCompile(stmt.arg)
            return (re, stmt.pos)
        except libxml2.treeError, v:
            err_add(errors, stmt.pos, 'PATTERN_ERROR', str(v))
            return None
    except ImportError:
        err_add(errors, stmt.pos, 'PATTERN_FAILURE',
                "Could not import python module libxml2 "
                    "(see http://xmlsoft.org for installation help)")
        return None
Beispiel #2
0
def _validate_pattern_libxml2(errors, stmt, invert_match):
    try:
        import libxml2
        try:
            re = libxml2.regexpCompile(stmt.arg)
            return ('libxml2', re, stmt.pos, invert_match)
        except libxml2.treeError as v:
            err_add(errors, stmt.pos, 'PATTERN_ERROR', str(v))
            return None
    except ImportError:
        ## Do not report a warning in this case.  Maybe we should add some
        ## flag to turn on this warning...
        #        err_add(errors, stmt.pos, 'PATTERN_FAILURE',
        #                "Could not import python module libxml2 "
        #                    "(see http://xmlsoft.org for installation help)")
        return False
Beispiel #3
0
def _validate_pattern_libxml2(errors, stmt, invert_match):
    try:
        import libxml2
        try:
            re = libxml2.regexpCompile(stmt.arg)
            return ('libxml2', re, stmt.pos, invert_match)
        except libxml2.treeError as v:
            err_add(errors, stmt.pos, 'PATTERN_ERROR', str(v))
            return None
    except ImportError:
    ## Do not report a warning in this case.  Maybe we should add some
    ## flag to turn on this warning...
    #        err_add(errors, stmt.pos, 'PATTERN_FAILURE',
    #                "Could not import python module libxml2 "
    #                    "(see http://xmlsoft.org for installation help)")
        return False
Beispiel #4
0
def validate_pattern_expr(errors, stmt):
    # check that it's syntactically correct
    try:
        import libxml2
        try:
            re = libxml2.regexpCompile(stmt.arg)
            return (re, stmt.pos)
        except libxml2.treeError, v:
            err_add(errors, stmt.pos, 'PATTERN_ERROR', str(v))
            return None
    except ImportError:
        err_add(
            errors, stmt.pos, 'PATTERN_FAILURE',
            "Could not import python module libxml2 "
            "(see http://xmlsoft.org for installation help)")
        return None
def validate_pattern_expr(errors, stmt):
    # check that it's syntactically correct
    try:
        import libxml2
        try:
            re = libxml2.regexpCompile(stmt.arg)
            return (re, stmt.pos)
        except libxml2.treeError, v:
            err_add(errors, stmt.pos, 'PATTERN_ERROR', str(v))
            return None
    except ImportError:
## Do not report a warning in this case.  Maybe we should add some
## flag to turn on this warning...
#        err_add(errors, stmt.pos, 'PATTERN_FAILURE',
#                "Could not import python module libxml2 "
#                    "(see http://xmlsoft.org for installation help)")
        return None
Beispiel #6
0
def validate_pattern_expr(errors, stmt):
    # check that it's syntactically correct
    try:
        import libxml2
        try:
            re = libxml2.regexpCompile(stmt.arg)
            return (re, stmt.pos)
        except libxml2.treeError as v:
            err_add(errors, stmt.pos, 'PATTERN_ERROR', str(v))
            return None
    except ImportError:
## Do not report a warning in this case.  Maybe we should add some
## flag to turn on this warning...
#        err_add(errors, stmt.pos, 'PATTERN_FAILURE',
#                "Could not import python module libxml2 "
#                    "(see http://xmlsoft.org for installation help)")
        return None
Beispiel #7
0
#!/usr/bin/python -u
import libxml2

# Memory debug specific
libxml2.debugMemory(1)

re = libxml2.regexpCompile("a|b")
if re.regexpExec("a") != 1:
    print("error checking 'a'")
    sys.exit(1)
if re.regexpExec("b") != 1:
    print("error checking 'b'")
    sys.exit(1)
if re.regexpExec("ab") != 0:
    print("error checking 'ab'")
    sys.exit(1)
if re.regexpExec("") != 0:
    print("error checking 'ab'")
    sys.exit(1)
if re.regexpIsDeterminist() != 1:
    print("error checking determinism")
    sys.exit(1)
del re

# Memory debug specific
libxml2.cleanupParser()
if libxml2.debugMemory(1) == 0:
    print("OK")
else:
    print("Memory leak %d bytes" % (libxml2.debugMemory(1)))
    libxml2.dumpMemory()
#!/usr/bin/python -u
import libxml2

# Memory debug specific
libxml2.debugMemory(1)

re = libxml2.regexpCompile("a|b")
if re.regexpExec("a") != 1:
    print("error checking 'a'")
    sys.exit(1)
if re.regexpExec("b") != 1:
    print("error checking 'b'")
    sys.exit(1)
if re.regexpExec("ab") != 0:
    print("error checking 'ab'")
    sys.exit(1)
if re.regexpExec("") != 0:
    print("error checking 'ab'")
    sys.exit(1)
if re.regexpIsDeterminist() != 1:
    print("error checking determinism")
    sys.exit(1)
del re
    

# Memory debug specific
libxml2.cleanupParser()
if libxml2.debugMemory(1) == 0:
    print("OK")
else:
    print("Memory leak %d bytes" % (libxml2.debugMemory(1)))