Skip to content

Commit 71d1bfd

Browse files
committed
add new search type GreedyPruning
2 parents 90e5b32 + a84a95f commit 71d1bfd

File tree

10 files changed

+260
-195
lines changed

10 files changed

+260
-195
lines changed

.envrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
nix-user-chroot ~/.nix zsh -l
2+
23
use flake

examples/debug/src/SomeDebugContract.hs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,9 @@
22

33
module SomeDebugContract where
44

5-
import Data.Aeson.Extras (encodeByteString)
65
import Data.Map (size)
76
import Data.Map qualified as M
87
import Data.Text (Text)
9-
import Data.Void (Void)
108
import Debug.Trace (traceM)
119
import Ledger (Address (Address), PaymentPubKeyHash (PaymentPubKeyHash), getCardanoTxId)
1210
import Ledger qualified

examples/debug/src/TestRun.hs

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,17 @@
11
module TestRun (testnetRun, main) where
22

33
import BotPlutusInterface.Contract qualified as BPI
4-
import BotPlutusInterface.Types
4+
import BotPlutusInterface.Types (
5+
CLILocation (Local),
6+
CollateralVar (CollateralVar, unCollateralVar),
7+
ContractEnvironment (..),
8+
ContractState (ContractState),
9+
ContractStats (ContractStats),
10+
LogLevel (Notice),
11+
LogsList (LogsList),
12+
PABConfig (..),
13+
TxStatusPolling (TxStatusPolling),
14+
)
515
import Cardano.Api (NetworkId (Mainnet))
616
import Cardano.Api.Shelley (ProtocolParameters)
717
import Control.Concurrent.STM (newTVarIO, readTVarIO)
@@ -11,7 +21,7 @@ import Data.Text (Text)
1121

1222
import Data.Text qualified as Text
1323
import Data.UUID.V4 qualified as UUID
14-
import GHC.IO.Encoding
24+
import GHC.IO.Encoding (setLocaleEncoding, utf8)
1525
import Ledger (PubKeyHash)
1626
import Plutus.PAB.Core.ContractInstance.STM (Activity (Active))
1727
import Servant.Client (BaseUrl (BaseUrl), Scheme (Http))
@@ -20,7 +30,7 @@ import System.Directory (listDirectory)
2030
import System.Environment (getArgs, getEnv, setEnv)
2131
import System.FilePath ((</>))
2232
import TimeDebugContract qualified
23-
import Tools
33+
import Tools (pkhFromHash)
2434
import Wallet.Types (ContractInstanceId (ContractInstanceId))
2535
import Prelude
2636

examples/debug/src/Tools.hs

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,31 @@
11
module Tools where
22

33
import Cardano.Api qualified as CAPI
4-
import Data.Aeson ((.=))
5-
import Data.Aeson qualified as JSON
4+
import Data.String (fromString)
65
import Data.Text (Text)
7-
import GHC.Natural (Natural)
6+
import GHC.Word (Word32)
87
import Ledger (Address (Address), PubKeyHash)
98
import Ledger.Tx.CardanoAPI (toCardanoAddress)
109
import Plutus.V1.Ledger.Api (Credential (PubKeyCredential))
1110
import Prelude
1211

1312
pkhFromHash :: String -> PubKeyHash
14-
pkhFromHash key =
15-
let res = JSON.fromJSON $ JSON.object ["getPubKeyHash" .= key]
16-
in case res of
17-
JSON.Success pkh -> pkh
18-
_ -> error "failed to parse pkh"
13+
pkhFromHash = fromString
1914

2015
pkToAddr :: PubKeyHash -> Address
2116
pkToAddr = flip Address Nothing . PubKeyCredential
2217

23-
addrToCapiAddr :: Natural -> Address -> Text
18+
addrToCapiAddr :: Word32 -> Address -> Text
2419
addrToCapiAddr nId addr =
2520
let networkId = getNetId nId
2621
capiAddr = toCardanoAddress networkId addr
2722
in CAPI.serialiseAddress
2823
. either (error . show) id
2924
$ capiAddr
3025

31-
getNetId :: Natural -> CAPI.NetworkId
26+
getNetId :: Word32 -> CAPI.NetworkId
3227
getNetId = \case
3328
0 -> CAPI.Mainnet
3429
n ->
35-
CAPI.Testnet
36-
. CAPI.NetworkMagic
37-
. fromInteger
38-
. toInteger
39-
$ n
30+
CAPI.Testnet $
31+
CAPI.NetworkMagic n

0 commit comments

Comments
 (0)