Anonymous avatar Anonymous committed 90d67b7

extract: better messages

Comments (0)

Files changed (1)

rope/refactor/extract.py

     def multi_line_conditions(self, info):
         code = info.source[info.region[0]:info.region[1]]
         count = _return_count(code)
-        if count > 0 and not (count == 1 and _returns_last(code)):
-            raise RefactoringError('Extracted piece should not '
-                                   'contain more than one return statements.')
+        if count > 1:
+            raise RefactoringError('Extracted piece can have only one '
+                                   'return statement.')
+        if count == 1 and not _returns_last(code):
+            raise RefactoringError('Return should be the last statement.')
         if info.region != info.lines_region:
             raise RefactoringError('Extracted piece should '
                                    'contain complete statements.')
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.