This section describes the primary typeclasses used in Plutarch.

Note: If you spot any mistakes/have any related questions that this guide lacks the answer to, please don't hesitate to raise an issue. The goal is to have high quality documentation for Plutarch users!

  • PEq & POrd
  • PIntegral
  • PIsData
  • PlutusType, PCon, and PMatch
    • Implementing PlutusType for your own types (Scott Encoding)
    • Implementing PlutusType for your own types (Data Encoding)
    • Implementing PlutusType for your own types (newtype)
  • PLiftable
  • PListLike
  • PIsDataRepr & PDataFields
    • All about extracting fields
      • Alternatives to OverloadedRecordDot
    • All about constructing data values
    • Implementing PIsDataRepr and friends
  • PTryFrom
    • Laws
    • PTryFromExcess
    • Recovering only partially