website
website copied to clipboard
Documentation doesn't show inherited interface methods / properties
@IanMercer commented on Thu Aug 18 2016
The documentation for IFile doesn't show an Exists property, presumably because that property was inherited from IFileSystemInfo.
The documentation doesn't show that IFile inherits from IFileSystemInfo.
Either the documentation should show the inheritance relationship of IFile to IFileSystemInfo or it should automatically show all the methods and interfaces from any interfaces that are inherited.
FWIW, new docs clearly show the inheritance relationship (even considering spitting out a diagram) but do not show inherited members inline in the inheriting type member list right now.
I rather like the way MSDN shows inherited members with a note indicating where they came from. On MSDN, clicking through to the inherited member goes to the details page for the declaring type. I'll circle back around to this issue to see if we can do something similar.
The new documentation does show inherited members for types (see http://cakebuild.net/api/Cake.Core.IO/DirectoryPath/). However, inherited members on interfaces still isn't shown.
To be honest, I'm torn about this one. Does an interface that implements other interfaces count as "inheritance"? Should it be shown as such for the docs? What do other docs do? If so, that raises some interesting questions like what if an interface implements two other interfaces with colliding members? What should we show? And which base interface should it come from?
I could use some feedback on this one, both for Cake and in general.
Related Wyam issue: https://github.com/Wyamio/Wyam/issues/408
Moved upstream tracking issue to Wyamio/Wyam#480
@daveaglick https://github.com/Wyamio/Wyam/issues/408 and https://github.com/Wyamio/Wyam/issues/480 no longer exist. Do you know which is the correct upstream issue?
That's a great question! I think the issue numbers are the same in Statiq.Web since the entire repository was moved.
Here's 408: https://github.com/statiqdev/Statiq.Web/issues/408
And that's closed in favor of 480: https://github.com/statiqdev/Statiq.Web/issues/480
These will likely move to the Statiq.Docs repo too at some point once I start working on that and triaging relevant issues over. I think in that case a redirect will be setup since the issues (and not the whole repository) are moving.