Note that there are some explanatory texts on larger screens.

plurals
  1. PODoxygen copydoc tag to reuse code examples
    text
    copied!<p>I want to reuse a block of example code using the \copydoc tag.</p> <p>To explain the problem. Let's say I have two documented functions:</p> <pre><code>/** Aquires resource. */ Resource* AquireResource( int id ); /** Releases resource.*/ void ReleaseResource( Resource* res ); </code></pre> <p>In many cases I want to put in a small code example of how to use the function in a context, which often involves using a range of functions which all might be sufficiently depicted by the same code example, for instance:</p> <pre><code>/** Aquires resource. * * \par Example: * \code * Resource* res = AquireResource( 42 ); * ReleaseResource( res ); * \endcode */ Resource* AquireResource( int id ); /** Releases resource. * * \par Example: * \code * Resource* res = AquireResource( 42 ); * ReleaseResource( res ); * \endcode */ void ReleaseResource( Resource* res ); </code></pre> <p>So the code example is duplicated, not good. I want to use copydoc, something like this:</p> <pre><code>/** \page ResourceExampleTag * \code * Resource* res = AquireResource( 42 ); * ReleaseResource( res ); * \endcode */ /** Aquires resource. * * \par Example: * \copydoc ResourceExampleTag */ Resource* AquireResource( int id ); /** Releases resource. * * \par Example: * \copydoc ResourceExampleTag */ void ReleaseResource( Resource* res ); </code></pre> <p>I.e. code example in one place, reused in other places.</p> <p>This is actually as far as I have gotten, but I'm not satisfied with it since I don't know how to hide the dummy page 'ResourceExampleTag' I'm creating to copy from. So somewhere in the resulting documentation there's a page with some code completely out of context. As far as I can see the thing here is to find a tag which can be referenced by copydoc and which doesn't render any content on itself. However, that's just my line of thought, there might be far better ones.</p> <p>I can also mention that I (for several reasons I won't bother to go into) don't wish to use the \example tag with external example code files. </p> <p>Thanks.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload