Class IrOptional

java.lang.Object
org.eclipse.rdf4j.queryrender.sparql.ir.IrNode
org.eclipse.rdf4j.queryrender.sparql.ir.IrOptional

public class IrOptional extends IrNode
Textual IR node for an OPTIONAL block. The body is always printed with braces even when it contains a single line to keep output shape stable for subsequent transforms and tests.
  • Constructor Details

    • IrOptional

      public IrOptional(IrBGP bgp, boolean newScope)
  • Method Details

    • getWhere

      public IrBGP getWhere()
    • print

      public void print(IrPrinter p)
      Description copied from class: IrNode
      Default no-op printing; concrete nodes override.
      Specified by:
      print in class IrNode
    • transformChildren

      public IrNode transformChildren(UnaryOperator<IrNode> op)
      Description copied from class: IrNode
      Function-style child transformation hook used by the transform pipeline to descend into nested structures. Contract: - Leaf nodes return this unchanged. - Container nodes return a new instance with their immediate children transformed using the provided operator. - Implementations must not mutate this or its existing children.
      Overrides:
      transformChildren in class IrNode
    • getVars

      public Set<Var> getVars()
      Description copied from class: IrNode
      Collect variables referenced by this node and all of its children (if any). Default implementation returns an empty set; container and triple-like nodes override to include their own Vars and recurse into child nodes.
      Overrides:
      getVars in class IrNode