parameters: (toolset, tool, user_provided_command = [],
                             additional_paths = [], path_last = False)
return_statement: return result
docstring: Same as get_invocation_command_nodefault, except that if no tool is found,
          returns either the user-provided-command, if present, or the 'tool' parameter.
docstring_summary: Same as get_invocation_command_nodefault, except that if no tool is found,
          returns either the user-provided-command, if present, or the 'tool' parameter.
docstring_tokens: Same as get_invocation_command_nodefault except that if no tool is found returns either the user - provided - command if present or the tool parameter .
function: def get_invocation_command(toolset, tool, user_provided_command = [],
                             additional_paths = [], path_last = False):
      """ Same as get_invocation_command_nodefault, except that if no tool is found,
          returns either the user-provided-command, if present, or the 'tool' parameter.
      """
      assert isinstance(toolset, basestring)
      assert isinstance(tool, basestring)
      assert is_iterable_typed(user_provided_command, basestring)
      assert is_iterable_typed(additional_paths, basestring) or additional_paths is None
      assert isinstance(path_last, (int, bool))
  
      result = get_invocation_command_nodefault(toolset, tool,
                                                user_provided_command,
                                                additional_paths,
                                                path_last)
  
      if not result:
          if user_provided_command:
              result = user_provided_command[0]
          else:
              result = tool
  
      assert(isinstance(result, str))
  
      return result
function_tokens: def get_invocation_command ( toolset , tool , user_provided_command = [ ] , additional_paths = [ ] , path_last = False ) : assert isinstance ( toolset , basestring ) assert isinstance ( tool , basestring ) assert is_iterable_typed ( user_provided_command , basestring ) assert is_iterable_typed ( additional_paths , basestring ) or additional_paths is None assert isinstance ( path_last , ( int , bool ) ) result = get_invocation_command_nodefault ( toolset , tool , user_provided_command , additional_paths , path_last ) if not result : if user_provided_command : result = user_provided_command [ 0 ] else : result = tool assert ( isinstance ( result , str ) ) return result