X-Git-Url: https://scm.cri.mines-paristech.fr/git/linpy.git/blobdiff_plain/4540f520e6ae625c360c50ea2f4abf07d6811780..a13b139496c50e81964197336f51303022ab4e3b:/linpy/domains.py?ds=sidebyside diff --git a/linpy/domains.py b/linpy/domains.py index 799b99d..519059d 100644 --- a/linpy/domains.py +++ b/linpy/domains.py @@ -38,7 +38,7 @@ __all__ = [ class Domain(GeometricObject): """ A domain is a union of polyhedra. Unlike polyhedra, domains allow exact - computation of union and complementary operations. + computation of union, subtraction and complementary operations. A domain with a unique polyhedron is automatically subclassed as a Polyhedron instance. @@ -703,17 +703,17 @@ class Domain(GeometricObject): Create a domain from a string. Raise SyntaxError if the string is not properly formatted. """ - # remove curly brackets + # Remove curly brackets. string = cls._RE_BRACES.sub(r'', string) - # replace '=' by '==' + # Replace '=' by '=='. string = cls._RE_EQ.sub(r'\1==\2', string) - # replace 'and', 'or', 'not' + # Replace 'and', 'or', 'not'. string = cls._RE_AND.sub(r' & ', string) string = cls._RE_OR.sub(r' | ', string) string = cls._RE_NOT.sub(r' ~', string) - # add implicit multiplication operators, e.g. '5x' -> '5*x' + # Add implicit multiplication operators, e.g. '5x' -> '5*x'. string = cls._RE_NUM_VAR.sub(r'\1*\2', string) - # add parentheses to force precedence + # Add parentheses to force precedence. tokens = cls._RE_OPERATORS.split(string) for i, token in enumerate(tokens): if i % 2 == 0: