nodes: 0, module; 1, function_definition; 2, function_name:iter_repos; 3, parameters; 4, block; 5, identifier:self; 6, default_parameter; 7, default_parameter; 8, default_parameter; 9, default_parameter; 10, default_parameter; 11, expression_statement; 12, expression_statement; 13, expression_statement; 14, if_statement; 15, if_statement; 16, if_statement; 17, return_statement; 18, identifier:type; 19, None; 20, identifier:sort; 21, None; 22, identifier:direction; 23, None; 24, identifier:number; 25, unary_operator; 26, identifier:etag; 27, None; 28, comment:"""List public repositories for the authenticated user.
  
          .. versionchanged:: 0.6
             Removed the login parameter for correctness. Use iter_user_repos
             instead
  
          :param str type: (optional), accepted values:
              ('all', 'owner', 'public', 'private', 'member')
              API default: 'all'
          :param str sort: (optional), accepted values:
              ('created', 'updated', 'pushed', 'full_name')
              API default: 'created'
          :param str direction: (optional), accepted values:
              ('asc', 'desc'), API default: 'asc' when using 'full_name',
              'desc' otherwise
          :param int number: (optional), number of repositories to return.
              Default: -1 returns all repositories
          :param str etag: (optional), ETag from a previous request to the same
              endpoint
          :returns: generator of :class:`Repository <github3.repos.Repository>`
              objects
          """; 29, assignment; 30, assignment; 31, comparison_operator:type in ('all', 'owner', 'public', 'private', 'member'); 32, block; 33, comparison_operator:sort in ('created', 'updated', 'pushed', 'full_name'); 34, block; 35, comparison_operator:direction in ('asc', 'desc'); 36, block; 37, call; 38, integer:1; 39, identifier:url; 40, call; 41, identifier:params; 42, dictionary; 43, identifier:type; 44, tuple; 45, expression_statement; 46, identifier:sort; 47, tuple; 48, expression_statement; 49, identifier:direction; 50, tuple; 51, expression_statement; 52, attribute; 53, argument_list; 54, attribute; 55, argument_list; 56, string; 57, string; 58, string; 59, string; 60, string; 61, call; 62, string; 63, string; 64, string; 65, string; 66, call; 67, string; 68, string; 69, call; 70, identifier:self; 71, identifier:_iter; 72, call; 73, identifier:url; 74, identifier:Repository; 75, identifier:params; 76, identifier:etag; 77, identifier:self; 78, identifier:_build_url; 79, string; 80, string; 81, string_content:all; 82, string_content:owner; 83, string_content:public; 84, string_content:private; 85, string_content:member; 86, attribute; 87, argument_list; 88, string_content:created; 89, string_content:updated; 90, string_content:pushed; 91, string_content:full_name; 92, attribute; 93, argument_list; 94, string_content:asc; 95, string_content:desc; 96, attribute; 97, argument_list; 98, identifier:int; 99, argument_list; 100, string_content:user; 101, string_content:repos; 102, identifier:params; 103, identifier:update; 104, keyword_argument; 105, identifier:params; 106, identifier:update; 107, keyword_argument; 108, identifier:params; 109, identifier:update; 110, keyword_argument; 111, identifier:number; 112, identifier:type; 113, identifier:type; 114, identifier:sort; 115, identifier:sort; 116, identifier:direction; 117, identifier:direction
code: def iter_repos(self, type=None, sort=None, direction=None, number=-1,
                     etag=None):
          """List public repositories for the authenticated user.
  
          .. versionchanged:: 0.6
             Removed the login parameter for correctness. Use iter_user_repos
             instead
  
          :param str type: (optional), accepted values:
              ('all', 'owner', 'public', 'private', 'member')
              API default: 'all'
          :param str sort: (optional), accepted values:
              ('created', 'updated', 'pushed', 'full_name')
              API default: 'created'
          :param str direction: (optional), accepted values:
              ('asc', 'desc'), API default: 'asc' when using 'full_name',
              'desc' otherwise
          :param int number: (optional), number of repositories to return.
              Default: -1 returns all repositories
          :param str etag: (optional), ETag from a previous request to the same
              endpoint
          :returns: generator of :class:`Repository <github3.repos.Repository>`
              objects
          """
          url = self._build_url('user', 'repos')
  
          params = {}
          if type in ('all', 'owner', 'public', 'private', 'member'):
              params.update(type=type)
          if sort in ('created', 'updated', 'pushed', 'full_name'):
              params.update(sort=sort)
          if direction in ('asc', 'desc'):
              params.update(direction=direction)
  
          return self._iter(int(number), url, Repository, params, etag)