[Lldb-commits] [PATCH] D33167: Get rid of some uses of	StringConvert and reduce some indentation
    Zachary Turner via Phabricator via lldb-commits 
    lldb-commits at lists.llvm.org
       
    Sat May 13 22:58:40 PDT 2017
    
    
  
zturner created this revision.
The goal here is to eventually delete the `StringConvert` class, as the llvm APIs for doing string to number conversion have a cleaner syntax.
In order to reduce code churn, since I was in this code anyway, I changed the deeply nested indentation of the code blocks I was touching to use early outs.  This led me to get annoyed by the fact that every time we want to return something, it has to be 3 or 4 lines of code to open a scope, set the correct status on the error, set the message, eventually return, and then add another line of code to close the scope.  We should be able to do all this in one line to further reduce boilerplate goo.  So I added some code to `Status` to do this.  Whereas before we would have to write this:
  if (!succeed) {
    result.AppendError("some error");
    result.SetStatus(eStatusFailed);
    return result.Succeeded();
  }
which is 5 lines of code, now we only have to write:
  if (!success)
    return result.AppendError(eStatusFailed, "some error");
which is only 2 lines.
There are more occurrences of `StringConvert` to change, but I wanted to get the feedback out of the way first before I go and do the rest.
https://reviews.llvm.org/D33167
Files:
  lldb/include/lldb/Interpreter/CommandReturnObject.h
  lldb/include/lldb/Utility/Status.h
  lldb/source/Commands/CommandObjectPlatform.cpp
  lldb/source/Commands/CommandObjectProcess.cpp
  lldb/source/Commands/CommandObjectTarget.cpp
  lldb/source/Interpreter/CommandReturnObject.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D33167.98909.patch
Type: text/x-patch
Size: 29746 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20170514/cbcda74f/attachment-0001.bin>
    
    
More information about the lldb-commits
mailing list