[Lldb-commits] [PATCH] Adds the ability for Command options to be validated at runtime.

Zachary Turner zturner at google.com
Thu Jul 3 00:33:01 PDT 2014


This patch adds the notion of an OptionValidator to the OptionDefinition.  The purpose of the OptionValidator is to determine, based on some arbitrary set of conditions, whether or not a command option is valid for a given debugger state.  An example of this might be to selectively disable or enable certain command options that don't apply to a particular platform.

This patch contains no functional change, and does not actually make use of an OptionValidator for any purpose yet.  It involves alot of code churn, however, so is submitted independently so as not to muddy up the subsequent change which actually begins making use of the validator.

http://reviews.llvm.org/D4369

Files:
  include/lldb/lldb-private-types.h
  source/Commands/CommandObjectArgs.cpp
  source/Commands/CommandObjectBreakpoint.cpp
  source/Commands/CommandObjectBreakpointCommand.cpp
  source/Commands/CommandObjectCommands.cpp
  source/Commands/CommandObjectDisassemble.cpp
  source/Commands/CommandObjectExpression.cpp
  source/Commands/CommandObjectFrame.cpp
  source/Commands/CommandObjectHelp.cpp
  source/Commands/CommandObjectLog.cpp
  source/Commands/CommandObjectMemory.cpp
  source/Commands/CommandObjectPlatform.cpp
  source/Commands/CommandObjectProcess.cpp
  source/Commands/CommandObjectRegister.cpp
  source/Commands/CommandObjectSettings.cpp
  source/Commands/CommandObjectSource.cpp
  source/Commands/CommandObjectTarget.cpp
  source/Commands/CommandObjectThread.cpp
  source/Commands/CommandObjectType.cpp
  source/Commands/CommandObjectWatchpoint.cpp
  source/Commands/CommandObjectWatchpointCommand.cpp
  source/Interpreter/OptionGroupArchitecture.cpp
  source/Interpreter/OptionGroupFormat.cpp
  source/Interpreter/OptionGroupOutputFile.cpp
  source/Interpreter/OptionGroupPlatform.cpp
  source/Interpreter/OptionGroupUUID.cpp
  source/Interpreter/OptionGroupValueObjectDisplay.cpp
  source/Interpreter/OptionGroupVariable.cpp
  source/Interpreter/OptionGroupWatchpoint.cpp
  source/Interpreter/Options.cpp
  source/Target/Platform.cpp
  source/Target/Process.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D4369.11043.patch
Type: text/x-patch
Size: 140740 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20140703/64b05a27/attachment.bin>


More information about the lldb-commits mailing list