Compare commits
No commits in common. "8258d56b347f5e29fbf2c7ce74e068affcaf0137" and "5a8e0b602d63085ebd5f554f7fe176d058bf9518" have entirely different histories.
8258d56b34
...
5a8e0b602d
@ -3,6 +3,6 @@
|
||||
{included_applications,[]},
|
||||
{applications,[stdlib,kernel]},
|
||||
{description,"Gajumaru interoperation library"},
|
||||
{vsn,"0.5.1"},
|
||||
{vsn,"0.4.0"},
|
||||
{modules,[hakuzaru,hz,hz_fetcher,hz_man,hz_sup]},
|
||||
{mod,{hakuzaru,[]}}]}.
|
||||
|
@ -6,7 +6,7 @@
|
||||
%%% @end
|
||||
|
||||
-module(hakuzaru).
|
||||
-vsn("0.5.1").
|
||||
-vsn("0.4.0").
|
||||
-author("Craig Everett <ceverett@tsuriai.jp>").
|
||||
-copyright("Craig Everett <ceverett@tsuriai.jp>").
|
||||
-license("GPL-3.0-or-later").
|
||||
|
27
src/hz.erl
27
src/hz.erl
@ -23,7 +23,7 @@
|
||||
%%% @end
|
||||
|
||||
-module(hz).
|
||||
-vsn("0.5.1").
|
||||
-vsn("0.4.0").
|
||||
-author("Craig Everett <ceverett@tsuriai.jp>").
|
||||
-copyright("Craig Everett <ceverett@tsuriai.jp>").
|
||||
-license("GPL-3.0-or-later").
|
||||
@ -78,7 +78,7 @@
|
||||
|
||||
%%% Types
|
||||
|
||||
-export_type([chain_node/0, network_id/0, chain_error/0, aaci/0]).
|
||||
-export_type([chain_node/0, network_id/0, chain_error/0]).
|
||||
|
||||
-include_lib("eunit/include/eunit.hrl").
|
||||
|
||||
@ -94,7 +94,6 @@
|
||||
| {headers, map()}
|
||||
| bad_length
|
||||
| gc_out_of_range.
|
||||
-type aaci() :: {aaci, term(), term(), term()}.
|
||||
-type pubkey() :: unicode:chardata(). % "ak_" ++ _
|
||||
-type account_id() :: pubkey().
|
||||
-type contract_id() :: unicode:chardata(). % "ct_" ++ _
|
||||
@ -219,10 +218,8 @@
|
||||
|
||||
%%% Get/Set admin functions
|
||||
|
||||
-spec network_id() -> Result
|
||||
when Result :: {ok, NetworkID} | {error, Reason},
|
||||
NetworkID :: string(),
|
||||
Reason :: term().
|
||||
-spec network_id() -> NetworkID
|
||||
when NetworkID :: string() | none.
|
||||
%% @doc
|
||||
%% Returns the network ID or the atom `none' if it is unset.
|
||||
%% Checking this is not normally necessary, but if network ID assignment is dynamic
|
||||
@ -1154,7 +1151,7 @@ read_aci(Path) ->
|
||||
|
||||
-spec contract_call(CallerID, AACI, ConID, Fun, Args) -> Result
|
||||
when CallerID :: unicode:chardata(),
|
||||
AACI :: aaci(),
|
||||
AACI :: map(),
|
||||
ConID :: unicode:chardata(),
|
||||
Fun :: string(),
|
||||
Args :: [string()],
|
||||
@ -1189,7 +1186,7 @@ contract_call(CallerID, AACI, ConID, Fun, Args) ->
|
||||
-spec contract_call(CallerID, Gas, AACI, ConID, Fun, Args) -> Result
|
||||
when CallerID :: unicode:chardata(),
|
||||
Gas :: pos_integer(),
|
||||
AACI :: aaci(),
|
||||
AACI :: map(),
|
||||
ConID :: unicode:chardata(),
|
||||
Fun :: string(),
|
||||
Args :: [string()],
|
||||
@ -1227,7 +1224,7 @@ contract_call(CallerID, Gas, AACI, ConID, Fun, Args) ->
|
||||
GasPrice :: pos_integer(),
|
||||
Amount :: non_neg_integer(),
|
||||
TTL :: pos_integer(),
|
||||
AACI :: aaci(),
|
||||
AACI :: map(),
|
||||
ConID :: unicode:chardata(),
|
||||
Fun :: string(),
|
||||
Args :: [string()],
|
||||
@ -1394,7 +1391,7 @@ contract_call4(PK, Nonce, Gas, GasPrice, Amount, TTL, CK, CallData) ->
|
||||
|
||||
-spec prepare_contract(File) -> {ok, AACI} | {error, Reason}
|
||||
when File :: file:filename(),
|
||||
AACI :: aaci(),
|
||||
AACI :: map(),
|
||||
Reason :: term().
|
||||
%% @doc
|
||||
%% Compile a contract and extract the function spec meta for use in future formation
|
||||
@ -2056,7 +2053,7 @@ zip_record_field({Name, Type}, {Remaining, Missing}) ->
|
||||
end.
|
||||
|
||||
-spec aaci_lookup_spec(AACI, Fun) -> {ok, Type} | {error, Reason}
|
||||
when AACI :: aaci(),
|
||||
when AACI :: {aaci, term(), term(), term()}, % FIXME
|
||||
Fun :: binary() | string(),
|
||||
Type :: {term(), term()}, % FIXME
|
||||
Reason :: bad_fun_name.
|
||||
@ -2217,6 +2214,8 @@ spend2(DSenderID,
|
||||
end.
|
||||
|
||||
|
||||
decode_account_id(S) when is_list(S) ->
|
||||
decode_account_id(list_to_binary(S));
|
||||
decode_account_id(B) ->
|
||||
try
|
||||
{account_pubkey, PK} = gmser_api_encoder:decode(B),
|
||||
@ -2312,8 +2311,8 @@ verify_signature2(Sig, Message, PK) ->
|
||||
|
||||
% This is Bitcoin's variable-length unsigned integer encoding
|
||||
% See: https://en.bitcoin.it/wiki/Protocol_documentation#Variable_length_integer
|
||||
vencode(N) when N =< 0 ->
|
||||
{error, {non_pos_N, N}};
|
||||
vencode(N) when N < 0 ->
|
||||
{error, {negative_N, N}};
|
||||
vencode(N) when N < 16#FD ->
|
||||
{ok, <<N>>};
|
||||
vencode(N) when N =< 16#FFFF ->
|
||||
|
@ -1,5 +1,5 @@
|
||||
-module(hz_fetcher).
|
||||
-vsn("0.5.1").
|
||||
-vsn("0.4.0").
|
||||
-author("Craig Everett <ceverett@tsuriai.jp>").
|
||||
-copyright("Craig Everett <ceverett@tsuriai.jp>").
|
||||
-license("MIT").
|
||||
|
@ -9,7 +9,7 @@
|
||||
%%% @end
|
||||
|
||||
-module(hz_man).
|
||||
-vsn("0.5.1").
|
||||
-vsn("0.4.0").
|
||||
-behavior(gen_server).
|
||||
-author("Craig Everett <ceverett@tsuriai.jp>").
|
||||
-copyright("Craig Everett <ceverett@tsuriai.jp>").
|
||||
@ -75,7 +75,7 @@ chain_nodes() ->
|
||||
|
||||
|
||||
-spec chain_nodes(ToUse) -> ok
|
||||
when ToUse :: [hz:chain_node()].
|
||||
when ToUse :: [hz:chain_nodes()].
|
||||
|
||||
chain_nodes(ToUse) ->
|
||||
gen_server:cast(?MODULE, {chain_nodes, ToUse}).
|
||||
@ -162,7 +162,7 @@ handle_cast({tls, Boolean}, State) ->
|
||||
NewState = do_tls(Boolean, State),
|
||||
{noreply, NewState};
|
||||
handle_cast({chain_nodes, []}, State) ->
|
||||
{noreply, State#s{chain_nodes = {[], []}}};
|
||||
{noreply, State#s{chain_nodes = none}};
|
||||
handle_cast({chain_nodes, ToUse}, State) ->
|
||||
{noreply, State#s{chain_nodes = {ToUse, []}}};
|
||||
handle_cast({timeout, Value}, State) ->
|
||||
|
@ -9,7 +9,7 @@
|
||||
%%% @end
|
||||
|
||||
-module(hz_sup).
|
||||
-vsn("0.5.1").
|
||||
-vsn("0.4.0").
|
||||
-behaviour(supervisor).
|
||||
-author("Craig Everett <zxq9@zxq9.com>").
|
||||
-copyright("Craig Everett <zxq9@zxq9.com>").
|
||||
|
@ -4,7 +4,7 @@
|
||||
{prefix,"hz"}.
|
||||
{desc,"Gajumaru interoperation library"}.
|
||||
{author,"Craig Everett"}.
|
||||
{package_id,{"otpr","hakuzaru",{0,5,1}}}.
|
||||
{package_id,{"otpr","hakuzaru",{0,4,0}}}.
|
||||
{deps,[{"otpr","sophia",{8,0,1}},
|
||||
{"otpr","gmbytecode",{3,4,1}},
|
||||
{"otpr","gmserialization",{0,1,2}},
|
||||
|
Loading…
x
Reference in New Issue
Block a user