Hyperlinkv0.8.0-beta.28

Schema

Schema.makeIsGreaterThanfunctioneffect/Schema.ts:7110
<T>(options: {
  readonly order: Order.Order<T>
  readonly annotate?:
    | ((exclusiveMinimum: T) => Annotations.Filter)
    | undefined
  readonly formatter?: Formatter<T> | undefined
}): (
  exclusiveMinimum: T,
  annotations?: Annotations.Filter
) => SchemaAST.Filter<T>

Creates a greater-than (>) check for any ordered type from an Order.Order instance.

Order checks
Source effect/Schema.ts:711027 lines
export function makeIsGreaterThan<T>(options: {
  readonly order: Order.Order<T>
  readonly annotate?: ((exclusiveMinimum: T) => Annotations.Filter) | undefined
  readonly formatter?: Formatter<T> | undefined
}) {
  const gt = Order.isGreaterThan(options.order)
  const formatter = options.formatter ?? format
  return (exclusiveMinimum: T, annotations?: Annotations.Filter) => {
    return makeFilter<T>(
      (input) => gt(input, exclusiveMinimum),
      {
        expected: `a value greater than ${formatter(exclusiveMinimum)}`,
        arbitrary: {
          constraint: {
            ordered: {
              order: options.order,
              minimum: exclusiveMinimum,
              exclusiveMinimum: true
            }
          }
        },
        ...options.annotate?.(exclusiveMinimum),
        ...annotations
      }
    )
  }
}
Referenced by 4 symbols