Class DifferenceBetween
- All Implemented Interfaces:
org.jvnet.jaxb2_commons.lang.Equals2,org.jvnet.jaxb2_commons.lang.HashCode2,org.jvnet.jaxb2_commons.lang.ToString2
- Direct Known Subclasses:
DifferenceBetweenEvaluator
public class DifferenceBetween
extends BinaryExpression
implements org.jvnet.jaxb2_commons.lang.Equals2, org.jvnet.jaxb2_commons.lang.HashCode2, org.jvnet.jaxb2_commons.lang.ToString2
The DifferenceBetween operator returns the number of boundaries crossed for the specified precision between the first and second arguments. If the first argument is after the second argument, the result is negative. Because this operation is only counting boundaries crossed, the result is always an integer.
For Date values, precision must be one of Year, Month, Week, or Day.
For Time values, precision must be one of Hour, Minute, Second, or Millisecond.
For calculations involving weeks, Sunday is considered to be the first day of the week for the purposes of determining boundaries.
When calculating difference between DateTime values with different timezone offsets, implementations should normalize to the timezone offset of the evaluation request timestamp, but only when the comparison precision is hours, minutes, seconds, or milliseconds.
If either argument is null, the result is null.
Note that this operator can be implemented using Uncertainty as described in the CQL specification, Chapter 5, Precision-Based Timing.
Java class for DifferenceBetween complex type.
The following schema fragment specifies the expected content contained within this class.
<complexType name="DifferenceBetween">
<complexContent>
<extension base="{urn:hl7-org:elm:r1}BinaryExpression">
<attribute name="precision" type="{urn:hl7-org:elm:r1}DateTimePrecision" />
</extension>
</complexContent>
</complexType>
-
Field Summary
FieldsFields inherited from class org.cqframework.cql.elm.execution.BinaryExpression
operandFields inherited from class org.cqframework.cql.elm.execution.OperatorExpression
signatureFields inherited from class org.cqframework.cql.elm.execution.Element
annotation, localId, locator, resultTypeName, resultTypeSpecifier -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionappend(org.jvnet.jaxb2_commons.locator.ObjectLocator locator, StringBuilder buffer, org.jvnet.jaxb2_commons.lang.ToStringStrategy2 strategy) appendFields(org.jvnet.jaxb2_commons.locator.ObjectLocator locator, StringBuilder buffer, org.jvnet.jaxb2_commons.lang.ToStringStrategy2 strategy) booleanbooleanequals(org.jvnet.jaxb2_commons.locator.ObjectLocator thisLocator, org.jvnet.jaxb2_commons.locator.ObjectLocator thatLocator, Object object, org.jvnet.jaxb2_commons.lang.EqualsStrategy2 strategy) Gets the value of the precision property.inthashCode()inthashCode(org.jvnet.jaxb2_commons.locator.ObjectLocator locator, org.jvnet.jaxb2_commons.lang.HashCodeStrategy2 strategy) voidsetPrecision(DateTimePrecision value) Sets the value of the precision property.toString()withAnnotation(Collection<CqlToElmBase> values) withAnnotation(CqlToElmBase... values) withLocalId(String value) withLocator(String value) withOperand(Collection<Expression> values) withOperand(Expression... values) withPrecision(DateTimePrecision value) withResultTypeName(QName value) withSignature(Collection<TypeSpecifier> values) withSignature(TypeSpecifier... values) Methods inherited from class org.cqframework.cql.elm.execution.BinaryExpression
getOperandMethods inherited from class org.cqframework.cql.elm.execution.OperatorExpression
getSignatureMethods inherited from class org.cqframework.cql.elm.execution.Element
getAnnotation, getLocalId, getLocator, getResultTypeName, getResultTypeSpecifier, setLocalId, setLocator, setResultTypeName, setResultTypeSpecifierMethods inherited from class org.opencds.cqf.cql.engine.elm.execution.Executable
evaluate, internalEvaluate
-
Field Details
-
precision
-
-
Constructor Details
-
DifferenceBetween
public DifferenceBetween()
-
-
Method Details
-
getPrecision
Gets the value of the precision property.- Returns:
- possible object is
DateTimePrecision
-
setPrecision
Sets the value of the precision property.- Parameters:
value- allowed object isDateTimePrecision
-
withPrecision
-
withOperand
- Overrides:
withOperandin classBinaryExpression
-
withOperand
- Overrides:
withOperandin classBinaryExpression
-
withSignature
- Overrides:
withSignaturein classBinaryExpression
-
withSignature
- Overrides:
withSignaturein classBinaryExpression
-
withAnnotation
- Overrides:
withAnnotationin classBinaryExpression
-
withAnnotation
- Overrides:
withAnnotationin classBinaryExpression
-
withResultTypeSpecifier
- Overrides:
withResultTypeSpecifierin classBinaryExpression
-
withLocalId
- Overrides:
withLocalIdin classBinaryExpression
-
withLocator
- Overrides:
withLocatorin classBinaryExpression
-
withResultTypeName
- Overrides:
withResultTypeNamein classBinaryExpression
-
equals
public boolean equals(org.jvnet.jaxb2_commons.locator.ObjectLocator thisLocator, org.jvnet.jaxb2_commons.locator.ObjectLocator thatLocator, Object object, org.jvnet.jaxb2_commons.lang.EqualsStrategy2 strategy) - Specified by:
equalsin interfaceorg.jvnet.jaxb2_commons.lang.Equals2- Overrides:
equalsin classBinaryExpression
-
equals
- Overrides:
equalsin classBinaryExpression
-
hashCode
public int hashCode(org.jvnet.jaxb2_commons.locator.ObjectLocator locator, org.jvnet.jaxb2_commons.lang.HashCodeStrategy2 strategy) - Specified by:
hashCodein interfaceorg.jvnet.jaxb2_commons.lang.HashCode2- Overrides:
hashCodein classBinaryExpression
-
hashCode
public int hashCode()- Overrides:
hashCodein classBinaryExpression
-
toString
- Overrides:
toStringin classBinaryExpression
-
append
public StringBuilder append(org.jvnet.jaxb2_commons.locator.ObjectLocator locator, StringBuilder buffer, org.jvnet.jaxb2_commons.lang.ToStringStrategy2 strategy) - Specified by:
appendin interfaceorg.jvnet.jaxb2_commons.lang.ToString2- Overrides:
appendin classBinaryExpression
-
appendFields
public StringBuilder appendFields(org.jvnet.jaxb2_commons.locator.ObjectLocator locator, StringBuilder buffer, org.jvnet.jaxb2_commons.lang.ToStringStrategy2 strategy) - Specified by:
appendFieldsin interfaceorg.jvnet.jaxb2_commons.lang.ToString2- Overrides:
appendFieldsin classBinaryExpression
-