racket/pict

add minimum size contract to `standard-fish`

Aberta

#85 aberto em 15 de dez. de 2024

 (1 comentário) (0 reação) (0 responsável)Racket (22 forks)github user discovery
good first issue

Métricas do repositório

Stars
 (18 estrelas)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

standard-fish fails for small values with an unfortunate error that unlike a normal error points elsewhere in the code.

standard-fish is defined at pict-lib/pict/private/utils.rkt

options:

  • check args are valid w>5 , h>1?
  • modify standard fish to accept any numbers, including zero and negative.
#lang racket
(require pict)
(standard-fish 6 1)
Documents/GitHub/racket/racket/collects/racket/contract/private/blame.rkt:350:0: draw-ellipse: contract violation
  expected: (and/c real? (not/c negative?))
  given: -2
  in: the 4th argument of
      (->m
       real?
       real?
       (and/c real? (not/c negative?))
       (and/c real? (not/c negative?))
       void?)
  contract from: (class record-dc%)
  blaming: (unit language@)
   (assuming the contract is correct)

Guia do colaborador