packages feed

purescript-0.15.11: tests/purs/warning/VTAsWildcardInferred.purs

-- See https://github.com/purescript/purescript/issues/4487
module Main where

import Prelude
import Effect (Effect)
import Effect.Console (log)

f :: forall @a. a -> a
f = identity

test1 :: { x :: Int }
test1 = f @{ x :: _ } { x: 42 }

class Foo :: Type -> Type -> Type -> Constraint
class Foo a b c | a -> b c where
  fooMember :: a -> b

wrap :: forall @a. Array a -> Array (Array a)
wrap as = [as]

arrFooMember :: forall c. Array (Foo Int Boolean c => Int -> Boolean)
arrFooMember = [fooMember]

test2 :: forall c. Array (Array (Foo Int Boolean c => Int -> Boolean))
test2 = wrap @(Foo Int Boolean _ => _) arrFooMember -- neither wildcard should warn IMO

main :: Effect Unit
main = log "Done"