Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-9932

Make afw classes RFC-209 compliant

    XMLWordPrintable

    Details

    • Story Points:
      6
    • Sprint:
      AP S18-1, AP S18-2
    • Team:
      Alert Production

      Description

      RFC-209 requires that all classes make use of explicit copy-constructors and assignment operators, as enabled by C++11. We have a large body of legacy code, particularly in afw, that does not follow this guideline.

      All afw classes should be given explicit (often default) default constructors, copy-constructors, and assignment operators, and equivalent C++98 tricks like private undefined constructors should be removed. Per Effective Modern C++, private undefined constructors shall be replaced with public deleted constructors.

      For consistency's sake, the default statement shall be included in the header file if most existing constructors are inline and in the implementation file otherwise. delete shall always be given in the header, since the unavailability of a method is part of the API.

        Attachments

          Issue Links

            Activity

            Hide
            krzys Krzysztof Findeisen added a comment -

            Hi Jim Bosch, would you be willing to review this ticket? The actual code changes are quite repetitive, so just an overview is fine.

            Show
            krzys Krzysztof Findeisen added a comment - Hi Jim Bosch , would you be willing to review this ticket? The actual code changes are quite repetitive, so just an overview is fine.
            Hide
            jbosch Jim Bosch added a comment -

            Review complete.  Lots of minor comments on the PR.

            Show
            jbosch Jim Bosch added a comment - Review complete.  Lots of minor comments on the PR.
            Hide
            krzys Krzysztof Findeisen added a comment -

            Merged. Thanks for the feedback!

            Show
            krzys Krzysztof Findeisen added a comment - Merged. Thanks for the feedback!

              People

              Assignee:
              krzys Krzysztof Findeisen
              Reporter:
              krzys Krzysztof Findeisen
              Reviewers:
              Jim Bosch
              Watchers:
              Jim Bosch, Krzysztof Findeisen
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Jenkins

                  No builds found.