Skip to content

docs: clear remaining Doxygen warnings#90

Merged
csparker247 merged 5 commits into
developfrom
docs/fix-doxygen-warnings
Jun 13, 2026
Merged

docs: clear remaining Doxygen warnings#90
csparker247 merged 5 commits into
developfrom
docs/fix-doxygen-warnings

Conversation

@csparker247

@csparker247 csparker247 commented Jun 13, 2026

Copy link
Copy Markdown
Member

Summary

Clears all 58 pre-existing Doxygen warnings (58 → 0) in the public headers, with no API changes.

Categories addressed

  • Broken @copydoc target in HalfEdgeMesh::insert_vertices (initializer_list overload): replaced with an inline brief.
  • Missing @param mesh on AngleBasedLSCM::Compute(mesh, pin0Idx, pin1Idx): added.
  • HalfEdgeMesh::WheelIterator / EdgesIterator: documented all members inline (operator* overloads, FaceVecIter typedef, iterator state, advance_* helpers).
  • detail::Range / detail::FilteringIterator: documented all members inline (range endpoints, iterator typedefs, predicate state, advance helper).
  • detail::hlscm::Quadric operators (+=, friend +): brief one-liners.
  • detail::hlscm::DecimationMesh: documented every member of the private section (helper methods, flat-array state, scratch buffers).
  • HierarchicalLSCM private ComputeImpl, levelRatio_, minCoarseVertices_: brief one-liners.

Conventions

  • No @internal tags reintroduced (PR refactor(A8): extract shared LSCM system-building utility #88 removed those project-wide).
  • No \cond INTERNAL blocks. The project deliberately doesn't surface a "concept of internal docs" — the detail:: namespace is the only API-stability signal, and for private members of public classes the consistent answer is brief inline docs rather than hiding them.
  • EXTRACT_PRIVATE = YES and INTERNAL_DOCS = NO are unchanged.
  • single_include/OpenABF/OpenABF.hpp regenerated via the amalgamation script.

Test plan

  • cmake --build /tmp/openabf-doxy --target docs — 58 warnings → 0
  • cmake --build build_claude succeeds in multi-header mode
  • ctest --output-on-failure -j 4 — 6/6 tests pass (includes OpenABF_TestParameterization)
  • git clang-format clean on all touched headers
  • single_include/OpenABF/OpenABF.hpp regenerated and included

🤖 Generated with Claude Code

csparker247 and others added 5 commits June 13, 2026 07:56
Add the missing @param entry for the mesh argument of the
explicit-pin-indices overload of AngleBasedLSCM::Compute() so Doxygen
no longer warns about an undocumented parameter.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Replace broken @copydoc target on the initializer_list overload of
  insert_vertices() with an inline brief.
- Add /// docs for the non-const operator*() overloads and the
  FaceVecIter typedef of WheelIterator/EdgesIterator.
- Wrap private members of WheelIterator/EdgesIterator and the
  detail::Range / detail::FilteringIterator scratch fields in
  \cond INTERNAL / \endcond so Doxygen skips genuinely internal
  implementation details.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add one-line briefs for the Quadric +=/+ operators and the private
  ComputeImpl, levelRatio_, and minCoarseVertices_ members of
  HierarchicalLSCM.
- Wrap the private section of detail::hlscm::DecimationMesh (helper
  methods, flat-array state, and scratch buffers) in
  \cond INTERNAL / \endcond so Doxygen skips the internal members of
  this internal helper class.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Re-run thirdparty/amalgamate/amalgamate.py after the documentation fixes
to the multi-header sources.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The previous commits used \cond INTERNAL to hide scratch members,
iterator state, and the entire DecimationMesh private section from
Doxygen output. That reintroduces a "concept of internal docs" via
a different mechanism — which the project deliberately does not
want. The detail:: namespace is the only signaling convention; for
private members of public classes, brief inline docs are the
consistent answer.

Replace each \cond INTERNAL block with one-line documentation for
the members it was hiding (advance helpers, iterator position
state, DecimationMesh flat-array fields, scratch buffers). Docs
remain at zero warnings.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@csparker247 csparker247 merged commit e60c164 into develop Jun 13, 2026
16 checks passed
@csparker247 csparker247 deleted the docs/fix-doxygen-warnings branch June 13, 2026 12:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant