storage

package
v0.5.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 24, 2017 License: ISC Imports: 9 Imported by: 0

Documentation

Overview

Transactions:

T ++ txId                  - confirmed transactions
                             data: packed transaction data

Assets:

A ++ asset index           - confirmed asset
                             data: packed asset data

Ownership:

N ++ owner                 - next count value to use for appending to owned items
                             data: count
K ++ owner ++ count        - list of owned items
                             data: last transfer txId ++ last transfer block number ++ issue txId ++ issue block number ++ asset index
D ++ owner ++ txId         - position in list of owned items, for delete after transfer
                             data: count

Payment:

C ++ currency(uint64)      - currency processing
                             data: latest block number (big endian uint64, 8 bytes)

P ++ payId                 - payment confirmation (array of addresses + values)
                             data: currency(varint) ++ txId_bytes(varint) ++ txId ++ [ count(varint) ++ address ++ value(varint) ]

Testing:

Z ++ key                   - testing data

Index

Constants

This section is empty.

Variables

View Source
var Pool pools

the instance

Functions

func Finalise

func Finalise()

close the database connection

func Initialise

func Initialise(database string) error

open up the database connection

this must be called before any pool.New() is created

Types

type Element

type Element struct {
	Key   []byte
	Value []byte
}

a binary data item

type FetchCursor

type FetchCursor struct {
	// contains filtered or unexported fields
}

cursor structure

func (*FetchCursor) Fetch

func (cursor *FetchCursor) Fetch(count int) ([]Element, error)

fetch some elements starting from key

func (*FetchCursor) Seek

func (cursor *FetchCursor) Seek(key []byte) *FetchCursor

type PoolHandle

type PoolHandle struct {
	// contains filtered or unexported fields
}

a pool handle

func (*PoolHandle) Delete

func (p *PoolHandle) Delete(key []byte)

remove a key from the database

func (*PoolHandle) Get

func (p *PoolHandle) Get(key []byte) []byte

read a value for a given key

this returns the actual element - copy the result if it must be preserved

func (*PoolHandle) Has

func (p *PoolHandle) Has(key []byte) bool

Check if a key exists

func (*PoolHandle) LastElement

func (p *PoolHandle) LastElement() (Element, bool)

get the last element in a pool

func (*PoolHandle) NewFetchCursor

func (p *PoolHandle) NewFetchCursor() *FetchCursor

initialise a cursor to the start of a key range

func (*PoolHandle) Put

func (p *PoolHandle) Put(key []byte, value []byte)

store a key/value bytes pair to the database

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL