nodes: 0, module; 1, function_definition; 2, function_name:list; 3, parameters; 4, comment:# pylint: disable=redefined-builtin; 5, block; 6, identifier:self; 7, default_parameter; 8, default_parameter; 9, default_parameter; 10, default_parameter; 11, default_parameter; 12, expression_statement; 13, expression_statement; 14, expression_statement; 15, expression_statement; 16, return_statement; 17, identifier:filter; 18, None; 19, identifier:type; 20, None; 21, identifier:sort; 22, None; 23, identifier:limit; 24, None; 25, identifier:page; 26, None; 27, comment:"""Get a list of packages.
  
          :param filter: (optional) Filters to apply as a string list.
          :param type: (optional) `union` or `inter` as string.
          :param sort: (optional) Sort fields to apply as string list.
          :param limit: (optional) Limit returned list length.
          :param page: (optional) Page to return.
          :return: :class:`packages.Page <packages.Page>` object
          """; 28, assignment; 29, assignment; 30, assignment; 31, call; 32, identifier:schema; 33, call; 34, identifier:resp; 35, call; 36, pattern_list; 37, call; 38, identifier:Page; 39, argument_list; 40, identifier:PackageSchema; 41, argument_list; 42, attribute; 43, argument_list; 44, identifier:ps; 45, identifier:l; 46, attribute; 47, argument_list; 48, identifier:ps; 49, identifier:l; 50, keyword_argument; 51, attribute; 52, identifier:list; 53, attribute; 54, identifier:filter; 55, identifier:type; 56, identifier:sort; 57, identifier:limit; 58, identifier:page; 59, attribute; 60, identifier:decode; 61, identifier:schema; 62, identifier:resp; 63, keyword_argument; 64, keyword_argument; 65, identifier:exclude; 66, tuple; 67, identifier:self; 68, identifier:service; 69, identifier:self; 70, identifier:base; 71, identifier:self; 72, identifier:service; 73, identifier:many; 74, True; 75, identifier:links; 76, True; 77, string; 78, string; 79, string; 80, string; 81, string; 82, string_content:testlist; 83, string_content:extra_cli_args; 84, string_content:agent_id; 85, string_content:options; 86, string_content:note
code: def list(self, filter=None, type=None, sort=None, limit=None, page=None): # pylint: disable=redefined-builtin
          """Get a list of packages.
  
          :param filter: (optional) Filters to apply as a string list.
          :param type: (optional) `union` or `inter` as string.
          :param sort: (optional) Sort fields to apply as string list.
          :param limit: (optional) Limit returned list length.
          :param page: (optional) Page to return.
          :return: :class:`packages.Page <packages.Page>` object
          """
          schema = PackageSchema(exclude=('testlist', 'extra_cli_args', 'agent_id', 'options', 'note'))
          resp = self.service.list(self.base, filter, type, sort, limit, page)
          ps, l = self.service.decode(schema, resp, many=True, links=True)
          return Page(ps, l)