roycezhc / doclava

Automatically exported from code.google.com/p/doclava
Apache License 2.0
0 stars 0 forks source link

The interface hierarchy is distinct from the class hierarchy (and our documentation should reflect that) #15

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
As reported as internal issue 2739691 by enh,

[random example] AbstractInterruptibleChannel isn't a subclass of Closeable 
(http://www.corp.google.com/~dalvik-prebuild/offline-sdk/reference/java/io/Close
able.html):

java.io.Closeable
Known Indirect Subclasses
AbstractInterruptibleChannel, AbstractSelectableChannel, 
AssetFileDescriptor.AutoCloseInputStream, 
AssetFileDescriptor.AutoCloseOutputStream, AssetManager.AssetInputStream, 
BackupDataInputStream, Base64InputStream, Base64OutputStream, 
BluetoothServerSocket, BluetoothSocket, BufferedInputStream, 
BufferedOutputStream, BufferedReader, BufferedWriter, ByteArrayInputStream, 
ByteArrayOutputStream, ByteChannel, Channel, CharArrayReader, CharArrayWriter, 
CheckedInputStream, CheckedOutputStream, ChunkedInputStream, 
ChunkedOutputStream, CipherInputStream, CipherOutputStream, 
ContentLengthInputStream, ContentLengthOutputStream, DataInputStream, 
DataOutputStream, DatagramChannel, DeflaterInputStream, DeflaterOutputStream, 
DigestInputStream, DigestOutputStream, EofSensorInputStream, FileChannel, 
FileInputStream, FileOutputStream, FileReader, FileWriter, FilterInputStream, 
FilterOutputStream, FilterReader, FilterWriter, Formatter, GZIPInputStream, 
GZIPOutputStream, GatheringByteChannel, IdentityInputStream, 
IdentityOutputStream, InflaterInputStream, InflaterOutputStream, InputStream, 
InputStreamReader, InterruptibleChannel, JarInputStream, JarOutputStream, 
LineNumberInputStream, LineNumberReader, ObjectInputStream, ObjectOutputStream, 
OutputStream, OutputStreamWriter, ParcelFileDescriptor.AutoCloseInputStream, 
ParcelFileDescriptor.AutoCloseOutputStream, Pipe.SinkChannel, 
Pipe.SourceChannel, PipedInputStream, PipedOutputStream, PipedReader, 
PipedWriter, PrintStream, PrintWriter, PushbackInputStream, PushbackReader, 
RandomAccessFile, ReadableByteChannel, Reader, ScatteringByteChannel, 
SelectableChannel, SequenceInputStream, ServerSocketChannel, SocketChannel, 
StringBufferInputStream, StringReader, StringWriter, WritableByteChannel, 
Writer, ZipInputStream, ZipOutputStream

"Implemented By" would be less unreasonable.

it might also be worth having "Direct Subinterfaces" and/or "Indirect 
Subinterfaces". for example, ByteChannel really is a subinterface of 
ReadableByteChannel but FileChannel is an implementor of ReadableByteChannel, 
yet we group them together as if they're all the same 

This isn't just a grammatical nit that we could fix by using vaguer wording: 
looking for implementing classes and looking for subinterfaces are two distinct 
tasks, and the reader might reasonably be attempting to perform either of them.

Original issue reported on code.google.com by jessewil...@google.com on 2 Sep 2010 at 9:11