我试图测试此流动性智能合约代码,但如果显示错误。流动性与ocaml、tezos和x27类似;s智能合约语言。

我试图测试此流动性智能合约代码,但如果显示错误。流动性与ocaml、tezos和x27类似;s智能合约语言。,ocaml,blockchain,Ocaml,Blockchain,我一直在尝试测试这个游戏的第一个入口点,即游戏。但是当它试图编译它时,会显示一些错误。我该如何继续,还是我遗漏了什么 [%%version 0.4] type game = { number : nat; bet : tez; player : key_hash; } type storage = { game : game option; oracle_id : address; } let%entry play (number : nat) storage =

我一直在尝试测试这个游戏的第一个入口点,即游戏。但是当它试图编译它时,会显示一些错误。我该如何继续,还是我遗漏了什么

[%%version 0.4]

type game = {
  number : nat;
  bet : tez;
  player : key_hash;
} 

type storage = {
  game : game option;
  oracle_id : address;
}

let%entry play (number : nat) storage = 
  if number>100p then Current.failwith "number must be <=100";
  if 2p.Current.amount()>Current.balance() then Current.failwith"less balance";

  match storage.game with
  |some g -> failwith ("game has already started",g)
  |None -> 
      let bet = Current.amount() in
      let storage = storage.game <- Some {number, bet, player} in
      (([]:operation list),storage)
[%%0.4版]
类型游戏={
编号:nat;
贝特:泰兹;
播放器:key_散列;
} 
类型存储={
游戏:游戏选择;
oracle_id:地址;
}
让%entry播放(编号:nat)存储=

如果编号>100p,则Current.failwith“编号必须您忘记初始化,请添加以下代码:

let%init storage (oracle_id : address) =
  {game = (None : game option); oracle_id}
“有一些错误显示”…哪个错误?