{-# LANGUAGE DataKinds #-} {-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE TemplateHaskell #-} module PlutusExample.PlutusVersion1.AlwaysFails ( alwaysFailsScript , alwaysFailsScriptShortBs ) where import Prelude hiding (($)) import Cardano.Api.Shelley (PlutusScript (..), PlutusScriptV1) import Codec.Serialise import Data.ByteString.Lazy qualified as LBS import Data.ByteString.Short qualified as SBS import Plutus.V1.Ledger.Scripts qualified as Plutus import PlutusTx qualified import PlutusTx.Prelude hiding (Semigroup (..), unless, (.)) {-# INLINABLE mkValidator #-} mkValidator :: BuiltinData -> BuiltinData -> BuiltinData -> () mkValidator :: BuiltinData -> BuiltinData -> BuiltinData -> () mkValidator BuiltinData _ BuiltinData _ BuiltinData _ = () -> () forall a. () -> a PlutusTx.Prelude.error () validator :: Plutus.Validator validator :: Validator validator = CompiledCode (BuiltinData -> BuiltinData -> BuiltinData -> ()) -> Validator Plutus.mkValidatorScript $$(PlutusTx.compile [|| mkValidator ||]) script :: Plutus.Script script :: Script script = Validator -> Script Plutus.unValidatorScript Validator validator alwaysFailsScriptShortBs :: SBS.ShortByteString alwaysFailsScriptShortBs :: ShortByteString alwaysFailsScriptShortBs = ByteString -> ShortByteString SBS.toShort (ByteString -> ShortByteString) -> (ByteString -> ByteString) -> ByteString -> ShortByteString forall b c a. (b -> c) -> (a -> b) -> a -> c . ByteString -> ByteString LBS.toStrict (ByteString -> ShortByteString) -> ByteString -> ShortByteString forall a b. (a -> b) -> a -> b $ Script -> ByteString forall a. Serialise a => a -> ByteString serialise Script script alwaysFailsScript :: PlutusScript PlutusScriptV1 alwaysFailsScript :: PlutusScript PlutusScriptV1 alwaysFailsScript = ShortByteString -> PlutusScript PlutusScriptV1 forall lang. ShortByteString -> PlutusScript lang PlutusScriptSerialised ShortByteString alwaysFailsScriptShortBs