Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-6120

Clarify that $ is the separator character which should be used for the external names of static nested classes

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 10.10.1.1
    • 10.10.2.0, 10.11.1.1
    • Documentation
    • None

    Description

      Various user-defined objects can be created which are bound to Java methods or classes via "external name" clauses. It's easy to mis-phrase the Java class name in the "external name" clause if the class is a static nested class. The affected objects include:

      o Functions
      o Procedures
      o Types
      o Aggregates

      Consider the following class:

      public class TestFuncs
      {
      public static final class Foo
      {
      public static double pow( double base, double power )

      { return Math.pow( base, power ); }

      }
      }

      If the pow method is bound to a user-defined function via a CREATE FUNCTION command, its external name should be TestFuncs$Foo.pow, NOT TestFuncs.Foo.pow.

      We should add a section to the Reference Manual clarifying how to phrase the external name if it includes a reference to a static nested class. The detailed sections for the various user-defined objects can then refer to this new section.

      Attachments

        1. DERBY-6120-2.zip
          9 kB
          Camilla Haase
        2. DERBY-6120-2.stat
          0.1 kB
          Camilla Haase
        3. DERBY-6120-2.diff
          1 kB
          Camilla Haase
        4. DERBY-6120.zip
          17 kB
          Camilla Haase
        5. DERBY-6120.stat
          0.3 kB
          Camilla Haase
        6. DERBY-6120.diff
          17 kB
          Camilla Haase

        Activity

          People

            chaase3 Camilla Haase
            rhillegas Richard N. Hillegas
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: