bitshares.block module

class bitshares.block.Block(*args, **kwargs)[source]

Bases: bitshares.instance.BlockchainInstance, bitshares.block.Block

Read a single block from the chain

Parameters:

Instances of this class are dictionaries that come with additional methods (see below) that allow dealing with a block and it’s corresponding functions.

from bitshares.block import Block
block = Block(1)
print(block)

Note

This class comes with its own caching function to reduce the load on the API server. Instances of this class can be refreshed with Account.refresh().

bitshares

Alias for the specific blockchain

blockchain
blockchain_instance_class

alias of bitshares.instance.BlockchainInstance

classmethod cache_object(data, key=None)

This classmethod allows to feed an object into the cache is is mostly used for testing

chain

Short form for blockchain (for the lazy)

clear() → None. Remove all items from D.
classmethod clear_cache()

Clear/Reset the entire Cache

copy() → a shallow copy of D
define_classes()[source]

Needs to define instance variables that provide classes

fromkeys()

Create a new dictionary with keys from iterable and values set to value.

get()

Return the value for key if key is in the dictionary, else default.

get_instance_class()

Should return the Chain instance class, e.g. bitshares.BitShares

getfromcache(id)

Get an element from the cache explicitly

identifier = None
incached(id)

Is an element cached?

classmethod inject(cls)
items()

This overwrites items() so that refresh() is called it the object is not already fetched

keys() → a set-like object providing a view on D's keys
static objectid_valid(i)

Test if a string looks like a regular object id of the form::

xxxx.yyyyy.zzzz

with those being numbers.

perform_id_tests = True
pop(k[, d]) → v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised

popitem() → (k, v), remove and return some (key, value) pair as a

2-tuple; but raise KeyError if D is empty.

refresh()[source]

Even though blocks never change, you freshly obtain its contents from an API with this method

static set_shared_blockchain_instance(instance)

This method allows us to override default instance for all users of SharedInstance.instance.

Parameters:instance (chaininstance) – Chain instance
setdefault()

Insert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

shared_blockchain_instance()

This method will initialize SharedInstance.instance and return it. The purpose of this method is to have offer single default instance that can be reused by multiple classes.

space_id = 1
store(data, key='id')

Cache the list

Parameters:data (list) – List of objects to cache
test_valid_objectid(i)

Alias for objectid_valid

testid(id)

In contrast to validity, this method tests if the objectid matches the type_id provided in self.type_id or self.type_ids

time()[source]

Return a datatime instance for the timestamp of this block

type_id = 'n/a'
type_ids = []
update([E, ]**F) → None. Update D from dict/iterable E and F.

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values() → an object providing a view on D's values
class bitshares.block.BlockHeader(*args, **kwargs)[source]

Bases: bitshares.instance.BlockchainInstance, bitshares.block.BlockHeader

bitshares

Alias for the specific blockchain

blockchain
blockchain_instance_class

alias of bitshares.instance.BlockchainInstance

classmethod cache_object(data, key=None)

This classmethod allows to feed an object into the cache is is mostly used for testing

chain

Short form for blockchain (for the lazy)

clear() → None. Remove all items from D.
classmethod clear_cache()

Clear/Reset the entire Cache

copy() → a shallow copy of D
define_classes()[source]

Needs to define instance variables that provide classes

fromkeys()

Create a new dictionary with keys from iterable and values set to value.

get()

Return the value for key if key is in the dictionary, else default.

get_instance_class()

Should return the Chain instance class, e.g. bitshares.BitShares

getfromcache(id)

Get an element from the cache explicitly

identifier = None
incached(id)

Is an element cached?

classmethod inject(cls)
items()

This overwrites items() so that refresh() is called it the object is not already fetched

keys() → a set-like object providing a view on D's keys
static objectid_valid(i)

Test if a string looks like a regular object id of the form::

xxxx.yyyyy.zzzz

with those being numbers.

perform_id_tests = True
pop(k[, d]) → v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised

popitem() → (k, v), remove and return some (key, value) pair as a

2-tuple; but raise KeyError if D is empty.

refresh()[source]

Even though blocks never change, you freshly obtain its contents from an API with this method

static set_shared_blockchain_instance(instance)

This method allows us to override default instance for all users of SharedInstance.instance.

Parameters:instance (chaininstance) – Chain instance
setdefault()

Insert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

shared_blockchain_instance()

This method will initialize SharedInstance.instance and return it. The purpose of this method is to have offer single default instance that can be reused by multiple classes.

space_id = 1
store(data, key='id')

Cache the list

Parameters:data (list) – List of objects to cache
test_valid_objectid(i)

Alias for objectid_valid

testid(id)

In contrast to validity, this method tests if the objectid matches the type_id provided in self.type_id or self.type_ids

time()[source]

Return a datatime instance for the timestamp of this block

type_id = 'n/a'
type_ids = []
update([E, ]**F) → None. Update D from dict/iterable E and F.

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values() → an object providing a view on D's values