docca icon indicating copy to clipboard operation
docca copied to clipboard

detail identifiers in public APIs could say __implementation_defined__

Open vinniefalco opened this issue 4 years ago • 2 comments

For example here

template<class CharSet>
detail::pct_encoded_bnf<CharSet>
pct_encoded_bnf(
    CharSet const& cs,
    pct_encoded_str& t) noexcept;

Currently the workaround is to write

template<class CharSet>
#ifdef BOOST_URL_DOCS
__implementation_defined__
#else
detail::pct_encoded_bnf<CharSet>
#endif
pct_encoded_bnf(
    CharSet const& cs,
    pct_encoded_str& t) noexcept;

vinniefalco avatar Nov 02 '21 00:11 vinniefalco

Are there any existing examples of this workaround in the URL library? (I'm not finding any.) That's fine if not, but if we do have existing examples, they would serve as good test cases for me.

evanlenz avatar Jan 24 '22 07:01 evanlenz

I didn't like public functions returning types that were private so I refactored Boost.URL to not do this. We can put a hold on this issue until it comes up again :)

vinniefalco avatar Jan 24 '22 16:01 vinniefalco