[Mono-docs-list] [PATCH] Generics Support for monodoc/tools
Joshua Tauberer
jit at occams.info
Thu Oct 5 07:32:35 EDT 2006
Jonathan Pryor wrote:
> On Wed, 2006-10-04 at 17:28 -0400, Joshua Tauberer wrote:
>> Another thing... I wonder if it would make sense to rename the index.xml
>> Name and File attributes to DisplayName and Signature to make what they
>> represent clearer, and, I think, because the File attribute is used not
>> just for file locations but also for matching signatures in crefs.
>
> I'm not sure DisplayName is a significant improvement over Name. I
> actually prefer the shorter names, if possible.
>
> You make a good argument for @File, though, as it's really used for all
> type matching. I don't like Signature though, as a "signature" is
> frequently used to refer to the prototype of a method, and this is
> something different.
>
> Perhaps CanonicalName?
To me, it isn't obvious what the difference is between Name and
CanonicalName. There must be a name for what Type`1 is actually called,
versus Type<A>.
>> And the File attribute should be mandatory (i.e. inserted on update)
>> since monodocs2html assumes a File attribute is present on all type nodes.
>
> It should be easy to get monodocs2html to "fallback" to using @Name if
> @File is empty or doesn't exist, so I don't find this a credible reason
> to require the presence of @File.
Sure, if monodocs2html can fall back, that's a-ok with me.
>> Also, do you know of a reason for *sticking* with +'s in nested types?
(snip)
> I know of a good reason: I *tried* that, and it failed *dismally* when I
> tried to get things working in monodoc/engine.
>
> Simple experiment: take any monodocer-generated directory tree with a
> nested type, and edit the Namespace/Outer+Inner.xml file to change:
>
> <Type Name="Outer+Inner" FullName="Namespace.Outer+Inner">
>
> to
>
> <Type Name="Outer.Inner" FullName="Namespace.Outer.Inner">
>
> Then edit the file within monodoc: monodoc --edit dirname
>
> When you view the documentation for that file, instead of getting a link
> for the "Namespace Namespace", you'll get a link for the
> "Namespace.Outer" namespace. This is because monodoc/engine uses
> everything before the last '.' as the namespace, and everything after it
> as the type name.
As long as one has the type's "Name", you can just strip that off to get
the namespace, rather than using periods: substring(@FullName, 0,
string-length(@FullName) - string-length(@Name) - 1)
I guess the +/. issue is mostly orthogonal to getting generics working
anyway...
--
- Joshua Tauberer
http://razor.occams.info
"Strike up the klezmer and start acting like a man. You're
about to have a truth-mitzvah." -- The Colbert Report
More information about the Mono-docs-list
mailing list