parameters: (tag)
return_statement: return frozenset(tags)
docstring: Parses the provided tag (e.g. `py3-none-any`) into a frozenset of Tag instances.
  
      Returning a set is required due to the possibility that the tag is a
      compressed tag set.
docstring_summary: Parses the provided tag (e.g. `py3-none-any`) into a frozenset of Tag instances.
docstring_tokens: Parses the provided tag ( e . g . py3 - none - any ) into a frozenset of Tag instances .
function: def parse_tag(tag):
      # type: (str) -> FrozenSet[Tag]
      """
      Parses the provided tag (e.g. `py3-none-any`) into a frozenset of Tag instances.
  
      Returning a set is required due to the possibility that the tag is a
      compressed tag set.
      """
      tags = set()
      interpreters, abis, platforms = tag.split("-")
      for interpreter in interpreters.split("."):
          for abi in abis.split("."):
              for platform_ in platforms.split("."):
                  tags.add(Tag(interpreter, abi, platform_))
      return frozenset(tags)
function_tokens: def parse_tag ( tag ) : # type: (str) -> FrozenSet[Tag] tags = set ( ) interpreters , abis , platforms = tag . split ( "-" ) for interpreter in interpreters . split ( "." ) : for abi in abis . split ( "." ) : for platform_ in platforms . split ( "." ) : tags . add ( Tag ( interpreter , abi , platform_ ) ) return frozenset ( tags )