暂无描述
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

CommandLineOption.cs 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using System;
  2. namespace UnityEditor.TestRunner.CommandLineParser
  3. {
  4. internal class CommandLineOption : ICommandLineOption
  5. {
  6. private Action<string> m_ArgAction;
  7. public CommandLineOption(string argName, Action action)
  8. {
  9. ArgName = argName;
  10. m_ArgAction = s => action();
  11. }
  12. public CommandLineOption(string argName, Action<string> action)
  13. {
  14. ArgName = argName;
  15. m_ArgAction = action;
  16. }
  17. public CommandLineOption(string argName, Action<string[]> action)
  18. {
  19. ArgName = argName;
  20. m_ArgAction = s => action(SplitStringToArray(s));
  21. }
  22. public string ArgName { get; private set; }
  23. public void ApplyValue(string value)
  24. {
  25. m_ArgAction(value);
  26. }
  27. private static string[] SplitStringToArray(string value)
  28. {
  29. if (string.IsNullOrEmpty(value))
  30. {
  31. return null;
  32. }
  33. return value.Split(new[] {';'}, StringSplitOptions.RemoveEmptyEntries);
  34. }
  35. }
  36. }