docs: def matches(self, string, context=None):
          """
          Search for all matches with current configuration against input_string
          :param string: string to search into
          :type string: str
          :param context: context to use
          :type context: dict
          :return: A custom list of matches
          :rtype: Matches
          """
          matches = Matches(input_string=string)
          if context is None:
              context = {}
  
          self._matches_patterns(matches, context)
  
          self._execute_rules(matches, context)
  
          return matches