คำถามติดแท็ก coerce

1
พิมพ์บทบาทและพฤติกรรมที่ทำให้เกิดความสับสนโดย `coerce '
ฉันมีชนิดId aและฉันพยายามที่จะป้องกันไม่ให้ตั้งใจบีบบังคับเช่นการไปยังId DoubleId Int หากฉันเข้าใจบทบาทพิมพ์อย่างถูกต้องสิ่งต่อไปนี้ไม่ควรรวบรวม {-# LANGUAGE RoleAnnotations #-} import Data.Coerce (coerce) type role Id nominal newtype Id a = Id String badKey :: Id Int badKey = coerce (Id "I point to a Double" :: Id Double) น่าเสียดายที่มัน: Prelude> :load Id.hs [1 of 1] Compiling Main ( Id.hs, interpreted …
11 haskell  roles  coerce 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.