code: def get_tool_variants(self, tool_name):
          
          variants = set()
          tools_dict = self.get_tools(request_only=False)
          for variant, tools in tools_dict.itervalues():
              if tool_name in tools:
                  variants.add(variant)
          return variants
docs: Get the variant(s) that provide the named tool.
  
          If there are more than one variants, the tool is in conflict, and Rez
          does not know which variant's tool is actually exposed.
  
          Args:
              tool_name(str): Name of the tool to search for.
  
          Returns:
              Set of `Variant` objects. If no variant provides the tool, an
              empty set is returned.