private void HandleCommand()

in FigmaSharp.Views/FigmaSharp.Views.Cocoa/Graphics/PathBuilder.cs [171:276]


		private void HandleCommand(string command)
		{
			var c = command[0];

			if (_lastCommand != '~' && (char.IsDigit(c) || c == '-'))
			{
				if (_lastCommand == 'M')
				{
					_commandStack.Push(command);
					HandleCommand('L');
				}
				else if (_lastCommand == 'm')
				{
					_commandStack.Push(command);
					HandleCommand('l');
				}
				else if (_lastCommand == 'L')
				{
					_commandStack.Push(command);
					HandleCommand('L');
				}
				else if (_lastCommand == 'l')
				{
					_commandStack.Push(command);
					HandleCommand('l');
				}
				else if (_lastCommand == 'H')
				{
					_commandStack.Push(command);
					HandleCommand('H');
				}
				else if (_lastCommand == 'h')
				{
					_commandStack.Push(command);
					HandleCommand('h');
				}
				else if (_lastCommand == 'V')
				{
					_commandStack.Push(command);
					HandleCommand('V');
				}
				else if (_lastCommand == 'v')
				{
					_commandStack.Push(command);
					HandleCommand('v');
				}
				else if (_lastCommand == 'C')
				{
					_commandStack.Push(command);
					HandleCommand('C');
				}
				else if (_lastCommand == 'c')
				{
					_commandStack.Push(command);
					HandleCommand('c');
				}
				else if (_lastCommand == 'S')
				{
					_commandStack.Push(command);
					HandleCommand('S');
				}
				else if (_lastCommand == 's')
				{
					_commandStack.Push(command);
					HandleCommand('s');
				}
				else if (_lastCommand == 'Q')
				{
					_commandStack.Push(command);
					HandleCommand('Q');
				}
				else if (_lastCommand == 'q')
				{
					_commandStack.Push(command);
					HandleCommand('q');
				}
				else if (_lastCommand == 'T')
				{
					_commandStack.Push(command);
					HandleCommand('T');
				}
				else if (_lastCommand == 't')
				{
					_commandStack.Push(command);
					HandleCommand('t');
				}
				else if (_lastCommand == 'A')
				{
					_commandStack.Push(command);
					HandleCommand('A');
				}
				else if (_lastCommand == 'a')
				{
					_commandStack.Push(command);
					HandleCommand('a');
				}
				else
				{
					LoggingService.LogError("Don't know how to handle the path command: " + command);
				}
			}
			else
			{
				HandleCommand(c);
			}
		}