-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hannes Magnusson wrote:
> We _could_ store the classname in the classsynopsisinfo element as remap
> <classsynopsisinfo role="comment" remap="baseclassname">Inherited
> methods</classsynopsisinfo>
> <xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook)
> xpointer(id('class.baseclassname')/db:refentry/db:[EMAIL 
> PROTECTED]'description']/descendant::db:methodsynopsis[1])"
> />
> 
> And then use classsynopsis instead of methodsynopsis for the method docs..

I don't think, semantically, this makes sense. If we're displaying only
a single method, we should use only methodsynopsis; if we're displaying
a class, we should use classsynopsis with methodsynopsis includes.

In fact, I think that this would be exactly how the renderer would know
when to drop it. When PhD enters a classsynopsis node, it looks for the
contents <classname> and stores that as currentClass in the tmp array.
Then, as we encounter methodname, we parse the verbose name into a
compact name based on currentClass. And while we're at it, we can check
for the presence of a static indicator (I'm not sure which tag
specifically this would be for) and reformat accordingly if necessary.

The primary disadvantages I see with this are:
1. It slightly magical. It doesn't require any spaghetti function call
paths, but it does introduce a little more complexity to the system
2. The individual function XML files don't explicitly state what class
they belong to. I'm not sure what the conventions of DocBook are, but I
think our current ClassName::methodName scheme is pretty good, since it
is guaranteed to a be a unique identifier.

A slightly irrelevant question: How are we handling namespaces?

- --
 Edward Z. Yang               Portable GnuPG: 0x995A2C84
 HTML Purifier <http://htmlpurifier.org> Anti-XSS Filter
 [[ C8D5 9E3C 15AD 1467 5561 2C0E 719A 2D9D 995A 2C84 ]]
      This Message Courtesy of Thunderbird Portable
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)

iD8DBQFHKgozcZotnZlaLIQRAmiVAKCMMvOGCfRn2+1suyyooZDTa+mNjACfR4io
1lPhT0v4qr8PX17Nk1JxhZQ=
=MTPg
-----END PGP SIGNATURE-----

Reply via email to