On 01/16/2018 01:43 PM, Nash, George wrote:
>> I don't know if it's correct for any headers to be included in both doxygen 
>> API lists, but here is the duplicated set:
> 
> If the C APIs are likely to be used in the C++ programs then it does make 
> since for the header to be in both C and C++ doxygen. Figuring out which 
> headers should go in both should probably be discussed as well. As a general 
> rule we don't want to force the C++ programmer to jump back and forth to the 
> C and C++ API documentation. So C headers that are used in C++ programs would 
> get included in the C++ Doxygen output. It will be optimized as C++ code 
> which will sometimes produce less than ideal documentation.

yeah, I have no answer for the "things from the C api that are used in
the C++ api", I had thought about those but wasn't clear how to
determine what they were.

> 
>> I hate to ask for "let's go over this whole list again", but I think we need 
>> to. Do install rules need to be added for all of the above, or are there 
>> some that accidentally crept in to the API lists for doxygen?
> 
> Please ask away this is the only way this will be improved. The API lists for 
> doxygen was done by me with similar discussion  to the one we are having now. 
> I tried really hard to only include headers that were installed but there was 
> a lot of conversation back and forth and I likely made mistakes.  I was 
> focusing more on the errors produced when running Doxygen.  Which does mean 
> we probably got some headers that should not have been included. As you have 
> clearly indicated.
> 
> My first instinct is to see if we can removed the not installed headers from 
> the doxygen output. If Doxygen reports errors we work from there.

I'm not sure it's a question of "mistakes", it looks to me like what is
installed may have evolved a little.  I did mention that it would be
nice to have a clear marker in headers that the contents are intended
for the API so we're not guessing (e.g. waiting to see if doxygen throws
errors), but that didn't seem to gain traction.

Later this week maybe I can try some experiments with doxygen, but I'm
not sure it answers much: if B depends on A then dropping A will cause
trouble, but if B is an "endpoint" in the sense that nothing else
depends on it, then it can be dropped from doxygen without proving that
it was or was not intended to be part of the API.

_______________________________________________
iotivity-dev mailing list
[email protected]
https://lists.iotivity.org/mailman/listinfo/iotivity-dev

Reply via email to