Class ExprTripleTerm

  • All Implemented Interfaces:
    Expr

    public class ExprTripleTerm
    extends ExprNode
    RDF-star triple term in an expression (AKA embedded triple). It can still have variables in it.
    • Constructor Detail

      • ExprTripleTerm

        public ExprTripleTerm​(Node_Triple tripleTerm)
    • Method Detail

      • getNode

        public Node getNode()
      • getTriple

        public Triple getTriple()
      • hashCode

        public int hashCode()
        Description copied from interface: Expr
        Expr are used in both syntax and algebra. There is no syntax to algebra translation step because the parser uses operator precedence to build the right evaluation structure directly.

        The exceptions to this are the NOT EXISTS and EXISTS expressions which involve a query pattern. As a result there are different ways in syntax to produce the same algebra form.

        Two Expr are considered equal if they are equal as algebra expressions. hashCode and equals must implement that.

        There is also equalsBySyntax. Because two different syntax forms can yield the same algebra, but two different algebra forms must be different syntax, equalsBySyntax implies equals (by alegbra).

        Hence, different hashCode => not equalsBySyntax.

        Specified by:
        hashCode in interface Expr
        Specified by:
        hashCode in class ExprNode
      • equals

        public boolean equals​(Expr obj,
                              boolean bySyntax)
        Description copied from interface: Expr
        General equality operation - consider this to be 'protected'
        Specified by:
        equals in interface Expr
        Specified by:
        equals in class ExprNode