Rename doc dir
This commit is contained in:
		
							parent
							
								
									524cf05921
								
							
						
					
					
						commit
						3937785df5
					
				
							
								
								
									
										5
									
								
								doc/texinfo/index.texi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								doc/texinfo/index.texi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,5 @@ | ||||
| @top chainlib | ||||
| 
 | ||||
| @chapter Chainlib | ||||
| 
 | ||||
| @include interface.texi | ||||
							
								
								
									
										59
									
								
								doc/texinfo/interface.texi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								doc/texinfo/interface.texi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,59 @@ | ||||
| @node chainlib-interface | ||||
| @section The chainlib implementation | ||||
| 
 | ||||
| Chainlib is an attempt at employing a universal interface to manipulate and access blockchains regardless of underlying architecture. | ||||
| 
 | ||||
| It makes the following assumptions: | ||||
| 
 | ||||
| @itemize | ||||
| @item A block MUST have a interpretable serializable format, and contains zero of more transactions | ||||
| @item A transaction MUST have a interpretable serializable format | ||||
| @item A transaction MUST have a nonce associated with a sender address. This uniquely identifies the transaction on the network. | ||||
| @item A transaction MUST have a fee bid to get the transaction executed on the network (a network that does not care about bids can still ignore this property). | ||||
| @item A transaction signature MAY be locked to a particular chain identifier | ||||
| @item The sender key of a transaction MAY be recovered by the signature of the transaction | ||||
| @end itemize | ||||
| 
 | ||||
| 
 | ||||
| @subsection Pluggable method interface | ||||
| 
 | ||||
| The base chainlib blockchain interface is defined by the chainlib.interface.ChainInterface class. The sum of the unimplemented methods in this class summarizes the expected scope of abstraction necessary to interface with @emph{any} blockchain backend. | ||||
| 
 | ||||
| Methods in this class will return objects that can be passed to an RPC connection that fits the block context. | ||||
| 
 | ||||
| The implemented concepts are as follows, listed by method names: | ||||
| 
 | ||||
| @table @code | ||||
| @item block_latest | ||||
| Retrieve the latest block from the network | ||||
| @item block_by_hash | ||||
| Retrieve the block corresponding to the given block hash | ||||
| @item block_by_number | ||||
| Retrieve the block corresponding to the given block number | ||||
| @item block_from_src | ||||
| Render a chainlib.block.Block derivative object from an architecture-dependent block representation source | ||||
| @item block_to_src | ||||
| Render an architecture dependent transaction representation from the given Block object | ||||
| @item tx_by_hash | ||||
| Retrieve the transaction corresponding to the given transaction hash | ||||
| @item tx_by_block | ||||
| Retrieve the transaction corresponding to the given block hash and transaction index | ||||
| @item tx_receipt | ||||
| Retrieve the details of a confirmed transaction | ||||
| @item tx_raw  | ||||
| Generate an RPC query from raw transaction wire data | ||||
| @item tx_pack | ||||
| Generate raw transaction wire data from an architecture dependent transaction representation | ||||
| @item tx_unpack | ||||
| Generate architecture dependent transaction representation from raw transaction wire data | ||||
| @item tx_from_src | ||||
| Render a chainlib.tx.Tx derivative object from an architecture-dependent tx representation source | ||||
| @item tx_to_src | ||||
| Render an architecture dependent transaction representation from the given Tx object | ||||
| @item address_safe | ||||
| Generate a checksum-safe network address | ||||
| @item address_normal | ||||
| Generate an unambiguous network address | ||||
| @item src_normalize | ||||
| Generate an unambiguous dictionary from the given dictionary. For example, this can mean generating camel-case key equivalents for snake-case values. | ||||
| @end table | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user