Quomodo scribam acri contractu in Pythone in retis Ontologiae. Pars I: Blockchain & Block API

Quomodo scribam acri contractu in Pythone in retis Ontologiae. Pars I: Blockchain & Block API

Haec est prima pars in serie tutorum in creando Pythone captiosus contractus in Ontologia impedimentum retis utens instrumentum evolutionis contractus captiosus. SmartX.

In hoc articulo incipiemus notis nostris cum Ontologia captiosam contractum API. Ontologia captiosus contractus API dividitur in 7 modulos:

  1. Blockchain & Block API,
  2. runtime API;
  3. repono API;
  4. patrium API;
  5. Phasellus API,
  6. Supplicium Engine API and
  7. Static & Dynamic Call API.

Blockchain & Block API est principalis pars Ontologiae captiosus ratio contractus. Claustrum API impedimentum interrogationis operationes fundamentales sustinet, ut altitudinem hodiernam stipitem nanciscatur, dum Block API impedimentum interrogationis operationes fundamentales sustinet, sicut interrogationes numeri negotiorum pro dato stipite.

Let's get started!

Primum, novum contractum creare SmartXac deinde infra.

1. Quomodo uti Blockchain API

Nexus ad captivos contractus functiones Pythonis nexus identificantur. Munera debita sicut opus est intrare potes. Exempli gratia, haec propositio munus GetHeight inducit ut in altitudine stipitatis current, et munus GetHeader ad caput stipitationis obtineat.

from ontology.interop.System.Blockchain import GetHeight, GetHeader

GetHeight

GetHeight adhibetur ut ultimum sequentium impedimentum numerus in clausula, ut in exemplo infra monstratum est. In ultimo exemplo, Praecipuum munus ob commodum omittemus, sed si opus est addere potes.

from ontology.interop.System.Runtime import Notify
from ontology.interop.System.Blockchain import GetHeight
def Main(operation):
    if operation == 'demo':
        return demo()
    return False

def demo():
    height=GetHeight()
    Notify(height) # print height
    return height #return height after running the function

GetHeader

GetHeader adhibetur ut caput truncum, parameter est numerus serialis clausus in claustro. Exemplum:

from ontology.interop.System.Runtime import Notify
from ontology.interop.System.Blockchain import GetHeader
def demo():
    block_height=10
    header=GetHeader(block_height) 
    Notify(header)
return header

GetTransactionByHash

GetTransactionByHash adhibetur ut res per transactionem Nullam. Rei Nullam est ad GetTransactionByHash ut parametri in bytearray forma. Clavis ad hoc munus est ad transactionem Nullam in hexametris formato convertendi ad formam transactionis detrahendae in forma bytearray. Hoc magni momenti est. Alioquin errorem accipias qui indicat nullum esse scandalum cum illo Nullam Nullam. Transactionis Nullam in forma hexagonis capiamus exemplum ut eam ad formas bytearray convertat. Exemplum huius modi est:

9f270aa3a4c13c46891ff0e1a2bdb3ea0525669d414994aadf2606734d0c89c1

Primum, retexamus Nullam rem:

c1890c4d730626dfaa9449419d662505eab3bda2e1f01f89463cc1a4a30a279

Tincidunt hunc gradum efficere possunt utens numero hexagone (miniculo endian) instrumentum conversionis numeri a SmartX provisum est.

Tum eventum converte ad formam bytearray:

{0xc1,0x89,0x0c,0x4d,0x73,0x06,0x26,0xdf,0xaa,0x94,0x49,0x41,0x9d,0x66,0x25,0x05,0xea,0xb3,0xbd,0xa2,0xe1,0xf0,0x1f,0x89,0x46,0x3c,0xc1,0xa4,0xa3,0x0a,0x27,0x9f}

Hoc fieri potest utens instrumento conversionis ad filum Byte Array provisum a SmartX. Denique ad simile chordae resultantem converte.

xc1x89x0cx4dx73x06x26xdfxaax94x49x41x9dx66x25x05xeaxb3xbdxa2xe1xf0x1fx89x46x3cxc1xa4xa3x0ax27x9f

Hoc exemplum est functionis GetTransactionByHash, quae rem gerit utens Nullam transactionis:

from ontology.interop.System.Blockchain import GetTransactionByHash
def demo():
    # tx_hash="9f270aa3a4c13c46891ff0e1a2bdb3ea0525669d414994aadf2606734d0c89c1"    
    tx_hash=bytearray(b"xc1x89x0cx4dx73x06x26xdfxaax94x49x41x9dx66x25x05xeaxb3xbdxa2xe1xf0x1fx89x46x3cxc1xa4xa3x0ax27x9f")
    tx=GetTransactionByHash(tx_hash)
    return tx

GetTransactionHeight

GetTransactionHeight is used to get the transaction height by the transaction Nullam. Ab exemplo superius sumamus Nullam:

from ontology.interop.System.Blockchain import  GetTransactionHeight
def demo():
    #   tx_hash="9f270aa3a4c13c46891ff0e1a2bdb3ea0525669d414994aadf2606734d0c89c1"    
    tx_hash=bytearray(b"xc1x89x0cx4dx73x06x26xdfxaax94x49x41x9dx66x25x05xeaxb3xbdxa2xe1xf0x1fx89x46x3cxc1xa4xa3x0ax27x9f")
    height=GetTransactionHeight(tx_hash)
    return height

GetContract

Developers uti possunt functionem GetContract ad contractum per Nullam contractus. Processus conversionis Nullam contractus idem est ac processus conversionis transactionis Nullam dictum est.

from ontology.interop.System.Blockchain import GetContract
def demo():
    # contract_hash="d81a75a5ff9b95effa91239ff0bb3232219698fa"    
    contract_hash=bytearray(b"xfax98x96x21x32x32xbbxf0x9fx23x91xfaxefx95x9bxffxa5x75x1axd8")
    contract=GetContract(contract_hash)
    return contract

GetBlock

GetBlock adhibetur ad stipitem faciunt. Dupliciter accipitur scandalum specificum.

Obstructionum 1. Get per obstructionum altitudo:

from ontology.interop.System.Blockchain import GetBlock
def demo():
    block=GetBlock(1408)
    return block

2. Nullam Get truncum per obstructionum:

from ontology.interop.System.Blockchain import GetBlock
def demo():    
    block_hash=bytearray(b'x16xe0xc5x40x82x79x77x30x44xeax66xc8xc4x5dx17xf7x17x73x92x33x6dx54xe3x48x46x0bxc3x2fxe2x15x03xe4')
    block=GetBlock(block_hash)

2. Quomodo uti Clausus API

Tria munera praesto sunt in Clausus API: GetTransactions, GetTransactionCountet GetTransactionByIndex. frangemus illos singillatim.

GetTransactionCount

GetTransactionCount numerus negotiorum pro stipite dato adhibetur.

from ontology.interop.System.Blockchain import GetBlock
from ontology.interop.System.Block import GetTransactionCount
def demo():
    block=GetBlock(1408)
    count=GetTransactionCount(block)
    return count

GetTransactions

Tincidunt functiones GetTransactiones uti possunt ut omnes transactions in dato stipite accipiant.

from ontology.interop.System.Blockchain import GetBlock
from ontology.interop.System.Block import GetTransactions 
def demo():
    block=GetBlock(1408)
    txs=GetTransactions(block)
    return txs

GetTransactionByIndex

GetTransactionByIndex adhibetur ut certae transactionis in dato stipite.

from ontology.interop.System.Blockchain import GetBlock
from ontology.interop.System.Block import GetTransactionByIndex
def demo():
    block=GetBlock(1408)
    tx=GetTransactionByIndex(block,0) # index starts from 0.
    return tx

A duce nostro completa inveniri potest GitHub.

afterword

Blockchain & Block API pars necessaria est contractuum callidiorum sicut potes uti eis ut petant impedimentum data et scandalum data in contractibus captiosis. In articulis futuris, quomodo ceteris APIs utatur et experiamur quomodo cum impedimento Ontologiam inter se cohaereant.

Articulus ab editoribus Hashrate&Shares praesertim OntologyRussiae translatus est. click

Esne elit? Nostram tech civitatem ad discordiae. Etiam vide Elit Centre in nostro loco, ubi instrumenta elit, documenta et plura invenire potes.

Ontology

Source: www.habr.com