in Python/Product/Debugger/Debugger/DebugEngine/AD7Engine.cs [799:878]
private void ParseOptions(string options) {
foreach (var optionSetting in SplitOptions(options)) {
var setting = optionSetting.Split(new[] { '=' }, 2);
if (setting.Length == 2) {
switch (setting[0]) {
case VersionSetting:
_languageVersion = GetLanguageVersion(setting[1]);
break;
case WaitOnAbnormalExitSetting:
bool value;
if (Boolean.TryParse(setting[1], out value) && value) {
_debugOptions |= PythonDebugOptions.WaitOnAbnormalExit;
}
break;
case WaitOnNormalExitSetting:
if (Boolean.TryParse(setting[1], out value) && value) {
_debugOptions |= PythonDebugOptions.WaitOnNormalExit;
}
break;
case RedirectOutputSetting:
if (Boolean.TryParse(setting[1], out value) && value) {
_debugOptions |= PythonDebugOptions.RedirectOutput;
}
break;
case BreakSystemExitZero:
if (Boolean.TryParse(setting[1], out value) && value) {
_debugOptions |= PythonDebugOptions.BreakOnSystemExitZero;
}
break;
case DebugStdLib:
if (Boolean.TryParse(setting[1], out value) && value) {
_debugOptions |= PythonDebugOptions.DebugStdLib;
}
break;
case IsWindowsApplication:
if (Boolean.TryParse(setting[1], out value) && value) {
_debugOptions |= PythonDebugOptions.IsWindowsApplication;
}
break;
case DirMappingSetting:
string[] dirs = setting[1].Split('|');
if (dirs.Length == 2) {
if (_dirMapping == null) {
_dirMapping = new List<string[]>();
}
Debug.WriteLine(String.Format("Mapping dir {0} to {1}", dirs[0], dirs[1]));
_dirMapping.Add(dirs);
}
break;
case InterpreterOptions:
_interpreterOptions = setting[1];
break;
case AttachRunning:
if (Boolean.TryParse(setting[1], out value) && value) {
_debugOptions |= PythonDebugOptions.AttachRunning;
}
break;
case WebBrowserUrl:
_webBrowserUrl = HttpUtility.UrlDecode(setting[1]);
break;
case EnableDjangoDebugging:
if (Boolean.TryParse(setting[1], out value) && value) {
_debugOptions |= PythonDebugOptions.DjangoDebugging;
}
break;
}
}
}
}