View Source argo_wire_path (argo v1.0.3)

Summary

Types

-type segment() :: argo_types:usize().
-type segment_list() :: [segment()].
-type t() :: #argo_wire_path{}.

Functions

Link to this function

foldl(WirePath, Acc0, Function)

View Source
-spec foldl(WirePath, Acc0, Function) -> Acc1
         when
             WirePath :: t(),
             Acc0 :: dynamic(),
             Function :: fun((segment(), AccIn) -> AccOut),
             AccIn :: dynamic(),
             AccOut :: dynamic(),
             Acc1 :: dynamic().
Link to this function

foldr(WirePath, Acc0, Function)

View Source
-spec foldr(WirePath, Acc0, Function) -> Acc1
         when
             WirePath :: t(),
             Acc0 :: dynamic(),
             Function :: fun((segment(), AccIn) -> AccOut),
             AccIn :: dynamic(),
             AccOut :: dynamic(),
             Acc1 :: dynamic().
-spec from_list(SegmentList) -> WirePath when SegmentList :: segment_list(), WirePath :: t().
-spec new() -> WirePath when WirePath :: t().
-spec pop(WirePath) -> {WirePath, none | {some, Segment}} when WirePath :: t(), Segment :: segment().
-spec push(WirePath, Segment) -> WirePath when WirePath :: t(), Segment :: segment().
-spec size(WirePath) -> non_neg_integer() when WirePath :: t().
-spec to_list(WirePath) -> SegmentList when WirePath :: t(), SegmentList :: segment_list().
Link to this function

to_path_value(WirePath, WireType)

View Source
-spec to_path_value(WirePath, WireType) -> PathValue
                 when
                     WirePath :: t(),
                     WireType :: argo_wire_type:t(),
                     PathValue :: argo_path_value:t().