Derby
  1. Derby
  2. DERBY-4412

Make getNegation() abstract in BinaryComparisonOperatorNode and UnaryComparisonOperatorNode

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Trivial Trivial
    • Resolution: Fixed
    • Affects Version/s: 10.6.1.0
    • Fix Version/s: 10.6.1.0
    • Component/s: SQL
    • Labels:
      None

      Description

      Both BinaryComparisonOperatorNode and UnaryComparisonOperatorNode have a method called getNegation() with the following code:

      /* Keep the compiler happy - this method should never be called.

      • We should always be calling the method in a sub-class.
        */
        if (SanityManager.DEBUG)
        SanityManager.ASSERT(false,
        "expected to call getNegation() for subclass " +
        getClass().toString());
        return this;

      Instead of relying on asserts to detect missing method overrides at run-time, we should make the methods abstract so that such errors are detected by the compiler.

      1. abstract.diff
        2 kB
        Knut Anders Hatlen

        Activity

        Hide
        Knut Anders Hatlen added a comment -

        The attached patch makes the two methods abstract. Also, the UnaryComparisonOperatorNode class had to be made abstract. BinaryComparisonOperatorNode was already abstract. I've started the regression tests.

        Show
        Knut Anders Hatlen added a comment - The attached patch makes the two methods abstract. Also, the UnaryComparisonOperatorNode class had to be made abstract. BinaryComparisonOperatorNode was already abstract. I've started the regression tests.
        Hide
        Knut Anders Hatlen added a comment -

        All the regression tests passed.

        Show
        Knut Anders Hatlen added a comment - All the regression tests passed.
        Hide
        Knut Anders Hatlen added a comment -

        Committed revision 827035.

        Show
        Knut Anders Hatlen added a comment - Committed revision 827035.

          People

          • Assignee:
            Knut Anders Hatlen
            Reporter:
            Knut Anders Hatlen
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development