MCPcopy Create free account
hub / github.com/ElementsProject/elements / CAssetIssuance

Class CAssetIssuance

test/functional/test_framework/messages.py:393–430  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

391OUTPOINT_INDEX_MASK = 0x3fffffff
392
393class CAssetIssuance():
394 __slots__ = ("assetBlindingNonce", "assetEntropy", "nAmount", "nInflationKeys")
395
396 def __init__(self):
397 self.assetBlindingNonce = 0
398 self.assetEntropy = 0
399 self.nAmount = CTxOutValue()
400 self.nInflationKeys = CTxOutValue()
401
402 def isNull(self):
403 return self.nAmount.isNull() and self.nInflationKeys.isNull()
404
405 def deserialize(self, f):
406 self.assetBlindingNonce = deser_uint256(f)
407 self.assetEntropy = deser_uint256(f)
408 self.nAmount = CTxOutValue()
409 self.nAmount.deserialize(f)
410 self.nInflationKeys = CTxOutValue()
411 self.nInflationKeys.deserialize(f)
412
413 def serialize(self):
414 r = b""
415 r += ser_uint256(self.assetBlindingNonce)
416 r += ser_uint256(self.assetEntropy)
417 r += self.nAmount.serialize()
418 r += self.nInflationKeys.serialize()
419 return r
420
421 # serialization of asset issuance used in taproot sighash
422 def taphash_asset_issuance_serialize(self):
423 if self.isNull():
424 return b'\x00'
425 r = b''
426 r += self.serialize()
427 return r
428
429 def __repr__(self):
430 return "CAssetIssuance(assetBlindingNonce=%064x assetEntropy=%064x nAmount=%s nInflationKeys=%s)" % (self.assetBlindingNonce, self.assetEntropy, self.nAmount.vchCommitment, self.nInflationKeys.vchCommitment)
431
432class CTxIn:
433 __slots__ = ("nSequence", "prevout", "scriptSig", "m_is_pegin", "assetIssuance")

Callers 2

__init__Method · 0.70
deserializeMethod · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected