Пример #1
0
    def runLambda(self, lambdaToExecute):
        sp.set_type(lambdaToExecute,
                    sp.TLambda(sp.TUnit, sp.TList(sp.TOperation)))

        # Can only be called by the DAO.
        sp.verify(sp.sender == self.data.daoAddress, "NOT_DAO")

        # Execute Request
        operations = lambdaToExecute(sp.unit)
        sp.set_type(operations, sp.TList(sp.TOperation))
        sp.add_operations(operations)
Пример #2
0
 def token_metadata(self, params):
     sp.verify( ~self.is_paused() )
     sp.set_type(params,
                 sp.TRecord(
                     token_ids = sp.TList(sp.TNat),
                     handler = sp.TLambda(
                         sp.TList(self.token_meta_data.get_type()),
                         sp.TUnit)
                 ).layout(("token_ids", "handler")))
     def f_on_request(req):
         self.token_meta_data.set_type_and_layout(self.data.token_metadata[req])
         sp.result(self.data.token_metadata[req])
     sp.compute(params.handler(params.token_ids.map(f_on_request)))
 def get_type():
     return sp.TRecord(execution_payload=sp.TLambda(sp.TUnit, sp.TList(sp.TOperation)), signatures=sp.TMap(sp.TKeyHash,sp.TSignature)).layout(("execution_payload","signatures"))
 def get_signing_payload_type():
     return sp.TRecord(chain_id=sp.TChainId, self_address=sp.TAddress, nonce=sp.TNat, execution_payload=sp.TLambda(sp.TUnit, sp.TList(sp.TOperation))).layout(("chain_id",("self_address",("nonce","execution_payload"))))