DlistStorage.step: def of bend-collections@1.0.0.0 Import: import bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend as DlistStorage Lines 482-505 of bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend: https://jend.leeeet.dev/read.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&start_line=482&end_line=505 import Base import bend-collections@1.0.0.0/src/containers/types/internal_dlist.bend as E def step(~T: Data, s: DList, op: E.Op) -> DList & E.Obs: match op: case E.Length{}: obs_nat(~T, length(~T, s)) case E.PushFront{x}: obs_handle(~T, push_front(~T, s, x)) case E.PushBack{x}: obs_handle(~T, push_back(~T, s, x)) case E.InsertBefore{h, x}: obs_insert(~T, insert_before(~T, s, h, x)) case E.InsertAfter{h, x}: obs_insert(~T, insert_after(~T, s, h, x)) case E.Remove{h}: obs_val(~T, remove(~T, s, h)) case E.Get{h}: obs_val(~T, get(~T, s, h)) case E.Set{h, x}: obs_unit(~T, set(~T, s, h, x)) case E.Next{h}: obs_nbr(~T, next(~T, s, h)) case E.Prev{h}: obs_nbr(~T, prev(~T, s, h)) case E.ToList{}: obs_list(~T, to_list(~T, s)) Uses (22): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Pair https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=DList https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=get https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=insert_after https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=insert_before https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=length https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=next https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=obs_handle https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=obs_insert https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=obs_list https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=obs_nat https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=obs_nbr https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=obs_unit https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=obs_val https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=prev https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=push_back https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=push_front https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=remove https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=set https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/internal/dlist_storage.bend&name=to_list https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/types/internal_dlist.bend&name=Obs https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/types/internal_dlist.bend&name=Op