Class NGramExpression

java.lang.Object
com.yahoo.vespa.objects.Selectable
com.yahoo.vespa.indexinglanguage.expressions.Expression
com.yahoo.vespa.indexinglanguage.expressions.NGramExpression

public final class NGramExpression extends Expression
A filter which splits incoming text into n-grams.
Author:
bratseth
  • Constructor Details

    • NGramExpression

      public NGramExpression(com.yahoo.language.Linguistics linguistics, int gramSize)
      Creates an executable ngram expression
      Parameters:
      linguistics - the gram splitter to use, or null if this is used for representation and will not be executed
      gramSize - the gram size
  • Method Details

    • isMutating

      public boolean isMutating()
      Description copied from class: Expression
      Returns whether this expression outputs a different value than what it gets as input. Annotating a string value does not count as modifying it.
      Overrides:
      isMutating in class Expression
    • getLinguistics

      public com.yahoo.language.Linguistics getLinguistics()
    • getGramSize

      public int getGramSize()
    • setInputType

      public com.yahoo.document.DataType setInputType(com.yahoo.document.DataType inputType, TypeContext context)
      Description copied from class: Expression
      Sets the input type of this and returns the resulting output type, or null if it cannot be uniquely determined. Subtypes may implement this by calling setInputType(inputType, requiredType, VerificationContext context).
      Overrides:
      setInputType in class Expression
    • setOutputType

      public com.yahoo.document.DataType setOutputType(com.yahoo.document.DataType outputType, TypeContext context)
      Description copied from class: Expression
      Sets the output type of this and returns the resulting input type, or null if it cannot be uniquely determined. Subtypes implement this by calling setOutputType(outputType, requiredType, VerificationContext context).
      Overrides:
      setOutputType in class Expression
    • doExecute

      protected void doExecute(ExecutionContext context)
      Specified by:
      doExecute in class Expression
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object