Checkout Tools
  • last updated 3 hours ago
Constraints: committers
Constraints: files
Constraints: dates
Fix some Doxygen mark-up.
  1. … 2 more files in changeset.
Make the revision kind in SVN++ svn::revision explicitly immutable.

It's illogical to be able to even theoretically change the kind of a revision

object, so we make that restriction explicit by making the class member const.

[in subversion/bindings/cxx]

* include/svnxx/revision.hpp: Include <new> for placement-new.

(revision::tag): Make this immutable.

(revision::operator=): New; work around the kind tag's immutability by

destroying the object and creating a new object in place.

* tests/test_revision.cpp

(assignment): New test case.

  1. … 1 more file in changeset.
Move (some of the) standalone types into separate implementation headers

so that SVN++ can use them directly without exposing APR or other dependencies.

* subversion/include/svn_opt_impl.h: New file.

(svn_opt_revision_kind): Moved here from svn_opt.h

* subversion/include/svn_opt.h: Include svn_opt_impl.h.

(svn_opt_revision_kind): Moved away.

* subversion/include/svn_types_impl.h: New file.

(svn_error_t): Forward declaration.

(svn_node_kind_t, svn_tristate_t,

svn_revnum_t, SVN_INVALID_REVNUM, svn_depth_t): Moved here from svn_types.h.

* subversion/include/svn_types.h: Include svn_types_impl.h.

(svn_node_kind_t, svn_tristate_t,

svn_revnum_t, SVN_INVALID_REVNUM, svn_depth_t): Moved away.

[in subversion/bindings/cxx]

* include/svnxx/depth.hpp: Include svn_types_impl.h.

(depth): Define enum constant values from svn_depth_t.

* include/svnxx/exception.hpp: Include svn_types_impl.h.

(detail::svn_error): Remove forward declaration.

(detail::error_ptr): Use svn_error_t directly.

* include/svnxx/revision.hpp: Include svn_opt_impl.h and svn_types_impl.h.

(revision::number): Use svn_revnum_t for the underlying type and

SVN_INVALID_REVNUM for the 'invalid' enum constant value.

(revision::kind): Define enum constant values from svn_opt_revision_kind.

* include/svnxx/tristate.hpp: Include svn_types_impl.h.

(tristate::value): Define enum constant values from svn_tristate_t.

* src/exception.cpp

(detail::svn_error): Removed.

(impl::checked_call): Use svn_error_t instead of detail::svn_error.

  1. … 8 more files in changeset.
* subversion/bindings/cxx/include/svnxx/revision.hpp

(revision, revision::number): Fix docstrings; no functional change.

Minor documentation tweaks in SVN++.

[in subversion/bindings/cxx/include]

* svnxx.hpp: Add @file tag. Remove C++ check.

* svnxx/depth.hp: Add @file tag. Fix comment at end of include guard.

* svnxx/exception.hpp: Add @file tag. Change the title of the

svnxx_exceptions group and add a @brief description to avoid seeing the

heading-formatted description in summary lists. Also explain that

the implementation can throw standard exceptions.

* svnxx/init.hpp: Add @file tag. Remove C++ check.

* svnxx/noncopyable.hpp: Add @file tag.

* svnxx/tristate.hpp: Add @file tag. Remove C++ check.

  1. … 6 more files in changeset.
Add SVN++ encapsulation of svn_revnum_t and svn_opt_revision_t.

[in subversion/bindings/cxx]

* include/svnxx/revision.hpp: New.

* src/private/revision-private.hpp: New.

* src/private.hpp: Include revision-private.hpp.

* src/revision.cpp: New.

* tests/test_revision.cpp: New.

  1. … 4 more files in changeset.