Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-5754

Allow "$" in expression variables

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 4.9, 6.0
    • modules/expressions
    • None
    • New

    Description

      The current expressions modules only allows ASCII letters, ASCII digits and the underscore in variable names.

      It is quite common to javascript developers to use also the dollar sign as identifier part (especially at the beginning of an identifier, see the famous "jQuery" $-function). This would allow bindings like "$score".

      The official ECMAScript spec allows the $: http://www.ecma-international.org/publications/files/ECMA-ST-ARCH/ECMA-262,%203rd%20edition,%20December%201999.pdf (see section 7.6)

      The other stuff there like unicode escapes and all unicode letter crazyness should be excluded for simplicity.

      Adding the "$" is just a one-line change in the grammar and does not conflict with anything else, because "$" is not a special character to javascript.

      Attachments

        1. LUCENE-5754.patch
          5 kB
          Uwe Schindler
        2. LUCENE-5754.patch
          5 kB
          Uwe Schindler

        Issue Links

          Activity

            People

              uschindler Uwe Schindler
              uschindler Uwe Schindler
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Slack

                  Issue deployment