From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 39856 invoked by alias); 13 Sep 2018 02:38:37 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 39376 invoked by uid 89); 13 Sep 2018 02:38:36 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00,SPF_PASS autolearn=ham version=3.3.2 spammy= X-HELO: eggs.gnu.org Received: from eggs.gnu.org (HELO eggs.gnu.org) (208.118.235.92) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 13 Sep 2018 02:38:35 +0000 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1g0HWY-00017R-5G for gdb-patches@sourceware.org; Wed, 12 Sep 2018 22:38:34 -0400 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:53386) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1g0HWY-00017K-1H; Wed, 12 Sep 2018 22:38:30 -0400 Received: from [176.228.60.248] (port=3371 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1g0HWX-0004zJ-Ks; Wed, 12 Sep 2018 22:38:29 -0400 Date: Thu, 13 Sep 2018 02:38:00 -0000 Message-Id: <83o9d2ktph.fsf@gnu.org> From: Eli Zaretskii To: Simon Marchi CC: gdb-patches@sourceware.org In-reply-to: <20180912193617.16523-2-simon.marchi@ericsson.com> (message from Simon Marchi on Wed, 12 Sep 2018 15:36:16 -0400) Subject: Re: [PATCH 2/3] python: Add Progspace.objfiles method References: <20180912193617.16523-1-simon.marchi@ericsson.com> <20180912193617.16523-2-simon.marchi@ericsson.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-IsSubscribed: yes X-SW-Source: 2018-09/txt/msg00404.txt.bz2 > From: Simon Marchi > CC: Simon Marchi > Date: Wed, 12 Sep 2018 15:36:16 -0400 > > This patch adds an objfiles method, which returns a sequence of the > objfiles associated to that program space. I chose a method rather than > a property for symmetry with gdb.objfiles(). > > Question: > > When we try to access a property of an Inferior object that has > become invalid, for example, we raise an exception ("Inferior no longer > exists."). When doing the same with a Progspace object, we return None > (the only case for now is its filename property). For > Progspace.objfiles(), I made it return None too, but perhaps it should > throw an exception instead? Especially that None is not iterable, so > trying to do: > > for obj in pspace.objfiles(): > ... > > will fail horribly if we return None... so should I introduce a macro > similar to INFPY_REQUIRE_VALID? > > gdb/ChangeLog: > > * python/py-progspace.c (pspy_get_objfiles): New function. > (progspace_object_methods): New. > (pspace_object_type): Add tp_methods callback. > * python/python-internal.h (build_objfiles_list): New > declaration. > * python/python.c (build_objfiles_list): New function. > (gdbpy_objfiles): Implement using build_objfiles_list. > * NEWS: Mention the Progspace.objfiles method. > > gdb/doc/ChangeLog: > > * python.texi (Program Spaces In Python): Document the > Progspace.objfiles method. > > gdb/testsuite/ChangeLog: > > * gdb.python/py-progspace.exp: Test the Progspace.objfiles > method. OK for the documentation parts. Thanks.