Class PgRangeType

All Implemented Interfaces:
ISearchPath, IStatement, IType, IHashable

public class PgRangeType extends PgAbstractType
PostgreSQL range type implementation. Range types store ranges of values for a given subtype, such as int4range for integers or tsrange for timestamps. They support inclusion/exclusion bounds and various operations.
  • Constructor Details

    • PgRangeType

      public PgRangeType(String name)
      Creates a new PostgreSQL range type.
      Parameters:
      name - range type name
  • Method Details

    • getSubtype

      public String getSubtype()
      Gets the underlying data type for this range.
      Returns:
      subtype name
    • setSubtype

      public void setSubtype(String subtype)
    • setSubtypeOpClass

      public void setSubtypeOpClass(String subtypeOpClass)
    • setCollation

      public void setCollation(String collation)
    • setCanonical

      public void setCanonical(String canonical)
    • setSubtypeDiff

      public void setSubtypeDiff(String subtypeDiff)
    • setMultirange

      public void setMultirange(String multirange)
    • computeHash

      public void computeHash(Hasher hasher)
      Description copied from interface: IHashable
      Computes the hash of the implementing object using the provided hasher. The implementation should call appropriate put methods on the hasher for all fields that should contribute to the hash value.
      Parameters:
      hasher - the hasher instance to use for hash computation
    • compare

      public boolean compare(IStatement obj)
      Description copied from class: AbstractStatement
      This method does not account for nested child PgStatements. Shallow version of AbstractStatement.equals(Object)
      Specified by:
      compare in interface IStatement
      Overrides:
      compare in class AbstractStatement