def parse_directive(source_text, directive):
  """
  <Purpose>
    Given the file source, 'source-text', this function will search for the given directive.
    
  <Arguments>
    source_text: The source in which we are searching for a pragma directive.
    directive: The pragma directive we are searching for.

  <Exceptions>
    None
    
  <Side Effects>
    None

  <Returns>
    Return all relevant information for the specified directive:
    [(Directive, Type, Argument)... ]
  """
  result = []
  
  directive_string = '#' + directive
  
  for line in source_text.splitlines():
    if line.startswith(directive_string):
      stripped = line[len(directive_string):].strip()
      (pragma_type, separator, arg) = stripped.partition(' ')
      result.append((directive, pragma_type, arg))

  return result