NAME
Finance::Dogechain::Block - class representing blocks in the Dogechain API
SYNOPSIS
use Finance::Dogechain::Block;
my $block = Finance::Dogechain::Block->new(
block_id => '2750235'
);
for my $transaction ($block->transactions->@*) { ... }
DESCRIPTION
Finance::Dogechain::Block
represents transactions in the Dogechain API. It inherits methods from Finance::Dogechain::Base
and provides several of its own.
METHODS
new( ua => ..., base_url => ..., block_id => '...' )
Creates a new instance of this object. You must provide a block_id
parameter, which is either the hash representing a block in the Dogecoin public ledger or the height of a block in the ledger.
Other default constructor values are:
ua
, a user agent. Defaults to an instance of Mojo::UserAgent.base_url
, the base URL path of the dogechain.info API (or an equivalent).
These attributes are available by instance methods block_id()
, ua()
, and base_url()
.
block()
Returns a JSON data structure representing the block corresponding to the block_id
, if that block is valid and can be accessed. Dogecoin transactions in the block will be replaced with Finance::Dogechain::Transaction
objects when possible.
Returns an undefined value (undef
in scalar context or an empty list in list context) if the HTTP call did not succeed.
This may also return an undefined value for coinbase blocks.
Returns 0
if the HTTP call did succeed but the API returned an unsuccessful payload.
transactions()
Returns an array reference of all transactions in this block. This array reference may be empty if there are no transactions, as in the case when the block is a coinbase, for example.
TO_JSON()
Returns a string representation of this object (its class and block_id
) so that you can serialize this object with JSON.
COPYRIGHT & LICENSE
Copyright 2021 chromatic, some rights reserved.
This program is free software. You can redistribute it and/or modify it under the same terms as Perl 5.32.