labath added a comment.

I agree with Jim. I deliberately put here only the types that are used for 
command parsing, since I presume these are the things that the 
Command/Interpreter modules will depend on (it's not fully clear to me where to 
draw the line between these two, so it may end up needing to be moved from one 
to the other in the future, but I think that future will be pretty far away).

I also thought about the case when something else, which is logically lower 
than Interpreter/Command needs the string conversion functions -- in this case 
we could put the conversion function in a different module, but still keep the 
function in OptionArgParser as a wrapper on top of that. This way you would 
still have all the argument parsing functions in one place, while the things in 
the other modules (which by definition will not be parsing option arguments, or 
else they would be in these modules), can call the lower level function 
directly.

Ultimately, solving the layering of string conversion functions is not my goal 
here. I would be fully satisfied with breaking even. My goal is to move this 
stuff out of the Args class, so it can be moved down to Utility, as it is one 
of the main causes that everything depends on Interpreter (and then everything 
else).


https://reviews.llvm.org/D44306



_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to