Class NormalizeSpace_1.NormalizeSpaceFnElaborator

    • Constructor Detail

      • NormalizeSpaceFnElaborator

        public NormalizeSpaceFnElaborator()
    • Method Detail

      • elaborateForUnicodeString

        public UnicodeStringEvaluator elaborateForUnicodeString​(boolean zeroLengthWhenAbsent)
        Description copied from class: Elaborator
        Get a function that evaluates the underlying expression in the form of a unicode string, this being the result of applying fn:string() to the result of the expression.
        Specified by:
        elaborateForUnicodeString in class StringElaborator
        Parameters:
        zeroLengthWhenAbsent - if true, then when the result of the expression is an empty sequence, the result of the StringEvaluator should be a zero-length string. If false, the return value should be null. For an expression or function that never returns an empty sequence (for example, a call on string() or normalize-space()), the argument has no effect.
        Returns:
        an evaluator for the expression that returns a string.
      • elaborateForString

        public StringEvaluator elaborateForString​(boolean zeroLengthWhenAbsent)
        Description copied from class: Elaborator
        Get a function that evaluates the underlying expression in the form of a Java string, this being the result of applying fn:string() to the result of the expression.
        Overrides:
        elaborateForString in class Elaborator
        Parameters:
        zeroLengthWhenAbsent - if true, then when the result of the expression is an empty sequence, the result of the StringEvaluator should be a zero-length string. If false, the return value should be null.
        Returns:
        an evaluator for the expression that returns a string.
      • elaborateForBoolean

        public BooleanEvaluator elaborateForBoolean()
        Get a function that evaluates the underlying expression in the form of a boolean, this being the effective boolean value of the expression.

        This method is implemented for normalize-space() because it is a common idiom to use normalize-space() in a boolean context to test whether a value contains non-whitespace characters, and this can be done without actually constructing the normalized string.

        Overrides:
        elaborateForBoolean in class StringElaborator
        Returns:
        an evaluator for the expression that returns a boolean.