Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Joel Brobecker <brobecker@adacore.com>
To: Tom Tromey <tromey@redhat.com>
Cc: Thiago Jung Bauermann <bauerman@br.ibm.com>,
		gdb-patches ml <gdb-patches@sourceware.org>
Subject: Re: [rfc] expose gdb values to python
Date: Wed, 01 Oct 2008 05:48:00 -0000	[thread overview]
Message-ID: <20081001054741.GE3665@adacore.com> (raw)
In-Reply-To: <m3skrv92wf.fsf@fleche.redhat.com>

(Sorry I am participating so late in the discussion, but I am still
recovering from my summer, and only recently managed to learn some Python)

> The underlying question is what type model Value presents.  If a Value
> has a derived type, should we be able to access fields of the base
> class using v["f"]?  Or should we need v["Base"]["f"]?

My initial reaction to this question is that the Value object
should follow the same semantics as the debugger. For instance,
if class Foo inherits from class Bar, then any component of class
Bar should be directly visible from class Foo. So if X is Value
of type class Foo, and class Bar has a component named "Baz",
then I should be able to access that component with X["Baz"].

Better yet, I would love for the object to have one attribute
for each component that I could simply access using X.baz.
But I suspect that there is no way we can implement that without
having to compute the value of each component, which would be
quite wastful the vast majority of the time. Sigh, is it not
possible to lazy-initialize attributes?

-- 
Joel


  parent reply	other threads:[~2008-10-01  5:48 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-12  6:05 Thiago Jung Bauermann
2008-09-20 21:29 ` Tom Tromey
2008-09-21  4:27   ` Daniel Jacobowitz
2008-09-25  4:33     ` Thiago Jung Bauermann
2008-09-25 11:47       ` Daniel Jacobowitz
2008-09-26  2:00         ` Thiago Jung Bauermann
2008-09-26  9:30           ` Eli Zaretskii
2008-09-28  1:19             ` Thiago Jung Bauermann
2008-09-28 18:19               ` Eli Zaretskii
2008-09-29 16:16                 ` Thiago Jung Bauermann
2008-09-29 17:00                   ` Daniel Jacobowitz
2008-09-30  4:07                     ` Thiago Jung Bauermann
2008-09-30 12:41                       ` Daniel Jacobowitz
2008-10-01  3:18                         ` Thiago Jung Bauermann
2008-10-01 11:40                           ` Daniel Jacobowitz
2008-09-29 18:52                   ` Eli Zaretskii
2008-09-26 20:57           ` Daniel Jacobowitz
2008-10-01  5:39           ` Joel Brobecker
2008-10-04 22:14             ` Thiago Jung Bauermann
2008-09-25  4:49   ` Thiago Jung Bauermann
2008-09-26 23:08     ` Tom Tromey
2008-10-01  5:48   ` Joel Brobecker [this message]
2008-10-01 15:12     ` Tom Tromey
2008-10-01 16:04       ` Joel Brobecker
2008-10-04 22:21       ` Daniel Jacobowitz
2008-10-05  0:00         ` Tom Tromey
2008-10-06 18:49           ` Joel Brobecker
2008-10-06 21:15           ` Daniel Jacobowitz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20081001054741.GE3665@adacore.com \
    --to=brobecker@adacore.com \
    --cc=bauerman@br.ibm.com \
    --cc=gdb-patches@sourceware.org \
    --cc=tromey@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox