code: def trigger_info(self, trigger=None, dump=False):
          
          if dump:
              return self._syntax
  
          response = None
  
          # Search the syntax tree for the trigger.
          for category in self._syntax:
              for topic in self._syntax[category]:
                  if trigger in self._syntax[category][topic]:
                      # We got a match!
                      if response is None:
                          response = list()
                      fname, lineno = self._syntax[category][topic][trigger]['trigger']
                      response.append(dict(
                          category=category,
                          topic=topic,
                          trigger=trigger,
                          filename=fname,
                          line=lineno,
                      ))
  
          return response
docs: Get information about a trigger.
  
          Pass in a raw trigger to find out what file name and line number it
          appeared at. This is useful for e.g. tracking down the location of the
          trigger last matched by the user via ``last_match()``. Returns a list
          of matching triggers, containing their topics, filenames and line
          numbers. Returns ``None`` if there weren't any matches found.
  
          The keys in the trigger info is as follows:
  
          * ``category``: Either 'topic' (for normal) or 'thats'
            (for %Previous triggers)
          * ``topic``: The topic name
          * ``trigger``: The raw trigger text
          * ``filename``: The filename the trigger was found in.
          * ``lineno``: The line number the trigger was found on.
  
          Pass in a true value for ``dump``, and the entire syntax tracking
          tree is returned.
  
          :param str trigger: The raw trigger text to look up.
          :param bool dump: Whether to dump the entire syntax tracking tree.
  
          :return: A list of matching triggers or ``None`` if no matches.