Skip to content

Instantly share code, notes, and snippets.

@yatender-oktalk
Created September 26, 2020 23:26
Show Gist options
  • Save yatender-oktalk/2b314b7ea663d20c4641a59248968340 to your computer and use it in GitHub Desktop.
Save yatender-oktalk/2b314b7ea663d20c4641a59248968340 to your computer and use it in GitHub Desktop.
defmodule ExChain.Blockchain do
@moduledoc """
This module contains the blockchain related functions
"""
....
@spec add_block(BlockChain.t(), any) :: BlockChain.t()
def add_block(blockchain = %__MODULE__{chain: chain}, data) do
{last_block, _} = List.pop_at(chain, -1)
%{blockchain | chain: chain ++ [Block.mine_block(last_block, data)]}
end
...
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment