-module(gleam_synapses@model@net_elems@neuron@neuron_serialized). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([serialized/1, deserialized/1, json_encoded/1, json_decoder/0]). -export_type([neuron_serialized/0]). -type neuron_serialized() :: {neuron_serialized, binary(), list(float())}. -file("/home/dimos/Projects/Gleam/gleam_synapses/src/gleam_synapses/model/net_elems/neuron/neuron_serialized.gleam", 13). -spec serialized(gleam_synapses@model@net_elems@neuron@neuron:neuron()) -> neuron_serialized(). serialized(Neuron) -> {neuron_serialized, gleam_synapses@model@net_elems@activation@activation_serialized:serialized( erlang:element(2, Neuron) ), gleam_zlists:to_list(erlang:element(3, Neuron))}. -file("/home/dimos/Projects/Gleam/gleam_synapses/src/gleam_synapses/model/net_elems/neuron/neuron_serialized.gleam", 20). -spec deserialized(neuron_serialized()) -> gleam_synapses@model@net_elems@neuron@neuron:neuron(). deserialized(Neuron_serialized) -> {neuron, gleam_synapses@model@net_elems@activation@activation_serialized:deserialized( erlang:element(2, Neuron_serialized) ), gleam_zlists:of_list(erlang:element(3, Neuron_serialized))}. -file("/home/dimos/Projects/Gleam/gleam_synapses/src/gleam_synapses/model/net_elems/neuron/neuron_serialized.gleam", 27). -spec json_encoded(neuron_serialized()) -> gleam@json:json(). json_encoded(Neuron_serialized) -> gleam@json:object( [{<<"activationF"/utf8>>, gleam_synapses@model@net_elems@activation@activation_serialized:json_encoded( erlang:element(2, Neuron_serialized) )}, {<<"weights"/utf8>>, gleam@json:array( erlang:element(3, Neuron_serialized), fun gleam@json:float/1 )}] ). -file("/home/dimos/Projects/Gleam/gleam_synapses/src/gleam_synapses/model/net_elems/neuron/neuron_serialized.gleam", 37). -spec json_decoder() -> fun((gleam@dynamic:dynamic_()) -> {ok, neuron_serialized()} | {error, list(gleam@dynamic:decode_error())}). json_decoder() -> gleam@dynamic:decode2( fun(Field@0, Field@1) -> {neuron_serialized, Field@0, Field@1} end, gleam@dynamic:field( <<"activationF"/utf8>>, gleam_synapses@model@net_elems@activation@activation_serialized:json_decoder( ) ), gleam@dynamic:field( <<"weights"/utf8>>, gleam@dynamic:list(fun gleam@dynamic:float/1) ) ).