mlkem-0.2.1.0: src/SecureBlock.hs
-- |
-- Module : SecureBlock
-- License : BSD-3-Clause
-- Copyright : (c) 2025 Olivier Chéron
--
-- Use a type-level annotation to decide between a scrubbed block or a regular
-- block
--
{-# LANGUAGE CPP #-}
module SecureBlock
( SecureBlock, index, new, thaw
, unsafeCast, unsafeFreeze, toNormalForm
#ifdef ML_KEM_TESTING
, eq, Marking.showsPrec, toList, SecureBlock.length
#endif
) where
#ifdef ML_KEM_TESTING
import Base
#endif
import Marking
#ifdef ML_KEM_TESTING
length :: (Classified marking, PrimType ty) => SecureBlock marking ty -> CountOf ty
length = lengthBlock
#endif