On Wed, Sep 11, 2013 at 05:15:57PM +0200, Michael Stahl wrote:
On 10/09/13 15:55, Lionel Elie Mamane wrote:
On Wed, Sep 04, 2013 at 11:56:07PM +0200, Andras Timar wrote:
I updated api.libreoffice.org from master.
We seem to have lost the feature of e.g.
http://www.openoffice.org/api/docs/common/ref/com/sun/star/util/Date-xref.html
that is the list of all the places in the API where this type is used.
well i though that stuff is more easily found with "git grep" anyway so
didn't bother to invest any time in that.
"git grep" is not obvious / easy to use for that, and possibly not
completely possible to use. Case in point:
git grep com::sun::star::util::Date
# drats, also occurrences of shows com::sun::star::util::DateTime
git grep -E 'com::sun::star::util::Date[[:space:]]'
# drats, misses com/sun/star/util/DateTimeWithTimezone.idl
( git grep -E 'com::sun::star::util::Date[[:space:]]' offapi; \
git grep -E 'sun::star::util::Date[[:space:]]' offapi/com; \
git grep -E 'star::util::Date[[:space:]]' offapi/com/sun; \
git grep -E 'util::Date[[:space:]]' offapi/com/sun/star; \
git grep -E 'Date[[:space:]]' offapi/com/sun/star/util; \
) | $PAGER
# starts to be quite complicated... and lots to type...
# need to write a wrapper script that creates the right series
# of "git grep"...
# and gives duplicates... So something like
( git grep -E 'com::sun::star::util::Date[[:space:]]' offapi; \
git grep -E 'sun::star::util::Date[[:space:]]' offapi/com; \
git grep -E 'star::util::Date[[:space:]]' offapi/com/sun; \
git grep -E 'util::Date[[:space:]]' offapi/com/sun/star; \
git grep -E 'Date[[:space:]]' offapi/com/sun/star/util; \
) | sort -u | $PAGER
And still, this solution could still have false positives!
(although this particular example does not). E.g. imagine a
com::sun::star::sdbc::util::Date, which is referred to in
com/sun/star/sdbc/Foo.idl as:
[property] util::Date Bar;
it would be matched by the
git grep -E 'util::Date[[:space:]]' offapi/com/sun/star
And still, this solution still shows matches within comments in .idl
files (this example does not show any only because all matches are at
the end of a sentence and thus are followed by a fullstop and not
space). But e.g.
git grep -E com::sun::star::util::XCloneable'[[:space:]]'
has *five* such false positives, for only *one* true positive. Bad
score.
So, no, really, IMHO "git grep" is not a proper substitute for
doxygen's true parsing, handling of such namespacing, comments, etc.
The doxygen graphs seem to be "collapsed" when they get too big... Not
sure I like that...
Compare
http://www.openoffice.org/api/docs/common/ref/com/sun/star/util/XCloneable-xref.html#SupportingServices
http://www.openoffice.org/api/docs/common/ref/com/sun/star/util/XCloneable-xref.html#Deriveds
and
http://api.libreoffice.org/docs/idl/ref/interfacecom_1_1sun_1_1star_1_1util_1_1XCloneable.html
The first shows e.g.
::com::sun::star::report::XReportControlModel
::com::sun::star::report::XFixedLine
::com::sun::star::report::XFixedText
::com::sun::star::report::XFormattedField
::com::sun::star::report::XImageControl
::com::sun::star::report::XShape
::com::sun::star::report::XReportDefinition
::com::sun::star::awt::UnoControlNumericFieldModel
::com::sun::star::awt::UnoControlPatternFieldModel
::com::sun::star::awt::UnoControlProgressBarModel
::com::sun::star::awt::UnoControlRadioButtonModel
::com::sun::star::awt::UnoControlRoadmapModel
::com::sun::star::awt::UnoControlScrollBarModel
But these do not appear in the doxygen graph because it is "cut" at
their parent.
I don't find that feature in the Doxygen output. Is it just my
blindness or have we "voluntarily" regressed here?
personally i think the inheritance graphs from Doxygen are a lot more
useful than the "Uses" pages from autodoc.
The inheritance graphs are nice, and they give about the same
information as "Derived Interfaces" and "Services which Support this
Interface" sections, with a prettier layout and with the added bonus
that the "Services which Support this Interface" part is more
structured (shows inheritance path instead of flattening it out).
*But* they do not give _at_ _all_ the information from "Uses as Return
Type", "Uses as Parameter" nor "Uses as Data Type", where as explained
above, I don't see "git grep" as a good replacement.
--
Lionel
Context
- Re: Please regenerate api.libreoffice.org from libreoffice-4-1 branch (continued)
doxygen API doc: list of uses? · Lionel Elie Mamane
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.